/*
Theme Name: Scrooge Clamp
Theme URI: https://www.scroogeclamp.com
Author: TKG Access
Description: Custom theme for the Scrooge Clamp website.
Version: 1.25
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: scrooge-clamp-theme
*/

@font-face {
	font-family: "IBM Plex Sans";
	font-style: normal;
	font-weight: 100 700;
	font-display: swap;
	src: url("assets/fonts/ibm-plex-sans-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "IBM Plex Mono";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("assets/fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--sc-ink: #1c2127;
	--sc-ink-soft: #3d434a;
	--sc-muted: #67655f;
	--sc-line: #e3ded4;
	--sc-line-strong: #cdc6b8;
	--sc-bg: #fdfcf9;
	--sc-paper: #f5f2ea;
	--sc-white: #ffffff;
	--sc-accent: #1f3a5f;
	--sc-accent-dark: #162c49;
	--sc-accent-contrast: #ffffff;
	--sc-accent-soft: #e8edf3;
	--sc-accent-line: #c6d2e0;
	--sc-link: #1f3a5f;
	--sc-link-hover: #162c49;
	--sc-radius: 4px;
	--sc-radius-sm: 3px;
	--sc-container: 1120px;
	--sc-font: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--sc-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
	/* Engineering paper: fine squares with a heavier line every fifth one */
	--sc-grid: linear-gradient(to right, rgba(31, 58, 95, 0.09) 1px, transparent 1px), linear-gradient(to bottom, rgba(31, 58, 95, 0.09) 1px, transparent 1px), linear-gradient(to right, rgba(31, 58, 95, 0.045) 1px, transparent 1px), linear-gradient(to bottom, rgba(31, 58, 95, 0.045) 1px, transparent 1px);
	--sc-grid-size: 120px 120px, 120px 120px, 24px 24px, 24px 24px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: var(--sc-font);
	font-size: 17px;
	line-height: 1.65;
	color: var(--sc-ink);
	background: var(--sc-bg);
	-webkit-font-smoothing: antialiased;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
/* Keeps the footer at the bottom of short pages; offsets cover the admin bar. */
body.admin-bar { min-height: calc(100vh - 32px); }
@media (max-width: 782px) { body.admin-bar { min-height: calc(100vh - 46px); } }
#content { flex: 1 0 auto; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--sc-link); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; transition: color 150ms ease; }
a:hover { color: var(--sc-link-hover); }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid var(--sc-accent); outline-offset: 3px; }
h1, h2, h3, h4 { line-height: 1.2; margin: 0 0 0.5em; font-weight: 600; letter-spacing: -0.01em; color: var(--sc-ink); }
h1 { font-size: 2.4rem; letter-spacing: -0.02em; }
h2 { font-size: 1.85rem; letter-spacing: -0.015em; }
h3 { font-size: 1.15rem; }
p, ul, ol { margin: 0 0 1.1em; }
ul, ol { padding-left: 1.4em; }
.sc-prose li + li, .sc-page .sc-prose li + li { margin-top: 0.3em; }
strong { font-weight: 600; }
hr { border: 0; border-top: 1px solid var(--sc-line); margin: 2.5rem 0; }
table { border-collapse: collapse; width: 100%; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

.sc-container { max-width: var(--sc-container); margin: 0 auto; padding: 0 24px; }
.skip-link { position: absolute; left: -999px; top: 0; background: var(--sc-ink); color: #fff; padding: 10px 16px; z-index: 100; }
.skip-link:focus { left: 8px; top: 8px; }
.sc-eyebrow { display: block; font-family: var(--sc-mono); font-size: 0.78rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-muted); margin-bottom: 14px; }
.sc-eyebrow span { white-space: nowrap; }
.sc-fig { display: block; font-family: var(--sc-mono); font-weight: 500; font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-ink-soft); margin-bottom: 2px; }

/* Header */
.sc-header { background: rgba(253, 252, 249, 0.95); backdrop-filter: saturate(160%) blur(6px); border-bottom: 1px solid var(--sc-line); border-top: 4px solid var(--sc-accent); position: sticky; top: 0; z-index: 50; transition: box-shadow 200ms ease; }
.sc-header.is-scrolled { box-shadow: 0 1px 0 var(--sc-line), 0 6px 18px rgba(28, 33, 39, 0.06); }
.sc-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 74px; position: relative; }
.sc-brand { display: flex; flex-direction: column; text-decoration: none; color: var(--sc-ink); line-height: 1.1; }
.sc-brand__name { font-weight: 700; font-size: 1.45rem; letter-spacing: -0.02em; }
.sc-brand__name sup { font-size: 0.5em; font-weight: 500; letter-spacing: 0; vertical-align: 0.9em; margin-left: 1px; color: var(--sc-ink-soft); }
.sc-brand__sub { font-size: 0.74rem; font-weight: 500; color: var(--sc-muted); letter-spacing: 0.06em; text-transform: uppercase; margin-top: 5px; }
.sc-nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 2px; align-items: center; }
.sc-nav li { margin: 0; }
.sc-nav a { display: block; padding: 10px 14px; border-radius: var(--sc-radius-sm); text-decoration: none; color: var(--sc-ink-soft); font-weight: 500; font-size: 0.98rem; line-height: 1.2; position: relative; transition: background 150ms ease, color 150ms ease; }
.sc-nav a:hover { background: var(--sc-paper); color: var(--sc-ink); }
.sc-nav .current-menu-item > a, .sc-nav .current_page_item > a { color: var(--sc-ink); }
.sc-nav .current-menu-item > a::after, .sc-nav .current_page_item > a::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 5px; height: 2px; background: var(--sc-accent); }
.sc-nav-toggle { display: none; background: none; border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius-sm); width: 44px; height: 44px; cursor: pointer; color: var(--sc-ink); }
.sc-nav-toggle svg { width: 22px; height: 22px; }

