/**
 * Born Slippy Contact.
 *
 * Enqueued as a real stylesheet, and everything carries !important, because
 * page builders strip inline <style> from shortcode output and their resets
 * load after plugin styles.
 */

.bsc{
	--ink:#0A0A0A !important;
	--paper:#F7F5F2 !important;
	--line:rgba(10,10,10,.14) !important;
	--soft:rgba(10,10,10,.55) !important;
	--gutter:clamp(20px,4.5vw,64px) !important;
	--r-sm:8px !important;
	position:relative !important;
	left:50% !important;
	width:100vw !important;
	margin-left:-50vw !important;
	background:var(--paper) !important;
	color:var(--ink) !important;
}
.bsc *,.bsc *::before,.bsc *::after{ box-sizing:border-box !important; }
.bsc .bsc__wrap{ padding:clamp(96px,15vh,170px) var(--gutter) clamp(80px,12vh,140px) !important; }

.bsc--bare{ position:static !important; left:auto !important; width:auto !important; margin-left:0 !important; background:transparent !important; }
.bsc--bare .bsc__wrap{ padding:0 !important; }

/* ---------- head ---------- */
.bsc .bsc__head{ max-width:1100px !important; margin:0 0 clamp(40px,6vh,72px) !important; }
.bsc .bsc__title{ margin:0 !important; font-size:clamp(34px,5vw,72px) !important; font-weight:800 !important; line-height:.96 !important; letter-spacing:-.035em !important; }
.bsc .bsc__lede{ margin:clamp(16px,2.4vh,26px) 0 0 !important; max-width:52ch !important; font-size:clamp(15px,1.1vw,18px) !important; line-height:1.6 !important; color:var(--soft) !important; }

/* ---------- layout ----------
   the form decides the height and the detail column sits beside it */
.bsc .bsc__grid{
	display:grid !important;
	grid-template-columns:.8fr 1.2fr !important;
	gap:clamp(28px,4vw,80px) !important;
	align-items:start !important;
}
.bsc .bsc__grid--solo{ grid-template-columns:1fr !important; }

/* ---------- detail column ---------- */
.bsc .bsc__aside{ display:grid !important; gap:0 !important; }
.bsc .bsc__block{ padding:clamp(20px,2.6vh,28px) 0 !important; border-top:1px solid var(--line) !important; }
.bsc .bsc__block:first-child{ border-top:0 !important; padding-top:0 !important; }
.bsc .bsc__k{ margin:0 0 12px !important; font-size:9.5px !important; font-weight:700 !important; letter-spacing:.2em !important; text-transform:uppercase !important; color:var(--soft) !important; }
.bsc .bsc__mail{
	display:inline-block !important;
	font-size:clamp(18px,2vw,28px) !important;
	font-weight:800 !important;
	letter-spacing:-.026em !important;
	line-height:1.2 !important;
	color:var(--ink) !important;
	text-decoration:none !important;
	box-shadow:inset 0 -1px 0 var(--line) !important;
	transition:box-shadow .25s !important;
}
.bsc .bsc__mail:hover{ box-shadow:inset 0 -1px 0 var(--ink) !important; }
.bsc .bsc__reply{ margin:12px 0 0 !important; font-size:12.5px !important; line-height:1.6 !important; color:var(--soft) !important; max-width:34ch !important; }
.bsc .bsc__line{ margin:0 0 8px !important; font-size:13px !important; line-height:1.6 !important; color:var(--soft) !important; }
.bsc .bsc__line:last-of-type{ margin-bottom:0 !important; }
.bsc .bsc__line b{ font-weight:700 !important; color:var(--ink) !important; }
.bsc .bsc__links{ margin:12px 0 0 !important; display:flex !important; flex-wrap:wrap !important; gap:8px 18px !important; }
.bsc .bsc__link{
	display:inline-block !important;
	margin-top:0 !important;
	font-size:10.5px !important;
	font-weight:700 !important;
	letter-spacing:.16em !important;
	text-transform:uppercase !important;
	color:var(--ink) !important;
	text-decoration:none !important;
	box-shadow:inset 0 -1px 0 var(--line) !important;
	transition:box-shadow .25s !important;
}
.bsc .bsc__link:hover{ box-shadow:inset 0 -1px 0 var(--ink) !important; }
.bsc .bsc__social{ list-style:none !important; margin:0 !important; padding:0 !important; display:flex !important; flex-wrap:wrap !important; gap:8px 18px !important; }
.bsc .bsc__social li{ margin:0 !important; }
.bsc .bsc__social a{ font-size:12.5px !important; color:var(--soft) !important; text-decoration:none !important; transition:color .25s !important; }
.bsc .bsc__social a:hover{ color:var(--ink) !important; }

