/* Minter Mechanics | Coming Soon. Pure CSS output; source: assets/site.scss */
:root { color-scheme: dark; --black: #07090c; --charcoal: #151920; --red: #e6192f; --red-hot: #fa2339; --silver: #e7e9ed; --muted: #c1c2c7; }
* { box-sizing: border-box; }
html { min-width: 320px; }
body { margin: 0; background: #07090c; color: var(--silver); font-family: Arial, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
a:focus-visible { outline: 3px solid #fff; outline-offset: 6px; }
.page-shell { position: relative; isolation: isolate; min-height: 100svh; overflow: hidden; background: radial-gradient(ellipse 95% 80% at 70% 72%, #20252a 0%, #0b0e12 62%, #050609 100%); }
.page-shell::before { content: ''; position: absolute; inset: 0; z-index: -3; pointer-events: none; background: repeating-linear-gradient(117deg, transparent 0, transparent 3px, rgba(255,255,255,.009) 4px, transparent 5px), linear-gradient(0deg, #050609 0%, transparent 28%); opacity: .8; }
.page-shell::after { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, #080a0d 0%, rgba(8,10,13,.97) 28%, rgba(9,11,14,.79) 49%, rgba(9,11,14,.10) 75%, transparent 100%), linear-gradient(0deg, rgba(7,9,12,.92) 0%, rgba(7,9,12,.20) 18%, transparent 45%); }
.garage-hero { position: absolute; z-index: -2; top: 7.5%; right: -5%; width: clamp(760px, 67vw, 1150px); height: auto; max-width: none; pointer-events: none; user-select: none; }
.atelier-grid { position: absolute; z-index: -1; inset: 0; opacity: .12; pointer-events: none; background-image: linear-gradient(rgba(158,170,184,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(158,170,184,.35) 1px,transparent 1px); background-size: 96px 96px; mask-image: linear-gradient(90deg, #000, transparent 36%); }
.corner-steel { position: absolute; z-index: 0; pointer-events: none; transform: skew(-42deg); background: linear-gradient(120deg, #292d33, #07080a 35%, #3b4048 37%, #13171c 41%, #060709 65%); box-shadow: 0 0 1px #fff8, 12px 0 0 #0b0c0f; }
.corner-steel--top { width: 220px; height: 220px; left: -130px; top: -115px; }
.corner-steel--bottom { width: 320px; height: 170px; right: -170px; bottom: -100px; border-top: 3px solid var(--red); box-shadow: 0 -2px 25px #dd0b2433; }
.site-content { position: relative; z-index: 2; width: min(100%, 1760px); margin: auto; min-height: 100svh; display: flex; flex-direction: column; padding: clamp(24px, 4.9vw, 94px) clamp(25px, 5.4vw, 112px) clamp(24px, 3vw, 52px); }
.masthead { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }
.identity { display: inline-flex; align-items: center; gap: clamp(15px, 2vw, 34px); text-decoration: none; min-width: 0; }
.identity__mark { width: clamp(95px, 10.4vw, 158px); height: auto; flex-shrink: 0; filter: drop-shadow(0 4px 8px #0008); }
.identity__divider { height: clamp(77px, 8vw, 122px); width: 2px; flex-shrink: 0; background: linear-gradient(180deg, transparent, var(--red) 15%, var(--red) 85%, transparent); transform: rotate(14deg); }
.identity__wordmark { display: flex; flex-direction: column; transform: skewX(-12deg); text-transform: uppercase; font-weight: 900; line-height: .92; text-shadow: 0 2px 3px #000; }
.identity__wordmark span:first-child { font-size: clamp(33px, 4.25vw, 68px); letter-spacing: .03em; background: linear-gradient(180deg, #fff 12%, #c0c4cb 47%, #f8f9fc 70%, #777e88 100%); color: transparent; background-clip: text; }
.identity__wordmark span:last-child { margin-top: 5px; font-size: clamp(22px, 2.78vw, 44px); font-weight: 500; letter-spacing: .20em; color: #e7e7eb; border-bottom: 2px solid #ce1126; padding-bottom: 12px; }
.technician { align-self: center; min-width: 270px; margin-top: 3px; text-align: center; padding: 0 0 18px; border-bottom: 1px solid #df142ab0; box-shadow: 0 14px 17px -19px #ff1838; }
.technician__signature { font-family: 'Brush Script MT', 'Segoe Script', 'Snell Roundhand', 'URW Chancery L', cursive; font-size: clamp(27px, 3vw, 46px); font-style: italic; font-weight: 400; letter-spacing: -.05em; }
.technician__certification { font-size: clamp(12px, 1.4vw, 20px); font-style: italic; letter-spacing: .03em; white-space: nowrap; }
.announcement { padding-top: clamp(28px, 2.6vw, 52px); width: min(880px, 68%); }
.technical-rule { width: 100%; height: 28px; position: relative; margin-bottom: clamp(12px, 1.4vw, 28px); background: linear-gradient(90deg, var(--red), var(--red) 76%, transparent 76%); clip-path: polygon(0 39%, 76% 39%, 80% 100%, 100% 100%, 100% 94%, 80.5% 94%, 76.5% 32%, 0 32%); }
.technical-rule span { position: absolute; top: 0; left: 0; width: 130px; height: 11px; background: repeating-linear-gradient(123deg,var(--red) 0 19px,transparent 20px 28px); transform: translateY(-5px); }
.headline { display: flex; flex-direction: column; margin: 0; text-transform: uppercase; font-family: 'Arial Black', 'Arial', Helvetica, sans-serif; font-weight: 950; font-style: italic; line-height: .89; letter-spacing: -.065em; transform: skewX(-8deg); transform-origin: left; }
.headline__line { display: block; white-space: nowrap; }
.headline__line--light { font-size: clamp(64px, 7.7vw, 126px); background: linear-gradient(180deg,#fff 4%,#e9edf1 37%,#b7bac0 70%,#f7f8fa 92%); color: transparent; background-clip: text; text-shadow: 0 4px 15px #0002; }
.headline__line--red { font-size: clamp(56px, 7.32vw, 120px); color: #e8182c; text-shadow: 0 3px 0 #72000b, 0 8px 18px #000b; }
.tagline { margin: 7px 0 0; color: #d9dade; font-size: clamp(21px, 2.5vw, 40px); font-style: italic; font-weight: 800; letter-spacing: -.015em; white-space: nowrap; text-shadow: 1px 3px 4px #000; }
.eyebrow-rule { height: 2px; width: 280px; margin: clamp(20px, 1.8vw, 34px) 0 14px; background: linear-gradient(90deg, var(--red) 4%, #f9b4bb 45%, transparent 100%); box-shadow: 0 0 12px #e8183050; }
.description { max-width: 750px; margin: 0 0 clamp(22px, 2vw, 36px); color: #e5e4e7; font-size: clamp(16px, 1.42vw, 24px); line-height: 1.45; text-shadow: 0 2px 4px #000; }
.available { position: relative; width: min(755px, 100%); display: flex; align-items: center; gap: clamp(14px, 1.5vw, 24px); padding: clamp(14px,1.45vw,23px) clamp(20px,2.2vw,38px); border: 1px solid #adb2bc77; border-left: 6px solid var(--red-hot); border-radius: 9px 13px 13px 9px; background: linear-gradient(105deg,#11161bdb,#171a20a8,#252a314d); box-shadow: 0 2px 18px #0008, inset 0 1px #ffffff36; transform: skewX(-10deg); }
.available > * { transform: skewX(10deg); }
.available__icon { width: 62px; height: 62px; flex-shrink: 0; fill: none; stroke: var(--red-hot); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.available__copy { border-left: 2px solid #f2f3f4b3; padding-left: clamp(14px, 2vw, 28px); text-transform: uppercase; display: flex; flex-direction: column; gap: 6px; }
.available__copy strong { font-size: clamp(16px, 1.67vw, 25px); font-weight: 800; font-style: italic; white-space: nowrap; letter-spacing: .015em; }
.available__copy span { font-size: clamp(14px, 1.35vw, 21px); letter-spacing: .36em; font-style: italic; }
.call-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; width: min(550px, 81%); min-height: 83px; margin: clamp(28px, 3vw, 54px) 0 0 clamp(30px, 4vw, 85px); padding: 12px 26px; color: #f5f5f7; font-size: clamp(26px, 3.25vw, 51px); font-style: italic; font-weight: 850; letter-spacing: .005em; text-decoration: none; white-space: nowrap; background: linear-gradient(180deg,#da0c1e 0%,#95020b 75%,#650004 100%); border: 2px solid var(--red-hot); border-radius: 20px 10px 16px 10px; box-shadow: 0 0 1px #ff4c5a, inset 0 1px 5px #ff8890bb, 0 15px 25px #0007, 0 8px 25px #ee102e33; text-shadow: 1px 3px 5px #0009; transform: skewX(-13deg); transition: filter .2s, box-shadow .2s; }
.call-button > * { transform: skewX(13deg); }
.call-button:hover { filter: brightness(1.14); box-shadow: 0 0 20px #fa243a55, 0 15px 25px #0008; }
.call-button svg { width: clamp(27px, 3.1vw, 48px); height: auto; fill: currentColor; flex-shrink: 0; }
.site-footer { margin-top: auto; padding-top: clamp(28px, 4vw, 68px); }
.services { display: flex; justify-content: center; align-items: center; gap: clamp(26px, 3.4vw, 72px); max-width: 1050px; margin: 0 auto; }
.services__item { display: flex; align-items: center; gap: clamp(12px, 2vw, 32px); font-weight: 800; font-style: italic; font-size: clamp(18px, 1.8vw, 30px); letter-spacing: .13em; text-transform: uppercase; }
.services__item svg { width: clamp(38px, 3.5vw, 58px); height: clamp(38px, 3.5vw, 58px); fill: none; stroke: var(--red-hot); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.services__separator { width: 1px; height: 48px; background: #ced1d8b8; }
.footer-brand { display: flex; justify-content: center; align-items: center; gap: 38px; max-width: 1040px; margin: clamp(20px, 2.9vw, 45px) auto 0; text-transform: uppercase; letter-spacing: .55em; font-size: clamp(13px, 1.25vw, 20px); font-style: italic; white-space: nowrap; }
.footer-brand span:first-child, .footer-brand span:last-child { width: 25%; height: 2px; background: linear-gradient(90deg,transparent,var(--red)); }
.footer-brand span:last-child { background: linear-gradient(90deg,var(--red),transparent); }
@media (min-width: 1720px) and (min-height: 950px) { .announcement { padding-top: 36px; } }
@media (max-width: 1120px) { .site-content { padding-left: 5%; padding-right: 5%; } .identity__wordmark span:first-child { font-size: 45px; } .identity__wordmark span:last-child { font-size: 26px; } .technician { min-width: 220px; } .announcement { width: 75%; } .garage-hero { right: -17%; width: 850px; top: 15%; } .headline__line--light { font-size: 80px; } .headline__line--red { font-size: 75px; } .tagline { font-size: 27px; } .available__copy strong { white-space: normal; } }
@media (max-width: 740px) { .page-shell::after { background: linear-gradient(180deg,rgba(7,9,12,.18) 0%,rgba(7,9,12,.48) 22%,rgba(7,9,12,.95) 49%,#080a0d 76%); } .garage-hero { right: -36%; top: 110px; width: 720px; opacity: .84; } .site-content { min-height: 100svh; padding: 22px 22px 28px; } .identity { gap: 10px; } .identity__mark { width: 89px; } .identity__divider { height: 65px; } .identity__wordmark span:first-child { font-size: 27px; } .identity__wordmark span:last-child { font-size: 16px; letter-spacing: .14em; padding-bottom: 5px; } .masthead { flex-wrap: wrap; gap: 4px; } .technician { margin: 8px 0 0 auto; padding-bottom: 9px; min-width: 0; } .technician__signature { font-size: 26px; } .technician__certification { font-size: 12px; } .announcement { padding-top: 225px; width: 100%; } .technical-rule { height: 19px; margin-bottom: 8px; width: 100%; } .headline__line--light { font-size: clamp(54px, 10.3vw, 80px); } .headline__line--red { font-size: clamp(36px, 10vw, 64px); } .tagline { font-size: clamp(16px, 4.15vw, 26px); white-space: normal; margin-top: 10px; } .eyebrow-rule { margin-top: 18px; } .description { font-size: 16px; max-width: 560px; } .available { transform: none; width: 100%; padding: 15px; } .available > * { transform: none; } .available__copy strong { font-size: 15px; } .available__copy span { font-size: 13px; letter-spacing: .19em; } .available__icon { width: 46px; height: 46px; } .call-button { width: min(100%,420px); margin: 28px auto 0; min-height: 70px; font-size: clamp(23px,6vw,37px); display: flex; } .site-footer { padding-top: 45px; } .services { gap: 12px; } .services__item { flex-direction: column; gap: 5px; font-size: 11px; letter-spacing: .05em; } .services__item svg { width: 32px; height: 32px; } .services__separator { height: 42px; } .footer-brand { gap: 12px; margin-top: 24px; font-size: 10px; letter-spacing: .24em; } }
@media (max-width: 390px) { .site-content { padding-left: 14px; padding-right: 14px; } .identity__mark { width: 77px; } .identity__wordmark span:first-child { font-size: 24px; } .identity__wordmark span:last-child { font-size: 14px; } .technician__signature { font-size: 22px; } .technician__certification { font-size: 11px; } .headline__line--light { font-size: 54px; } .headline__line--red { font-size: clamp(36px, 10vw, 39px); } .available__copy strong { font-size: 13px; } .available__copy span { font-size: 11px; } .call-button { font-size: 23px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }

/* v2: single-viewport layout. Avoids desktop overflow from width-driven sizing.
   For unusually short displays (< 540px high), a11y takes priority over clipping. */
html, body { height: 100%; }
.page-shell { height: 100svh; min-height: 0; }
.site-content {
  height: 100%; min-height: 0;
  display: grid; grid-template-rows: auto minmax(0, 1fr) auto;
  padding: clamp(14px, 2.6svh, 30px) clamp(25px, 5.4vw, 112px) clamp(12px, 2.2svh, 24px);
}
.masthead { align-items: center; }
.identity__mark { width: clamp(76px, min(9.0vw, 11.5svh), 135px); }
.identity__divider { height: clamp(58px, 9.5svh, 100px); }
.identity__wordmark span:first-child { font-size: clamp(29px, min(4.25vw, 6.1svh), 62px); }
.identity__wordmark span:last-child { font-size: clamp(19px, min(2.78vw, 4.2svh), 41px); padding-bottom: clamp(5px, 1svh, 10px); }
.technician { min-width: 0; padding-bottom: 10px; }
.technician__signature { font-size: clamp(25px, min(3vw, 5svh), 44px); }
.announcement { align-self: center; padding-top: clamp(8px, 1.7svh, 20px); }
.technical-rule { height: clamp(14px, 2svh, 22px); margin-bottom: clamp(6px, 1svh, 12px); }
.headline__line--light { font-size: clamp(57px, min(7.7vw, 10.5svh), 120px); }
.headline__line--red { font-size: clamp(52px, min(7.32vw, 10svh), 116px); }
.tagline { font-size: clamp(20px, min(2.5vw, 3.5svh), 38px); margin-top: 4px; }
.eyebrow-rule { margin: clamp(9px, 1.45svh, 18px) 0 clamp(8px, 1.1svh, 13px); }
.description { font-size: clamp(15px, min(1.42vw, 2.6svh), 22px); line-height: 1.31; margin-bottom: clamp(10px, 1.5svh, 20px); }
.available { padding: clamp(9px, 1.25svh, 16px) clamp(15px, 1.8vw, 27px); }
.available__icon { width: clamp(36px, 5.4svh, 53px); height: auto; }
.available__copy strong { font-size: clamp(15px, min(1.67vw, 2.6svh), 23px); }
.available__copy span { font-size: clamp(12px, min(1.35vw, 2.2svh), 19px); }
.call-button { min-height: clamp(55px, 8svh, 78px); margin: clamp(12px, 1.9svh, 22px) 0 0 clamp(24px, 4vw, 70px); padding: 8px 22px; font-size: clamp(23px, min(3.25vw, 5.2svh), 46px); }
.call-button svg { width: clamp(26px, 4.8svh, 42px); }
.site-footer { margin-top: 0; padding-top: clamp(6px, 1.55svh, 19px); }
.services__item { font-size: clamp(15px, min(1.8vw, 2.7svh), 27px); }
.services__item svg { width: clamp(32px, min(3.5vw, 5svh), 52px); height: clamp(32px, min(3.5vw, 5svh), 52px); stroke-width: 1.9; }
.services__separator { height: clamp(27px, 4.5svh, 48px); }
.footer-brand { margin: clamp(9px, 1.4svh, 18px) auto 0; font-size: clamp(12px, min(1.25vw, 2.1svh), 18px); }
@media (max-width: 1120px) and (min-width: 741px) {
  .identity__mark { width: clamp(76px, 9.2svh, 108px); }
  .identity__wordmark span:first-child { font-size: clamp(28px, 5.3svh, 45px); }
  .identity__wordmark span:last-child { font-size: clamp(19px, 3.2svh, 26px); }
  .headline__line--light { font-size: clamp(56px, 10.2svh, 80px); }
  .headline__line--red { font-size: clamp(51px, 9.7svh, 75px); }
  .tagline { font-size: clamp(20px, 3.4svh, 27px); }
  .announcement { width: 75%; }
}
@media (max-width: 740px) {
  .site-content { padding: clamp(12px, 2svh, 20px) clamp(14px, 4.5vw, 24px) clamp(10px, 1.6svh, 18px); }
  .masthead { align-items: flex-start; gap: 0; }
  .identity__mark { width: clamp(61px, 9.2svh, 85px); }
  .identity__divider { height: clamp(47px, 7.6svh, 70px); }
  .identity__wordmark span:first-child { font-size: clamp(23px, 6.7vw, 32px); }
  .identity__wordmark span:last-child { font-size: clamp(13px, 3.9vw, 18px); padding-bottom: 4px; }
  .technician { align-self: flex-end; padding-bottom: 5px; margin: 1px 0 0 auto; }
  .technician__signature { font-size: clamp(19px, 5.2vw, 26px); }
  .announcement { padding-top: clamp(4px, 1.3svh, 12px); width: 100%; }
  .technical-rule { height: 14px; margin-bottom: 5px; }
  .headline__line--light { font-size: clamp(41px, 11.9vw, 69px); }
  .headline__line--red { font-size: clamp(30px, 9.7vw, 63px); }
  .tagline { font-size: clamp(15px, 4vw, 22px); line-height: 1.16; margin-top: 6px; }
  .eyebrow-rule { margin: clamp(7px, 1.1svh, 12px) 0 7px; }
  .description { font-size: clamp(13px, 3.6vw, 16px); line-height: 1.3; margin-bottom: clamp(8px, 1.35svh, 13px); }
  .available { width: 100%; padding: clamp(7px, 1.1svh, 11px); }
  .available__icon { width: clamp(33px, 5svh, 45px); }
  .available__copy { padding-left: clamp(9px, 2.6vw, 17px); }
  .available__copy strong { font-size: clamp(12px, 3.4vw, 16px); }
  .available__copy span { font-size: clamp(10px, 3.1vw, 13px); }
  .call-button { display: flex; min-height: clamp(48px, 7.4svh, 66px); margin: clamp(9px, 1.4svh, 15px) auto 0; font-size: clamp(20px, 5.7vw, 32px); }
  .call-button svg { width: clamp(22px, 4.8svh, 33px); }
  .site-footer { padding-top: clamp(5px, 1svh, 10px); }
  .services { gap: 12px; }
  .services__item { font-size: clamp(10px, 2.8vw, 12px); }
  .services__item svg { width: clamp(25px, 4.5svh, 38px); height: clamp(25px, 4.5svh, 38px); stroke-width: 1.9; }
  .services__separator { height: clamp(26px, 4svh, 40px); }
  .footer-brand { margin-top: clamp(7px, 1.1svh, 12px); font-size: clamp(8px, 2.5vw, 10px); letter-spacing: .24em; }
  .garage-hero { top: 8%; right: -43%; width: 740px; opacity: .72; }
}
/* Very short / landscape displays: show all text rather than permanently clip it. */
@media (max-height: 540px) {
  .page-shell { height: auto; min-height: 100svh; }
  .site-content { height: auto; min-height: 100svh; display: flex; }
  .site-footer { margin-top: auto; }
  .announcement { padding: 16px 0; }
}

/* Minter wordmark color fix */
.identity__wordmark span:first-child {
  background: none;
  color: #e7e7eb;
  -webkit-text-fill-color: #e7e7eb;
}