/* Buttons */
.sc-btn { display: inline-flex; align-items: center; padding: 12px 22px; border-radius: var(--sc-radius-sm); font-weight: 600; text-decoration: none; background: var(--sc-accent); color: var(--sc-accent-contrast); border: 1px solid var(--sc-accent-dark); transition: background 150ms ease; line-height: 1.3; }
.sc-btn:hover { background: var(--sc-accent-dark); color: var(--sc-accent-contrast); }
.sc-btn--secondary { background: var(--sc-white); border-color: var(--sc-line-strong); color: var(--sc-ink); }
.sc-btn--secondary:hover { background: var(--sc-paper); color: var(--sc-ink); }
.sc-btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 1.6rem; }

/* Page header */
.sc-page-header { background-color: var(--sc-paper); background-image: var(--sc-grid); background-size: var(--sc-grid-size); border-bottom: 1px solid var(--sc-line); padding: 52px 0 40px; }
.sc-page-header h1 { margin: 0; }
.sc-page-header p { margin: 0.6rem 0 0; color: var(--sc-ink-soft); font-size: 1.12rem; max-width: 60ch; }
.sc-page { padding: 56px 0 80px; }
.sc-page .sc-prose { max-width: 72ch; }

/* Hero */
.sc-hero { padding: 64px 0 56px; background-color: var(--sc-paper); background-image: var(--sc-grid); background-size: var(--sc-grid-size); border-bottom: 1px solid var(--sc-line); }
.sc-hero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.sc-hero__title { font-size: 3.1rem; line-height: 1.06; margin-bottom: 0.45em; letter-spacing: -0.025em; }
.sc-hero__lead { font-size: 1.18rem; color: var(--sc-ink-soft); max-width: 50ch; line-height: 1.6; }
.sc-hero__figure { margin: 0; }
.sc-hero__figure picture { display: block; }
.sc-hero__figure img { margin: 0 auto; mix-blend-mode: multiply; }
.sc-hero__figure figcaption { text-align: center; color: var(--sc-muted); font-size: 0.88rem; margin-top: 8px; }

