/*
Theme Name: Haulpoint Site
Theme URI: https://haulpointb2b.com
Author: Haulpoint
Description: The Haulpoint company website: a one-page introduction to the Haulpoint B2B ordering service, with screenshots, demo video, features, a free-preview offer, questions and contact. Separate from the Haulpoint store theme used for customer sites. No plugins required.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: haulpoint-site
Tags: one-column, block-patterns, full-site-editing, custom-colors, editor-style, wide-blocks
*/

body { -webkit-font-smoothing: antialiased; }
h1, h2, h3 { text-wrap: balance; }
.wp-site-blocks > * + * { margin-block-start: 0; }

/* Header */
.hps-header { padding-block: 14px; }
.hps-header .wp-block-site-title a { text-decoration: none; color: inherit; }
.hps-logo-mark { flex: none; padding: 0 !important; line-height: 1; width: 40px; height: 40px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: 26px; margin: 0; }
.hps-header .wp-block-navigation a { text-decoration: none; }
.hps-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--hero) !important; color: var(--wp--preset--color--hero-text) !important; padding: 24px; }

/* Shared */
.hps-eyebrow { letter-spacing: 2px; margin-bottom: .5rem !important; }
.hps-hero { padding-block: clamp(2.5rem, 6vw, 5.5rem); }
.hps-section { padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.hps-band { padding-block: clamp(2.75rem, 6vw, 5rem); }
.hps-grid { gap: 1.1rem; }
.hps-card { background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line); border-radius: 12px; padding: 1.4rem; }
.hps-card h3 { margin: 0 0 .35rem; }
.hps-card p { margin: 0; }
.hps-soft { background: var(--wp--preset--color--surface-2); border-color: transparent; }
.hps-step { border-top: 4px solid var(--wp--preset--color--accent); padding-top: 1rem; }
.hps-step p { margin: 0; }
.hps-step h3 { margin: 0 0 .35rem; }
.hps-num { font-family: var(--wp--preset--font-family--display); font-weight: 700; font-size: 2.4rem; line-height: 1; margin-bottom: .4rem !important; }
.hps-shot img { border-radius: 12px; border: 1px solid var(--wp--preset--color--line); box-shadow: 0 18px 44px rgba(0, 0, 0, .18); }
.hps-shot figcaption { text-align: left; margin-top: .8rem; }
.hps-video a { position: relative; display: block; }
.hps-video a::after { content: ""; position: absolute; left: 50%; top: 50%; width: 88px; height: 88px; margin: -44px 0 0 -44px; border-radius: 50%; background: var(--wp--preset--color--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6v12l10-6z' fill='%23fff'/%3E%3C/svg%3E") center / 40px no-repeat; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); }
.hps-phone img { border-radius: 22px; border: 6px solid var(--wp--preset--color--hero-2); }
.hps-offer { border-radius: 16px; padding: clamp(1.75rem, 4vw, 3rem); margin-block: 1rem 3rem; gap: 1.5rem; }
.hps-offer-text { flex: 1 1 32rem; }
.hps-offer h2 { margin-top: 0; }
.hps-q { padding: 1rem 1.3rem; margin-block: .7rem !important; }
.hps-q summary { font-weight: 600; cursor: pointer; }
.hps-q p { margin: .6rem 0 0; }
.hps-form { border: 1px dashed var(--wp--preset--color--hero-muted); border-radius: 14px; padding: 1.75rem; }
.hps-footer { padding-block: 1.5rem; }
.hps-footer p { margin: 0; }
@media (max-width: 600px) {
	.hps-header-cta { display: none; }
}
@media (max-width: 781px) {
	.hps-video a::after { width: 64px; height: 64px; margin: -32px 0 0 -32px; background-size: 30px; }
	.hps-band .wp-block-columns, .hps-hero .wp-block-columns { gap: 2rem; }
}
