/*
Theme Name: Alandsons Supply Co.
Theme URI: https://alandsonsinc.com/
Author: Alandsons Supply Co.
Description: A responsive, accessible block theme for Alandsons Supply Co., built around informed building decisions and high-performance building solutions.
Version: 1.2.0
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alandsons-supply
Tags: block-patterns, full-site-editing, accessibility-ready, custom-logo, one-column, wide-blocks
*/

:root {
	--als-shadow: 0 18px 55px rgba(16, 38, 62, .12);
	--als-radius: 18px;
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: .18em; }
:focus-visible { outline: 3px solid #90b84d; outline-offset: 3px; }

.wp-site-blocks { overflow: clip; }
.als-shadow { box-shadow: var(--als-shadow); }
.als-card {
	height: 100%;
	border: 1px solid #dfe5e8;
	border-radius: var(--als-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(16, 38, 62, .07);
	transition: transform .2s ease, box-shadow .2s ease;
}
.als-card:hover { transform: translateY(-4px); box-shadow: var(--als-shadow); }
.als-eyebrow { letter-spacing: .14em; text-transform: uppercase; font-weight: 750; }
.als-phone-link { white-space: nowrap; font-weight: 800; text-decoration: none; }
.als-phone-link:hover { text-decoration: underline; }
.als-hero {
	position: relative;
	isolation: isolate;
	background:
		linear-gradient(100deg, rgba(9, 27, 46, .96) 0%, rgba(16, 38, 62, .88) 52%, rgba(16, 38, 62, .5) 100%),
		url("assets/images/icf-hero.svg") center/cover no-repeat;
}
.als-hero::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 7px;
	z-index: -1;
	background: linear-gradient(90deg, #5a7d2b 0 65%, #90b84d 65%);
}
.als-method-number {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: #5a7d2b;
	color: #fff;
	font-weight: 800;
}
.als-assembly {
	display: grid;
	grid-template-columns: 1fr 1.25fr 1fr;
	min-height: 280px;
	overflow: hidden;
	border: 1px solid #cbd4d8;
	border-radius: var(--als-radius);
	box-shadow: var(--als-shadow);
}
.als-assembly > div { display: grid; place-items: center; padding: 24px; text-align: center; font-weight: 800; }
.als-assembly__foam { background: #f5f7f8; color: #10263e; }
.als-assembly__core { background: #7a7f84; color: #fff; }
.als-assembly__rebar {
	background:
		linear-gradient(90deg, transparent 46%, #10263e 46% 54%, transparent 54%),
		linear-gradient(0deg, transparent 46%, #10263e 46% 54%, transparent 54%),
		#9ba0a4;
}
.als-check-list { list-style: none; padding-left: 0; }
.als-check-list li { position: relative; padding-left: 1.8rem; margin-bottom: .8rem; }
.als-check-list li::before { content: "✓"; position: absolute; left: 0; color: #5a7d2b; font-weight: 900; }
.als-topic-card {
	position: relative;
	min-height: 230px;
	overflow: hidden;
	border-radius: var(--als-radius);
	background: #10263e;
	color: #fff;
}
.als-topic-card::after {
	content: "";
	position: absolute;
	inset: auto -35px -65px auto;
	width: 165px;
	height: 165px;
	border: 28px solid rgba(144, 184, 77, .18);
	border-radius: 50%;
}
.als-topic-card h3,
.als-topic-card a { color: #fff; }
.als-topic-card a { position: relative; z-index: 1; }
.als-resource-number {
	display: block;
	color: #5a7d2b;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 2.3rem;
	font-weight: 800;
	line-height: 1;
}
.als-query-card {
	height: 100%;
	overflow: hidden;
	border: 1px solid #dfe5e8;
	border-radius: var(--als-radius);
	background: #fff;
	box-shadow: 0 12px 35px rgba(16, 38, 62, .07);
}
.als-advisor {
	background: linear-gradient(135deg, #f5f7f8, #fff);
	border-left: 6px solid #5a7d2b;
}
.als-photo-placeholder {
	display: grid;
	place-items: center;
	min-height: 410px;
	border-radius: var(--als-radius);
	background: linear-gradient(145deg, #d9e0e3, #f5f7f8);
	color: #52616c;
	text-align: center;
}
.als-form label { display: block; margin-bottom: .45rem; font-weight: 700; color: #10263e; }
.als-form input:not([type="checkbox"]):not([type="radio"]),
.als-form select,
.als-form textarea {
	box-sizing: border-box;
	width: 100%;
	padding: .85rem 1rem;
	border: 1px solid #aeb9bf;
	border-radius: 8px;
	background: #fff;
	color: #2d3135;
	font: inherit;
}
.als-form input:focus,
.als-form select:focus,
.als-form textarea:focus { border-color: #5a7d2b; box-shadow: 0 0 0 3px rgba(90,125,43,.18); outline: 0; }
.als-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.als-form-field--full { grid-column: 1 / -1; }
.als-form button {
	border: 0;
	border-radius: 7px;
	padding: .9rem 1.35rem;
	background: #5a7d2b;
	color: #fff;
	font: inherit;
	font-weight: 750;
	cursor: pointer;
}
.als-notice { padding: 1rem 1.2rem; border-radius: 8px; background: #eef5e6; border-left: 4px solid #5a7d2b; }
.als-disclaimer { font-size: .86rem; color: #52616c; }

@media (max-width: 781px) {
	.als-form-grid { grid-template-columns: 1fr; }
	.als-form-field--full { grid-column: auto; }
	.als-hero { background-position: 66% center; }
	.als-photo-placeholder { min-height: 300px; }
	.als-assembly { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