/* Data plate: label above value, one ruled strip */
.sc-plate { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin: 56px 0 0; padding: 0; background: var(--sc-line-strong); border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius); overflow: hidden; }
.sc-plate > div { background: var(--sc-white); padding: 16px 22px 18px; }
.sc-plate dt { font-family: var(--sc-mono); font-size: 0.76rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-muted); margin: 0 0 4px; }
.sc-plate dd { margin: 0; font-size: 1.7rem; font-weight: 600; letter-spacing: -0.015em; line-height: 1.15; font-variant-numeric: tabular-nums; color: var(--sc-ink); }
/* Counter wheels built by assets/js/motion.js; one digit tall, so the plate never changes size */
.sc-wheels { user-select: none; }
.sc-wheel { display: inline-block; height: 1.15em; overflow: hidden; vertical-align: top; -webkit-mask-image: linear-gradient(transparent, #000 13%, #000 87%, transparent); mask-image: linear-gradient(transparent, #000 13%, #000 87%, transparent); }
.sc-wheel__strip { display: block; will-change: transform; }
.sc-wheel__strip > span { display: block; height: 1.15em; }

/* Sections */
.sc-section { padding: 80px 0; }
.sc-section--alt { background: var(--sc-paper); border-top: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); }
.sc-section__head { max-width: 62ch; margin-bottom: 36px; }
.sc-section__head h2 { margin-bottom: 0.35em; }
.sc-section__head p { color: var(--sc-ink-soft); margin: 0; font-size: 1.08rem; }
.sc-prose { max-width: 68ch; }
.sc-prose p { color: var(--sc-ink-soft); }
.sc-prose p:last-child { margin-bottom: 0; }

/* Drawings sit on engineering paper; multiply drops the white behind the line work */
.sc-media { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.sc-media + .sc-media { margin-top: 72px; }
.sc-media--flip .sc-media__figure { order: -1; }
.sc-media__figure { margin: 0; background-color: var(--sc-white); background-image: var(--sc-grid); background-size: var(--sc-grid-size); border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius); padding: 28px 24px 18px; }
.sc-media__figure img { margin: 0 auto; max-width: 420px; width: 100%; mix-blend-mode: multiply; }
.sc-media__figure figcaption { color: var(--sc-muted); font-size: 0.86rem; text-align: center; margin-top: 16px; }
.sc-media p { color: var(--sc-ink-soft); }
.sc-media p:last-child { margin-bottom: 0; }

/* Story */
.sc-story { display: grid; grid-template-columns: auto 1fr; gap: 56px; align-items: center; }
.sc-story figure { margin: 0; }
.sc-story img { border: 1px solid var(--sc-line-strong); background: var(--sc-white); padding: 8px; }
.sc-story figcaption { color: var(--sc-muted); font-size: 0.86rem; margin-top: 10px; }
.sc-story h2 { margin-bottom: 0.6em; }
.sc-lede { font-size: 1.45rem; line-height: 1.45; color: var(--sc-ink); max-width: 34ch; }
.sc-story p { color: var(--sc-ink-soft); }

/* Ruled list of uses */
.sc-uses { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 40px; }
.sc-uses li { margin: 0; border-top: 1px solid var(--sc-line-strong); padding-top: 20px; }
.sc-uses h3 { margin-bottom: 0.4em; }
.sc-uses p { margin: 0; color: var(--sc-ink-soft); font-size: 0.98rem; }
.sc-closing { margin: 64px 0 0; padding: 28px 0; border-top: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); font-size: 1.3rem; line-height: 1.55; color: var(--sc-ink); max-width: 62ch; }

/* Steps */
.sc-steps { list-style: none; padding: 0; margin: 0; counter-reset: step; max-width: 760px; }
.sc-steps li { margin: 0; }
.sc-step { display: grid; grid-template-columns: 48px 1fr; gap: 12px; padding: 22px 0; border-top: 1px solid var(--sc-line-strong); }
.sc-step:last-child { border-bottom: 1px solid var(--sc-line-strong); }
.sc-step::before { counter-increment: step; content: counter(step); font-family: var(--sc-mono); font-size: 1.5rem; line-height: 1.1; color: var(--sc-accent); }
.sc-step h3 { margin-bottom: 0.3em; font-size: 1.12rem; }
.sc-step p { margin: 0; color: var(--sc-ink-soft); }