/* ---------- form ---------- */
.bsc .bsc__panel{ width:100% !important; }
.bsc .bsc__form{ display:grid !important; gap:clamp(14px,1.8vh,20px) !important; width:100% !important; margin:0 !important; }
.bsc .bsc__two{ display:grid !important; grid-template-columns:1fr 1fr !important; gap:clamp(14px,1.8vh,20px) !important; }
.bsc .bsc__field{ display:block !important; margin:0 !important; }
.bsc .bsc__field[hidden]{ display:none !important; }
.bsc .bsc__label{ display:block !important; margin:0 0 8px !important; font-size:10px !important; font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:var(--soft) !important; }
.bsc .bsc__input{
	width:100% !important;
	height:auto !important;
	min-height:52px !important;
	padding:15px 16px !important;
	border:1px solid var(--line) !important;
	border-radius:var(--r-sm) !important;
	background:#fff !important;
	color:var(--ink) !important;
	font-family:inherit !important;
	font-size:16px !important;
	line-height:1.4 !important;
	-webkit-appearance:none !important;
	appearance:none !important;
	box-shadow:none !important;
	transition:border-color .25s !important;
}
.bsc .bsc__input:focus{ outline:0 !important; border-color:var(--ink) !important; box-shadow:none !important; }
.bsc .bsc__area{ min-height:150px !important; resize:vertical !important; }
.bsc .bsc__select{ position:relative !important; display:block !important; }
.bsc .bsc__select select{ padding-right:40px !important; cursor:pointer !important; }
.bsc .bsc__select-c{ position:absolute !important; right:16px !important; top:50% !important; width:8px !important; height:8px !important; margin-top:-6px !important; border-right:1.5px solid var(--soft) !important; border-bottom:1.5px solid var(--soft) !important; transform:rotate(45deg) !important; pointer-events:none !important; }
.bsc .bsc__hint{ margin:7px 0 0 !important; font-size:11.5px !important; line-height:1.5 !important; color:var(--soft) !important; }

.bsc .bsc__trap,
.bsc .bsc__trap[hidden]{
	position:absolute !important;
	left:-9999px !important;
	top:auto !important;
	width:1px !important;
	height:1px !important;
	overflow:hidden !important;
	opacity:0 !important;
	pointer-events:none !important;
	z-index:-1 !important;
}

.bsc .bsc__err{ margin:0 !important; padding:12px 14px !important; border:1px solid var(--ink) !important; border-radius:var(--r-sm) !important; font-size:12px !important; font-weight:700 !important; line-height:1.5 !important; }

.bsc button.bsc__submit,
.bsc .bsc__submit{
	display:flex !important;
	align-items:center !important;
	justify-content:center !important;
	gap:10px !important;
	width:100% !important;
	min-height:56px !important;
	height:auto !important;
	margin:2px 0 0 !important;
	padding:18px 26px !important;
	border:1px solid #0A0A0A !important;
	border-radius:999px !important;
	background:#0A0A0A !important;
	background-image:none !important;
	color:#F7F5F2 !important;
	font-family:inherit !important;
	font-size:11.5px !important;
	font-weight:700 !important;
	line-height:1 !important;
	letter-spacing:.22em !important;
	text-transform:uppercase !important;
	text-decoration:none !important;
	text-shadow:none !important;
	box-shadow:none !important;
	cursor:pointer !important;
	-webkit-appearance:none !important;
	appearance:none !important;
	transition:background-color .3s,color .3s,opacity .3s !important;
}
.bsc button.bsc__submit:hover{ background:transparent !important; color:#0A0A0A !important; }
.bsc button.bsc__submit[disabled]{ opacity:.5 !important; cursor:default !important; }
.bsc button.bsc__submit *{ pointer-events:none !important; }

.bsc .bsc__foot{ margin:0 !important; font-size:11.5px !important; line-height:1.6 !important; color:var(--soft) !important; }
.bsc .bsc__foot a{ color:var(--ink) !important; text-decoration:none !important; box-shadow:inset 0 -1px 0 var(--line) !important; }

/* ---------- sent ---------- */
.bsc .bsc__done{ padding:clamp(28px,4vh,44px) !important; border:1px solid var(--ink) !important; border-radius:12px !important; background:#fff !important; }
.bsc .bsc__done-k{ margin:0 !important; font-size:10.5px !important; font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:var(--soft) !important; }
.bsc .bsc__done-t{ margin:12px 0 0 !important; font-size:clamp(20px,1.8vw,28px) !important; font-weight:800 !important; letter-spacing:-.024em !important; line-height:1.2 !important; }
.bsc .bsc__done-b{ margin:12px 0 0 !important; font-size:13.5px !important; line-height:1.6 !important; color:var(--soft) !important; max-width:44ch !important; }

/* ---------- responsive ---------- */
@media (max-width:1023px){
	.bsc .bsc__grid{ gap:clamp(24px,3vw,44px) !important; }
}
@media (max-width:767px){
	.bsc .bsc__grid{ grid-template-columns:1fr !important; gap:40px !important; }
	.bsc .bsc__two{ grid-template-columns:1fr !important; }
}
@media (prefers-reduced-motion:reduce){
	.bsc .bsc__input,.bsc button.bsc__submit,.bsc .bsc__mail,.bsc .bsc__link,.bsc .bsc__social a{ transition:none !important; }
}