/* Photos at their own size, bottoms aligned */
.sc-gallery { display: flex; flex-wrap: wrap; gap: 24px 20px; align-items: flex-end; list-style: none; padding: 0; margin: 0; }
.sc-gallery li { margin: 0; }
.sc-gallery figure { margin: 0; }
.sc-gallery img { height: 226px; width: auto; border: 1px solid var(--sc-line-strong); background: var(--sc-white); padding: 5px; }
.sc-gallery figcaption { color: var(--sc-muted); font-size: 0.86rem; margin-top: 8px; }

/* Spec table and drawing sheet */
.sc-specs { display: grid; grid-template-columns: minmax(0, 560px) 1fr; gap: 48px; align-items: start; }
.sc-spec-table { border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius); background: var(--sc-white); border-collapse: separate; border-spacing: 0; overflow: hidden; }
.sc-spec-table th, .sc-spec-table td { text-align: left; padding: 13px 18px; border-bottom: 1px solid var(--sc-line); vertical-align: top; }
.sc-spec-table tr:last-child th, .sc-spec-table tr:last-child td { border-bottom: 0; }
.sc-spec-table th { width: 42%; font-family: var(--sc-mono); font-weight: 500; font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-muted); background: var(--sc-paper); padding-top: 16px; }
.sc-spec-table td { font-weight: 500; font-variant-numeric: tabular-nums; }
.sc-sheet { margin-top: 20px; background-color: var(--sc-white); background-image: var(--sc-grid); background-size: var(--sc-grid-size); border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius); padding: 44px 32px 0; overflow: hidden; }
.sc-drawings { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-end; gap: 44px 72px; list-style: none; padding: 0; margin: 0; }
.sc-drawings li { margin: 0; }
.sc-drawings figure { margin: 0; }
.sc-drawings img { margin: 0 auto; mix-blend-mode: multiply; }
.sc-drawings figcaption { color: var(--sc-muted); font-size: 0.86rem; text-align: center; margin-top: 12px; }
.sc-titleblock { display: grid; grid-template-columns: auto auto; width: fit-content; margin: 44px -32px 0 auto; border-top: 1px solid var(--sc-line-strong); border-left: 1px solid var(--sc-line-strong); background: var(--sc-white); font-family: var(--sc-mono); font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-ink-soft); }
.sc-titleblock span { padding: 7px 14px; border-bottom: 1px solid var(--sc-line); }
.sc-titleblock .sc-titleblock__wide { grid-column: 1 / -1; }
.sc-titleblock .sc-titleblock__r { border-left: 1px solid var(--sc-line); }
.sc-titleblock span:last-child { border-bottom: 0; }

/* Callouts */
.sc-note { background: var(--sc-accent-soft); border: 1px solid var(--sc-accent-line); border-radius: var(--sc-radius); padding: 16px 20px; color: var(--sc-ink-soft); }
.sc-note p:last-child { margin-bottom: 0; }
.sc-cta { background: var(--sc-ink); color: #fff; padding: 56px 0; }
.sc-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px 48px; flex-wrap: wrap; }
.sc-cta h2 { color: #fff; margin-bottom: 0.3em; }
.sc-cta p { color: #c9cdd2; max-width: 60ch; margin: 0; }
.sc-cta .sc-btn { background: #fff; color: var(--sc-ink); border-color: #fff; flex: 0 0 auto; }
.sc-cta .sc-btn:hover { background: var(--sc-paper); color: var(--sc-ink); }

/* Footer */
.sc-footer { background: var(--sc-paper); border-top: 1px solid var(--sc-line); padding: 48px 0 36px; color: var(--sc-muted); font-size: 0.93rem; }
.sc-footer__inner { display: grid; grid-template-columns: 1.4fr 1fr auto; gap: 32px; align-items: start; }
.sc-footer__brand { font-weight: 700; color: var(--sc-ink); font-size: 1.2rem; letter-spacing: -0.015em; line-height: 1.2; }
.sc-footer__brand sup { font-size: 0.5em; font-weight: 500; vertical-align: 0.9em; color: var(--sc-ink-soft); }
.sc-footer__brand span { display: block; font-weight: 400; color: var(--sc-muted); font-size: 0.93rem; letter-spacing: 0; margin-top: 8px; max-width: 34ch; line-height: 1.5; }
.sc-footer .sc-footer__label { font-family: var(--sc-mono); font-size: 0.76rem; line-height: 1.2; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sc-muted); margin: 0 0 12px; font-weight: 500; }
.sc-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.sc-footer li { margin: 0; }
.sc-footer a { color: var(--sc-ink-soft); text-decoration: none; font-weight: 500; }
.sc-footer a:hover { color: var(--sc-ink); text-decoration: underline; }
.sc-footer address { font-style: normal; color: var(--sc-ink-soft); line-height: 1.6; }
.sc-footer__company { white-space: nowrap; }
.sc-footer__legal { margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--sc-line-strong); font-size: 0.84rem; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.sc-footer__legal p { margin: 0; }

/* Gravity Forms (Orbital theme variables) */
.gform_wrapper.gform-theme--orbital {
	--gf-color-primary: var(--sc-link);
	--gf-color-primary-contrast: #fff;
	--gf-ctrl-border-color: var(--sc-line-strong);
	--gf-ctrl-border-color-focus: var(--sc-link);
	--gf-ctrl-radius: 3px;
	--gf-ctrl-btn-bg-color-primary: var(--sc-accent);
	--gf-ctrl-btn-bg-color-primary-hover: var(--sc-accent-dark);
	--gf-ctrl-btn-color-primary: var(--sc-accent-contrast);
	--gf-ctrl-btn-color-primary-hover: var(--sc-accent-contrast);
	--gf-ctrl-btn-border-color-primary: var(--sc-accent-dark);
	--gf-ctrl-btn-border-color-primary-hover: var(--sc-accent-dark);
	--gf-ctrl-btn-radius: 3px;
	--gf-ctrl-btn-font-weight: 600;
	--gf-ctrl-label-color-primary: var(--sc-ink);
	--gf-font-family-base: var(--sc-font);
	--gf-form-gap-y: 22px;
	max-width: 640px;
}
.sc-form-card { background: var(--sc-white); border: 1px solid var(--sc-line-strong); border-radius: var(--sc-radius); padding: 32px; max-width: 720px; margin-top: 32px; position: relative; }
.gform_wrapper .gform_confirmation_message { background: var(--sc-accent-soft); border: 1px solid var(--sc-accent-line); border-radius: var(--sc-radius); padding: 18px 22px; }
.gform_wrapper .gf-ic-img { border-color: var(--sc-line-strong); }
.gform_wrapper .gf-ic .gf-ic-input { min-height: 44px; }

/* Contact form: tighter rows and floating labels (assets/js/float-labels.js marks the fields) */
.sc-form-card .gform_wrapper.gform-theme--orbital {
	--gf-form-gap-y: 14px;
	--gf-form-gap-x: 14px;
	--gf-form-footer-margin-y-start: 18px;
}
.sc-form-card .gform_wrapper .gform_required_legend { font-size: 0.82rem; color: var(--sc-muted); margin: 0 0 12px; }
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl { position: relative; }
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl > .gfield_label {
	position: absolute;
	left: 13px;
	top: 7px;
	z-index: 2;
	margin: 0;
	font-size: 0.72rem;
	font-weight: 500;
	line-height: 1.2;
	color: var(--sc-muted);
	pointer-events: none;
	transition: top 0.15s ease, font-size 0.15s ease, color 0.15s ease;
}
.sc-form-card .gform_wrapper.gform-theme--framework.sc-float .gfield.sc-fl input {
	block-size: 54px;
	min-block-size: 54px;
	line-height: 1.3;
	padding-block-start: 22px;
	padding-block-end: 6px;
}
.sc-form-card .gform_wrapper.gform-theme--framework.sc-float .gfield.sc-fl textarea {
	block-size: 140px;
	min-block-size: 140px;
	padding-block-start: 26px;
}
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl:has(input:placeholder-shown:not(:focus)) > .gfield_label,
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl:has(textarea:placeholder-shown:not(:focus)) > .gfield_label {
	top: 17px;
	font-size: 0.98rem;
	font-weight: 400;
}
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl:focus-within > .gfield_label { color: var(--sc-link); }
.sc-form-card .gform_wrapper.sc-float .gfield.sc-fl .gfield_description { padding-block-start: 4px; }

/* Captcha: answer box first (the plugin's own layout handles the row); keep one row on phones */
.sc-form-card .gform_wrapper .gf-ic .gf-ic-input { min-height: 50px; order: -1; }
/* 16px text keeps iPhones from zooming the page when a field is tapped */
.sc-form-card .gform_wrapper.gform-theme--framework input:not([type="hidden"]),
.sc-form-card .gform_wrapper.gform-theme--framework textarea { font-size: 16px; }
@media (max-width: 480px) {
	.sc-form-card .gform_wrapper .ginput_container.gf-ic { flex-wrap: nowrap; }
	.sc-form-card .gform_wrapper .gf-ic .gf-ic-input { min-height: 44px; min-width: 4.75em; padding-inline: 8px; letter-spacing: .12em; }
	.sc-form-card .gform_wrapper .gf-ic .gf-ic-img { min-width: 0; object-fit: contain; }
}

/* 404 and archive fallbacks */
.sc-empty { padding: 72px 0; text-align: center; color: var(--sc-muted); }
.sc-entry { padding: 24px 0; border-bottom: 1px solid var(--sc-line); }
.sc-entry h2 { font-size: 1.3rem; margin-bottom: 0.2em; }

/* Responsive */
@media (max-width: 960px) {
	.sc-hero__grid { grid-template-columns: 1fr; gap: 32px; }
	.sc-hero__title { font-size: 2.5rem; }
	.sc-plate { grid-template-columns: repeat(2, 1fr); }
	.sc-uses { grid-template-columns: 1fr 1fr; gap: 28px 32px; }
	.sc-story { grid-template-columns: 1fr; gap: 28px; }
	.sc-specs { grid-template-columns: 1fr; gap: 32px; }
	.sc-footer__inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
	body { font-size: 16px; }
	h1 { font-size: 2rem; }
	h2 { font-size: 1.6rem; }
	.sc-hero { padding: 40px 0 36px; }
	.sc-hero__title { font-size: 2.15rem; }
	.sc-plate { margin-top: 36px; }
	.sc-plate > div { padding: 12px 16px 14px; }
	.sc-plate dd { font-size: 1.4rem; }
	.sc-section { padding: 56px 0; }
	.sc-media, .sc-uses { grid-template-columns: 1fr; }
	.sc-media { gap: 28px; }
	.sc-media--flip .sc-media__figure { order: 0; }
	.sc-media + .sc-media { margin-top: 48px; }
	.sc-lede { font-size: 1.25rem; }
	.sc-closing { font-size: 1.15rem; margin-top: 44px; }
	.sc-gallery { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; align-items: end; }
	.sc-gallery img { height: auto; max-height: 210px; width: auto; }
	.sc-sheet { padding: 28px 16px 0; }
	.sc-drawings { gap: 32px; }
	.sc-titleblock { width: auto; margin: 32px -16px 0; border-left: 0; font-size: 0.68rem; }
	.sc-nav-toggle { display: inline-grid; place-items: center; }
	.sc-nav { display: none; position: absolute; left: -24px; right: -24px; top: 100%; background: var(--sc-bg); border-bottom: 1px solid var(--sc-line); box-shadow: 0 8px 16px rgba(28, 33, 39, 0.08); }
	.sc-nav.is-open { display: block; }
	.sc-nav ul { flex-direction: column; gap: 0; padding: 8px 24px 12px; align-items: stretch; }
	.sc-nav a { padding: 12px 10px; font-size: 1.05rem; }
	.sc-nav .current-menu-item > a::after, .sc-nav .current_page_item > a::after { display: none; }
	.sc-nav .current-menu-item > a, .sc-nav .current_page_item > a { background: var(--sc-accent-soft); }
	.sc-footer__inner { grid-template-columns: 1fr; gap: 24px; }
	.sc-form-card { padding: 22px 18px; }
}
@media (max-width: 420px) {
	.sc-footer__company { white-space: normal; }
	.sc-brand__sub { display: none; }
}
