:root {
  --teal: #1b5e6e;
  --teal-dark: #104555;
  --teal-ink: #0d3540;
  --gold: #c9a84c;
  --gold-dark: #987522;
  --mist: #eef6f8;
  --sky: #8ec6d2;
  --charcoal: #1f2937;
  --slate: #6b7280;
  --white: #ffffff;
  --line: rgba(27, 94, 110, .16);
  --shadow: 0 20px 55px rgba(16, 69, 85, .13);
  --container: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--charcoal); background: var(--white); font-family: Arial, sans-serif; line-height: 1.5; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--teal); font-family: Garamond, Georgia, serif; font-weight: 700; line-height: 1.04; }
h1 { font-size: clamp(3.2rem, 6.4vw, 6.5rem); letter-spacing: -.045em; }
h2 { font-size: clamp(2.35rem, 4.3vw, 4.5rem); letter-spacing: -.035em; }
h3 { font-size: 1.45rem; }
.container { width: min(calc(100% - 48px), var(--container)); margin: 0 auto; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.skip-link { position: fixed; left: 12px; top: 10px; z-index: 100; padding: 10px 15px; background: white; border-radius: 6px; transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.eyebrow { display: flex; align-items: center; gap: 11px; color: var(--teal); font-size: .72rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow:before { content: ''; width: 32px; height: 2px; background: var(--gold); }
.eyebrow.light { color: var(--mist); }
.kicker { color: var(--gold-dark); font-size: .72rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.button { min-height: 52px; padding: 0 24px; display: inline-flex; align-items: center; justify-content: center; gap: 20px; border: 0; border-radius: 100px; background: var(--teal); color: white; font-weight: 700; cursor: pointer; transition: .25s ease; }
.button:hover { background: var(--teal-dark); transform: translateY(-2px); box-shadow: 0 12px 28px rgba(27,94,110,.22); }
.button.gold { background: var(--gold); color: var(--teal-ink); }
.button.gold:hover { background: #d6b75d; }
.button.light { background: white; color: var(--teal); }
.text-link { display: inline-flex; gap: 15px; align-items: center; color: var(--teal); font-weight: 700; border-bottom: 1px solid var(--gold); padding-bottom: 4px; }

.site-header { height: 82px; position: fixed; inset: 0 0 auto; z-index: 30; background: rgba(255,255,255,.96); border-bottom: 1px solid transparent; transition: .25s; }
.site-header.scrolled, .site-header.solid { border-color: var(--line); box-shadow: 0 7px 24px rgba(16,69,85,.07); backdrop-filter: blur(12px); }
.nav-shell { height: 100%; display: flex; align-items: center; gap: 36px; }
.wordmark { width: 248px; height: 58px; flex: 0 0 248px; margin-right: auto; display: flex; align-items: center; overflow: hidden; }
.wordmark img { width: 100%; height: auto; }
.main-nav { display: flex; align-items: center; gap: 27px; }
.main-nav a { position: relative; color: var(--teal-ink); font-size: .82rem; font-weight: 700; padding: 9px 0; }
.main-nav a:after { content: ''; position: absolute; left: 0; right: 100%; bottom: 2px; height: 2px; background: var(--gold); transition: .25s; }
.main-nav a:hover:after, .main-nav a.active:after { right: 0; }
.nav-button { min-height: 44px; padding: 0 19px; font-size: .8rem; }
.menu-button { display: none; }

.guided-hero { min-height: 100vh; padding: 130px 0 40px; position: relative; display: flex; align-items: stretch; overflow: hidden; background: var(--mist); }
.guided-hero-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.guided-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.88) 36%, rgba(255,255,255,.18) 68%, rgba(13,53,64,.12) 100%); }
.guided-hero .container { position: relative; z-index: 1; display: grid; grid-template-rows: 1fr auto; }
.hero-message { align-self: center; max-width: 660px; padding-bottom: 40px; }
.hero-message h1 { margin: 22px 0; }
.hero-message h1 em { color: var(--gold-dark); font-weight: 400; }
.hero-message > p:not(.eyebrow) { max-width: 590px; color: #53646a; font-size: 1.08rem; line-height: 1.75; }
.entry-launcher { padding: 24px; border-radius: 23px; background: rgba(255,255,255,.93); box-shadow: var(--shadow); backdrop-filter: blur(12px); }
.entry-launcher-head { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-bottom: 17px; }
.entry-launcher-head h2 { margin: 0; color: var(--teal-ink); font: 700 1.4rem Arial,sans-serif; letter-spacing: -.02em; }
.entry-launcher-head p { margin: 0; color: var(--slate); font-size: .78rem; }
.entry-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }
.entry-card { min-height: 150px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; display: flex; flex-direction: column; background: white; transition: .25s; }
.entry-card:hover { border-color: var(--gold); transform: translateY(-3px); box-shadow: 0 12px 30px rgba(16,69,85,.1); }
.entry-card > span:first-child { color: var(--gold-dark); font: 400 .85rem Garamond,Georgia,serif; }
.entry-card h3 { margin: auto 0 7px; color: var(--teal); font: 700 1.1rem Arial,sans-serif; }
.entry-card p { margin: 0; color: var(--slate); font-size: .76rem; }
.entry-card b { align-self: flex-end; color: var(--teal); margin-top: 12px; }
.entry-card.primary { background: var(--teal); border-color: var(--teal); }
.entry-card.primary h3, .entry-card.primary b { color: white; }
.entry-card.primary p { color: rgba(255,255,255,.72); }
.entry-card.primary > span:first-child { color: var(--gold); }
.confidence-bar { padding: 27px 0; background: var(--teal); color: white; }
.confidence-bar .container { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.confidence-bar span { display: inline-flex; align-items: center; gap: 9px; font-size: .74rem; letter-spacing: .06em; text-transform: uppercase; }
.confidence-bar span:before { content: '✓'; color: var(--gold); font-weight: 700; }
.credential-section { padding: 70px 0 74px; background: linear-gradient(135deg,var(--mist),#f7fafb); }
.credential-shell { display: grid; grid-template-columns: 1fr; gap: 34px; align-items: start; }
.credential-heading h2 { margin: 7px 0 17px; font-size: clamp(2.25rem,3.6vw,3.6rem); }
.credential-heading > p:last-child { max-width: 720px; color: var(--slate); }
.credential-note span { display: block; text-wrap: pretty; }
.credential-note span + span { margin-top: 4px; }
.credential-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.credential-badge { min-height: 116px; padding: 23px 22px; display: flex; align-items: center; gap: 17px; background: transparent; }
.credential-badge + .credential-badge { border-left: 1px solid var(--line); }
.credential-symbol { position: relative; width: 56px; height: 56px; flex: 0 0 56px; color: var(--teal); }
.credential-copy { min-width: 0; display: flex; flex-direction: column; }
.credential-badge strong { margin: 0; color: var(--teal); font-size: .86rem; line-height: 1.3; }
.credential-badge small { margin-top: 5px; color: var(--slate); font-size: .64rem; line-height: 1.4; }
.credential-symbol-ndis:before { content: ''; position: absolute; left: 5px; top: 22px; width: 9px; height: 9px; border-radius: 50%; background: var(--gold); box-shadow: 13px -15px 0 var(--teal),27px -9px 0 var(--sky),38px 4px 0 var(--teal),25px 18px 0 var(--gold),8px 19px 0 var(--sky); }
.credential-symbol-ndis:after { content: ''; position: absolute; inset: 13px 9px 10px 10px; border: 2px solid rgba(27,94,110,.24); border-radius: 46% 54% 52% 48%; transform: rotate(-16deg); }
.credential-symbol-ahpra:before, .credential-symbol-ahpra:after { content: ''; position: absolute; left: 50%; top: 50%; border-radius: 4px; background: linear-gradient(135deg,var(--teal),var(--sky)); transform: translate(-50%,-50%); }
.credential-symbol-ahpra:before { width: 16px; height: 48px; }
.credential-symbol-ahpra:after { width: 48px; height: 16px; }
.credential-symbol-vba:before { content: ''; position: absolute; left: 14px; top: 5px; width: 31px; height: 31px; border-left: 3px solid var(--teal); border-top: 3px solid var(--teal); transform: rotate(45deg); }
.credential-symbol-vba:after { content: ''; position: absolute; left: 10px; bottom: 3px; width: 38px; height: 31px; border: 3px solid var(--gold-dark); border-top: 0; border-radius: 0 0 4px 4px; }
.credential-symbol-insured:before { content: ''; position: absolute; inset: 3px 7px 2px; background: linear-gradient(145deg,var(--teal),var(--teal-ink)); clip-path: polygon(50% 0,92% 16%,86% 65%,50% 100%,14% 65%,8% 16%); }
.credential-symbol-insured:after { content: '✓'; position: absolute; inset: 0; display: grid; place-items: center; color: white; font-size: 1.25rem; font-weight: 800; }
.simple-help { padding: 78px 0; background: white; }
.simple-help-inner { display: flex; align-items: center; justify-content: space-between; gap: 70px; }
.simple-help h2 { max-width: 720px; margin: 0; font-size: clamp(2.2rem,3.4vw,3.5rem); }
.simple-help div:last-child { flex: 0 0 360px; }
.simple-help p { color: var(--slate); }

.page-hero { padding: 155px 0 76px; background: var(--mist); }
.breadcrumb { margin-bottom: 24px; color: var(--slate); font-size: .76rem; }
.breadcrumb a { color: var(--teal); font-weight: 700; }
.page-hero-grid { display: grid; grid-template-columns: 1fr .6fr; align-items: end; gap: 75px; }
.page-hero h1 { max-width: 820px; margin-bottom: 0; font-size: clamp(3.3rem,5.5vw,5.5rem); }
.page-hero-copy { color: #52636a; font-size: 1.03rem; line-height: 1.75; }
.page-hero-copy .button { margin-top: 15px; }
.modification-hero-promise span { display: grid; grid-template-columns: 2.1em 1fr; column-gap: .16em; align-items: baseline; }
.modification-hero-promise strong { color: inherit; font: inherit; }
.split-page-hero { padding: 118px 0 58px; overflow: hidden; background: linear-gradient(135deg,#f7fafb 0%,#edf4f5 100%); }
.split-hero-shell { min-height: 600px; display: grid; grid-template-columns: minmax(0,.9fr) minmax(470px,1.1fr); gap: 52px; align-items: stretch; }
.split-hero-content { padding: 26px 0 20px; display: flex; flex-direction: column; justify-content: center; }
.split-hero-content .breadcrumb { margin-bottom: auto; }
.split-hero-content .eyebrow { margin-top: 36px; }
.split-page-hero h1 { max-width: 650px; margin: 0; font-size: clamp(3.2rem,5vw,5.2rem); }
.split-hero-copy { max-width: 590px; margin-top: 28px; padding-top: 23px; border-top: 1px solid var(--line); }
.split-hero-copy h2 { margin: 0 0 12px; color: var(--teal-ink); font-size: clamp(1.65rem,2.2vw,2.3rem); line-height: 1.1; }
.split-hero-copy p { max-width: 560px; margin: 0; color: var(--slate); font-size: .9rem; line-height: 1.68; }
.split-hero-copy .button { margin-top: 19px; }
.split-hero-visual { min-height: 600px; margin: 0; border-radius: 24px; overflow: hidden; background: var(--teal); box-shadow: 0 24px 58px rgba(16,69,85,.17); }
.split-hero-visual img { width: 100%; height: 100%; object-fit: cover; }
.ot-split-hero .split-hero-visual img { object-position: center 45%; }
.support-split-hero .split-hero-visual img { object-position: 72% center; }
.equipment-split-hero .split-hero-visual img { object-position: center 48%; }
.modification-split-hero .split-hero-visual img { object-position: center 50%; }

.modification-offer { padding: 66px 0; background: var(--teal); color: white; }
.modification-offer-head { display: grid; grid-template-columns: 1fr; gap: 16px; align-items: end; margin-bottom: 34px; }
.modification-offer-head h2 { margin: 7px 0 0; color: white; font-size: clamp(2.5rem,4vw,4rem); white-space: nowrap; }
.modification-offer-head > p { max-width: 900px; margin: 0; color: rgba(255,255,255,.72); font-size: .94rem; line-height: 1.7; }
.modification-offer-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.modification-offer article { min-height: 138px; padding: 18px 25px; border-left: 1px solid rgba(255,255,255,.18); border-top: 1px solid rgba(255,255,255,.18); display: flex; flex-direction: column; }
.modification-offer article:first-child { border-left: 0; }
.modification-offer span { color: var(--gold); font: 400 .85rem Garamond,serif; }
.modification-offer strong { margin-top: auto; font-size: .82rem; }
.modification-offer small { margin-top: 5px; color: rgba(255,255,255,.65); font-size: .65rem; line-height: 1.45; }
.scope-section { padding: 95px 0; background: var(--mist); }
.choice-heading > p:last-child { max-width: 700px; color: var(--slate); }
.scope-intro-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: stretch; margin-bottom: 16px; }
.scope-intro-grid .choice-heading { max-width: none; min-height: 330px; margin: 0; padding: 38px; border-left: 3px solid var(--gold); border-radius: 0 18px 18px 0; display: flex; flex-direction: column; justify-content: center; background: white; box-shadow: 0 13px 35px rgba(16,69,85,.07); }
.scope-intro-grid .choice-heading h2 { margin: 7px 0 18px; }
.scope-intro-grid .choice-heading > p:last-child { margin: 0; line-height: 1.7; }
.major-showcase { position: relative; min-height: 330px; border-radius: 18px; overflow: hidden; background: var(--teal); box-shadow: 0 13px 35px rgba(16,69,85,.12); }
.major-showcase-stage, .major-showcase figure { position: absolute; inset: 0; }
.major-showcase figure { margin: 0; opacity: 0; transform: scale(1.025); transition: opacity .7s ease,transform 5.4s ease; pointer-events: none; }
.major-showcase figure.is-active { z-index: 1; opacity: 1; transform: scale(1); }
.major-showcase img { width: 100%; height: 100%; object-fit: cover; }
.major-showcase figure:after { content: ''; position: absolute; inset: 38% 0 0; background: linear-gradient(transparent,rgba(7,34,42,.86)); }
.major-showcase figcaption { position: absolute; z-index: 2; left: 27px; right: 92px; bottom: 23px; display: flex; flex-direction: column; color: white; }
.major-showcase figcaption span { color: var(--gold); font-size: .6rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.major-showcase figcaption strong { margin-top: 4px; font: 700 1.25rem Garamond,Georgia,serif; }
.major-showcase-controls { position: absolute; z-index: 3; top: 17px; right: 17px; padding: 7px 8px 7px 12px; display: flex; flex-direction: row; align-items: center; gap: 11px; border-radius: 100px; background: rgba(255,255,255,.92); box-shadow: 0 8px 22px rgba(7,34,42,.16); }
.major-showcase-controls > span { color: var(--slate); font-size: .58rem; }
.major-showcase-controls > span b { color: var(--teal); }
.major-showcase-controls > div { display: flex; flex-direction: row; gap: 4px; }
.major-showcase-controls button { width: 30px; height: 30px; padding: 0; border: 1px solid var(--line); border-radius: 50%; display: grid; place-items: center; background: white; color: var(--teal); cursor: pointer; }
.major-showcase-controls button:hover, .major-showcase-controls button:focus-visible { border-color: var(--gold); outline: none; }
.scope-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.scope-panel { padding: 34px; border-radius: 18px; background: white; box-shadow: 0 13px 35px rgba(16,69,85,.07); }
.scope-panel.major { background: var(--teal); color: white; }
.scope-panel-head { padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.scope-panel.major .scope-panel-head { border-color: rgba(255,255,255,.16); }
.scope-panel-head span { color: var(--gold-dark); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.scope-panel.major .scope-panel-head span { color: var(--gold); }
.scope-panel h3 { margin: 8px 0 0; font-size: 1.8rem; }
.scope-panel.major h3, .scope-panel.major .text-link { color: white; }
.scope-panel ul { margin: 25px 0 30px; padding: 0; list-style: none; }
.scope-panel li { position: relative; padding: 10px 0 10px 24px; border-bottom: 1px solid var(--line); color: var(--slate); font-size: .8rem; }
.scope-panel.major li { border-color: rgba(255,255,255,.13); color: rgba(255,255,255,.76); }
.scope-panel li:before { content: '✓'; position: absolute; left: 0; color: var(--gold-dark); font-weight: 700; }
.scope-panel.major li:before { color: var(--gold); }
.scope-note { margin: 22px 0 0; color: var(--slate); font-size: .76rem; text-align: center; }
.project-section { padding: 100px 0; background: white; }
.project-heading, .lift-heading { display: grid; grid-template-columns: 1fr .62fr; gap: 75px; align-items: end; margin-bottom: 36px; }
.project-heading h2, .lift-heading h2 { margin: 7px 0 0; }
.project-heading > p, .lift-heading > p { margin: 0; color: var(--slate); line-height: 1.75; }
.project-heading > div:last-child > p { margin: 0 0 14px; color: var(--slate); line-height: 1.75; }
.project-showcase-grid { display: grid; grid-template-columns: 1.25fr .75fr; grid-template-rows: repeat(2,300px); gap: 14px; }
.project-story { position: relative; min-height: 0; border-radius: 18px; overflow: hidden; background: var(--teal); color: white; box-shadow: 0 14px 36px rgba(16,69,85,.11); }
.project-story-featured { grid-row: 1 / 3; }
.project-story > img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.project-story:hover > img { transform: scale(1.025); }
.project-story:after { content: ''; position: absolute; inset: 28% 0 0; background: linear-gradient(transparent,rgba(7,34,42,.9)); }
.project-story > div { position: absolute; z-index: 1; left: 27px; right: 27px; bottom: 24px; }
.project-story > div > span { color: var(--gold); font-size: .59rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.project-story h3 { margin: 6px 0 7px; color: white; font-size: 1.45rem; }
.project-story p { max-width: 540px; margin: 0 0 13px; color: rgba(255,255,255,.74); font-size: .72rem; line-height: 1.55; }
.project-story b { color: white; font-size: .68rem; }
.project-story:not(.project-story-featured) p { display: none; }
.project-proof-row { margin-top: 14px; padding: 19px 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.project-proof-row span { padding: 0 25px; display: flex; flex-direction: column; color: var(--slate); font-size: .66rem; }
.project-proof-row span + span { border-left: 1px solid var(--line); }
.project-proof-row span:first-child { padding-left: 0; }
.project-proof-row strong { margin-bottom: 4px; color: var(--teal); font-size: .75rem; }
.project-credit { margin: 14px 0 0; color: var(--slate); font-size: .67rem; text-align: right; }
.lift-section { padding: 100px 0; background: var(--mist); }
.lift-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lift-card { min-height: 720px; padding: 0 34px 34px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 18px; overflow: hidden; display: flex; flex-direction: column; background: white; box-shadow: 0 14px 38px rgba(16,69,85,.08); }
.lift-card.platform { background: white; color: inherit; }
.lift-card-media { position: relative; height: 285px; flex: 0 0 285px; margin: 0 -34px 27px; overflow: hidden; background: var(--teal); }
.lift-card-media:after { content: ''; position: absolute; inset: 58% 0 0; background: linear-gradient(transparent,rgba(7,34,42,.75)); }
.lift-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.lift-card:hover .lift-card-media img { transform: scale(1.02); }
.lift-card-media figcaption { position: absolute; z-index: 1; left: 20px; right: 20px; bottom: 15px; color: rgba(255,255,255,.86); font-size: .59rem; letter-spacing: .04em; }
.lift-card-top { display: flex; align-items: center; justify-content: space-between; }
.lift-card-top > span { color: var(--gold-dark); font: 400 1rem Garamond,Georgia,serif; }
.lift-card-top > small { color: var(--slate); font-size: .59rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.platform .lift-card-top > span { color: var(--gold-dark); }
.lift-type { margin: 23px 0 7px; color: var(--gold-dark); font-size: .65rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.platform .lift-type { color: var(--gold-dark); }
.lift-card h3 { margin: 0 0 15px; font-size: 2.25rem; }
.lift-card > p:not(.lift-type) { color: var(--slate); font-size: .83rem; line-height: 1.65; }
.platform h3, .platform .text-link { color: var(--teal); }
.platform > p:not(.lift-type) { color: var(--slate); }
.lift-card ul { margin: 10px 0 30px; padding: 0; list-style: none; }
.lift-card li { padding: 9px 0; border-bottom: 1px solid var(--line); color: var(--slate); font-size: .75rem; }
.lift-card li:before { content: '✓'; margin-right: 10px; color: var(--gold-dark); font-weight: 700; }
.platform li { border-color: var(--line); color: var(--slate); }
.platform li:before { color: var(--gold-dark); }
.lift-card .text-link { align-self: flex-start; margin-top: auto; }
.lift-delivery { margin-top: 16px; padding: 18px 24px; border-radius: 13px; display: grid; grid-template-columns: repeat(4,1fr); background: var(--teal-ink); color: white; }
.lift-delivery span { padding: 4px 20px; border-left: 1px solid rgba(255,255,255,.14); font-size: .7rem; }
.lift-delivery span:first-child { border-left: 0; padding-left: 0; }
.lift-delivery b { margin-right: 8px; color: var(--gold); font: 400 .8rem Garamond,Georgia,serif; }
.process-heading { display: grid; grid-template-columns: 1fr .7fr; gap: 70px; align-items: end; }
.process-heading h2 { margin-bottom: 0; }
.timing-card { padding: 24px; border-left: 3px solid var(--gold); background: var(--mist); }
.timing-card strong { color: var(--teal); font-size: .83rem; }
.timing-card p { margin: 8px 0 0; color: var(--slate); font-size: .76rem; line-height: 1.6; }
.step-grid.modification-steps { grid-template-columns: repeat(3,1fr); }

.equipment-terms { padding: 82px 0 88px; background: linear-gradient(135deg,#f9fbfc,var(--mist)); }
.terms-heading { display: grid; grid-template-columns: 1fr .65fr; gap: 70px; align-items: end; margin-bottom: 28px; }
.terms-heading h2 { margin: 5px 0 0; font-size: clamp(2.3rem,3.8vw,3.8rem); }
.terms-heading > p { margin: 0; color: var(--slate); line-height: 1.75; }
.equipment-terms .terms-heading { display: block; max-width: 900px; margin-bottom: 40px; }
.equipment-terms .terms-heading h2 { margin: 7px 0 17px; }
.equipment-terms .terms-heading > p:last-child { max-width: 790px; font-size: .95rem; }
.equipment-terms .terms-heading > p.terms-intro { max-width: 860px; }
.terms-intro span { display: block; text-wrap: pretty; }
.terms-intro span + span { margin-top: 3px; }
.terms-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.term-card { min-height: 292px; padding: 27px 28px 25px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 16px; display: flex; flex-direction: column; background: white; box-shadow: 0 13px 35px rgba(16,69,85,.065); transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.term-card:hover { transform: translateY(-3px); border-color: rgba(27,94,110,.3); border-top-color: var(--gold); box-shadow: 0 18px 42px rgba(16,69,85,.11); }
.term-card-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.term-icon { width: 54px; height: 54px; flex: 0 0 54px; display: grid; place-items: center; border: 1px solid rgba(27,94,110,.18); border-radius: 50%; background: var(--mist); color: var(--teal); font: 700 1.45rem Garamond,Georgia,serif; }
.term-icon-gear { font-family: Arial,sans-serif; font-size: 1.25rem; }
.term-card-top small { color: var(--gold-dark); font-size: .59rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.term-card h3 { margin: 25px 0 10px; color: var(--teal-ink); font-size: 1.28rem; }
.term-card > p { margin: 0 0 22px; color: var(--slate); font-size: .76rem; line-height: 1.62; }
.term-card > a { margin-top: auto; display: flex; justify-content: space-between; align-items: center; padding-top: 16px; border-top: 1px solid var(--line); color: var(--teal); font-size: .72rem; font-weight: 700; }
.term-card > a span { color: var(--gold-dark); font-size: 1rem; transition: transform .2s ease; }
.term-card > a:hover span { transform: translateX(4px); }
.term-card-funding { border-color: var(--line); border-top-color: var(--gold); background: white; }
.term-card-funding:hover { border-color: rgba(27,94,110,.3); border-top-color: var(--gold); }
.term-card-funding .term-icon { border-color: rgba(27,94,110,.18); background: var(--mist); color: var(--teal); }
.term-card-funding .term-card-top small { color: var(--gold-dark); }
.term-card-funding h3 { color: var(--teal-ink); }
.term-card-funding > p { color: var(--slate); }
.funding-options { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 19px; }
.funding-options span { padding: 6px 9px; border: 1px solid var(--line); border-radius: 100px; background: var(--mist); color: var(--teal); font-size: .59rem; }
.term-card-funding > a { border-color: var(--line); color: var(--teal); }
.term-card-funding > a span { color: var(--gold-dark); }

.binder-section { padding: 74px 0 110px; background: #f9fbfc; }
.catalog-source-note { margin-bottom: 14px; padding: 14px 18px; border-left: 3px solid var(--gold); background: white; display: flex; justify-content: space-between; align-items: center; gap: 25px; color: var(--slate); font-size: .72rem; }
.catalog-source-note p { margin: 0; }
.catalog-source-note strong { color: var(--teal); font-size: .9rem; }
.catalog-source-note span { text-align: right; }
.catalog-search-bar { padding: 20px; margin-bottom: 22px; border: 1px solid var(--line); border-radius: 15px; background: white; display: grid; grid-template-columns: 1fr auto; gap: 12px; }
.catalog-search-bar label { position: relative; }
.catalog-search-bar input { width: 100%; height: 52px; padding: 0 50px 0 16px; border: 1px solid var(--line); border-radius: 9px; outline: none; }
.catalog-search-bar input:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(27,94,110,.09); }
.catalog-search-bar label span { position: absolute; right: 17px; top: 13px; color: var(--teal); font-size: 1.2rem; }
.binder { display: grid; grid-template-columns: 288px 1fr; align-items: start; }
.binder-tabs { position: sticky; top: 104px; z-index: 2; padding-top: 16px; display: flex; flex-direction: column; align-items: stretch; }
.binder-tab { min-height: 57px; margin-right: -1px; padding: 10px 18px; border: 1px solid var(--line); border-right: 0; border-radius: 12px 0 0 12px; background: #e7f1f3; color: var(--teal); text-align: left; font-size: .76rem; font-weight: 700; cursor: pointer; transition: .2s; }
.binder-tab + .binder-tab { margin-top: 5px; }
.binder-tab span { display: block; color: var(--slate); font-size: .64rem; font-weight: 400; margin-top: 2px; }
.binder-tab.active { position: relative; z-index: 2; background: white; color: var(--teal-ink); border-color: var(--gold); box-shadow: -8px 8px 20px rgba(16,69,85,.07); }
.binder-tab.active:after { content: ''; position: absolute; right: -2px; top: 0; bottom: 0; width: 3px; background: white; }
.binder-panel { min-height: 720px; padding: 42px; border: 1px solid var(--gold); border-radius: 0 18px 18px 18px; background: white; box-shadow: var(--shadow); }
.binder-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 35px; padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.binder-panel-head h2 { margin: 5px 0 10px; font-size: clamp(2rem,3vw,3rem); }
.binder-panel-head p { max-width: 650px; margin: 0; color: var(--slate); }
.folder-index { flex: 0 0 auto; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: var(--teal); color: white; font: 400 1.2rem Garamond,serif; }
.subcategory-block { padding: 25px 0; }
.subcategory-block > p { margin-bottom: 11px; color: var(--gold-dark); font-size: .67rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.subcategory-list { display: flex; flex-wrap: wrap; gap: 8px; }
.subcategory-list button { padding: 9px 13px; border: 1px solid var(--line); border-radius: 8px; background: var(--mist); color: var(--teal); font-size: .72rem; cursor: pointer; }
.subcategory-list button:hover, .subcategory-list button.active { background: var(--teal); color: white; border-color: var(--teal); }
.result-summary { display: flex; justify-content: space-between; gap: 20px; padding: 18px 0; border-top: 1px solid var(--line); color: var(--slate); font-size: .76rem; }
.result-summary p { margin: 0; }
.result-summary strong { color: var(--teal); }
.binder-products { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.binder-product { min-height: 238px; border: 1px solid var(--line); border-radius: 13px; overflow: hidden; display: grid; grid-template-columns: 120px 1fr; background: white; transition: .2s; }
.binder-product:hover { border-color: var(--gold); box-shadow: 0 10px 25px rgba(16,69,85,.08); }
.product-thumb { padding: 14px; background: linear-gradient(145deg,var(--mist),#dcebef); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; }
.product-thumb.has-image { padding: 9px; background: white; }
.product-thumb.has-image img { width: 100%; height: 100%; min-height: 185px; object-fit: contain; }
.product-thumb.has-image b, .product-thumb.has-image small { display: none; }
.product-thumb.has-image.image-failed img { display: none; }
.product-thumb.has-image.image-failed b { display: grid; }
.product-thumb.has-image.image-failed small { display: block; }
.product-thumb b { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 18px 18px 18px 5px; background: var(--teal); color: white; font: 400 1rem Garamond,serif; }
.product-thumb small { color: var(--slate); font-size: .55rem; text-transform: uppercase; }
.binder-product-body { padding: 18px; display: flex; flex-direction: column; }
.product-identity { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.product-identity span { color: var(--gold-dark); font-size: .64rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.product-identity small { color: var(--slate); font-size: .58rem; font-weight: 700; letter-spacing: .055em; white-space: nowrap; }
.binder-product h3 { margin: 6px 0 9px; color: var(--teal); font: 700 1rem Arial,sans-serif; line-height: 1.3; }
.binder-product p { color: var(--slate); font-size: .72rem; line-height: 1.5; }
.binder-product button { margin-top: auto; padding: 12px 0 0; border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--teal); font-size: .72rem; font-weight: 700; text-align: left; cursor: pointer; }
.binder-product[data-product-detail] { cursor: pointer; }
.binder-product[data-product-detail]:hover .binder-product-body > button { color: var(--gold-dark); }
.binder-product-body > button:focus-visible { outline: 2px solid var(--teal); outline-offset: 5px; }

.product-dialog { width: min(1040px,calc(100% - 32px)); max-width: 1040px; max-height: calc(100vh - 32px); padding: 0; border: 0; border-radius: 22px; overflow: auto; background: white; color: var(--charcoal); box-shadow: 0 28px 80px rgba(7,43,54,.34); }
.product-dialog::backdrop { background: rgba(7,43,54,.72); backdrop-filter: blur(4px); }
.product-dialog-shell { position: relative; min-height: 640px; display: grid; grid-template-columns: minmax(310px,.78fr) minmax(0,1.22fr); }
.product-dialog-close { position: absolute; z-index: 2; top: 17px; right: 17px; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: rgba(255,255,255,.94); color: var(--teal); font: 400 1.7rem/1 Arial,sans-serif; cursor: pointer; box-shadow: 0 6px 18px rgba(16,69,85,.1); }
.product-dialog-close:hover, .product-dialog-close:focus-visible { background: var(--teal); color: white; outline: 0; }
.product-dialog-media { min-height: 100%; padding: 38px; display: grid; place-items: center; background: linear-gradient(145deg,#eef5f6,#dcebed); }
.product-dialog-media img { width: 100%; max-height: 520px; object-fit: contain; mix-blend-mode: multiply; }
.product-dialog-placeholder { display: grid; place-items: center; gap: 18px; text-align: center; color: var(--slate); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.product-dialog-placeholder b { width: 112px; height: 112px; display: grid; place-items: center; border-radius: 38px 38px 38px 10px; background: var(--teal); color: white; font: 400 2rem Garamond,Georgia,serif; box-shadow: 0 16px 34px rgba(16,69,85,.18); }
.product-dialog-content { padding: 50px 54px 42px; }
.product-dialog-content h2 { margin: 7px 50px 14px 0; color: var(--teal); font-size: clamp(2rem,3.5vw,3.2rem); line-height: 1.04; }
.product-dialog-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; }
.product-dialog-tags span { padding: 7px 11px; border: 1px solid var(--line); border-radius: 100px; color: var(--teal); background: var(--mist); font-size: .64rem; font-weight: 700; letter-spacing: .055em; text-transform: uppercase; }
.product-dialog-section { padding: 22px 0; border-top: 1px solid var(--line); }
.product-dialog-section h3 { margin: 0 0 12px; color: var(--teal); font: 700 .72rem Arial,sans-serif; letter-spacing: .09em; text-transform: uppercase; }
.product-dialog-section p { margin: 0; color: var(--slate); line-height: 1.72; }
.product-spec-grid { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.product-spec-grid > div { min-height: 72px; padding: 13px 15px; border-radius: 9px; background: var(--mist); }
.product-spec-grid dt { color: var(--slate); font-size: .59rem; font-weight: 700; letter-spacing: .075em; text-transform: uppercase; }
.product-spec-grid dd { margin: 6px 0 0; color: var(--teal-ink); font-size: .78rem; font-weight: 700; line-height: 1.35; }
.product-feature-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 9px; }
.product-feature-list li { position: relative; padding-left: 21px; color: var(--slate); font-size: .78rem; line-height: 1.55; }
.product-feature-list li:before { content: ''; position: absolute; left: 0; top: .55em; width: 7px; height: 7px; border-radius: 50%; background: var(--gold); }
.product-dialog-note { margin: 2px 0 24px; padding: 14px 16px; border-left: 3px solid var(--gold); background: #fbfaf5; color: var(--slate); font-size: .67rem; line-height: 1.55; }
.product-dialog-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.product-dialog-actions .button { min-height: 47px; }
.product-dialog-actions .secondary-button { border: 1px solid var(--line); background: white; color: var(--teal); }
.product-dialog-actions .secondary-button:hover { border-color: var(--teal); background: var(--mist); box-shadow: none; }
.load-more { display: flex; justify-content: center; margin-top: 26px; }
.no-products { padding: 55px 25px; background: var(--mist); border-radius: 12px; text-align: center; }
.no-products h3 { margin-bottom: 8px; }
.no-products p { color: var(--slate); }

.choice-section { padding: 95px 0; }
.choice-heading { max-width: 760px; margin-bottom: 40px; }
.modification-choice-heading { max-width: none; }
.modification-choice-heading h2 { margin: 7px 0 14px; font-size: clamp(2.35rem,4vw,4rem); white-space: nowrap; }
.ot-choice-heading { max-width: none; }
.ot-choice-heading h2 { margin: 7px 0 14px; font-size: clamp(2.35rem,4.1vw,4.25rem); white-space: nowrap; }
.choice-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.ot-referral-choice-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.modification-choice-grid { grid-template-columns: repeat(3,1fr); }
.choice-card { min-height: 330px; padding: 30px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 17px; background: linear-gradient(145deg,#fff,#f3f8f9); display: flex; flex-direction: column; box-shadow: 0 12px 30px rgba(16,69,85,.065); transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.choice-card:hover { transform: translateY(-3px); border-color: rgba(27,94,110,.28); border-top-color: var(--gold); box-shadow: 0 17px 38px rgba(16,69,85,.11); }
.choice-card:nth-child(2), .choice-card.lift-choice { border: 1px solid var(--line); border-top: 3px solid var(--gold); background: linear-gradient(145deg,#fff,#f3f8f9); color: inherit; }
.choice-card:nth-child(2) h3, .choice-card:nth-child(2) .text-link { color: var(--teal); }
.choice-card > span { color: var(--gold-dark); font: 400 1rem Garamond,serif; }
.choice-card h3 { margin: auto 0 14px; font-size: 1.8rem; }
.choice-card p { color: var(--slate); font-size: .88rem; }
.choice-card:nth-child(2) p { color: var(--slate); }
.modification-choice-grid .choice-card h3 { margin: 34px 0 18px; }
.choice-points { margin: 0 0 28px; padding: 0; list-style: none; }
.choice-points li { padding: 8px 0; border-bottom: 1px solid var(--line); color: var(--slate); font-size: .75rem; }
.choice-points li:before { content: '✓'; margin-right: 9px; color: var(--gold-dark); font-weight: 700; }
.modification-choice-grid .text-link { margin-top: auto; }
.choice-guidance { margin-top: 16px; padding: 24px 27px; border-radius: 14px; display: grid; grid-template-columns: .9fr 1.25fr auto; gap: 30px; align-items: center; background: var(--teal-ink); color: white; }
.choice-guidance > div { display: flex; flex-direction: column; }
.choice-guidance > div span { color: var(--gold); font-size: .61rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.choice-guidance > div strong { margin-top: 5px; font-size: .86rem; }
.choice-guidance p { margin: 0; color: rgba(255,255,255,.68); font-size: .74rem; line-height: 1.6; }
.choice-guidance .button { white-space: nowrap; background: white; color: var(--teal); }
.service-detail { padding: 95px 0; background: var(--mist); }
.service-detail-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; }
.service-intro { position: sticky; top: 120px; align-self: start; }
.service-intro h2 { margin: 7px 0 22px; font-size: clamp(2.55rem,4vw,4.2rem); }
.service-lead { max-width: 470px; margin: 0 0 28px; color: var(--slate); font-size: .98rem; line-height: 1.75; }
.service-promises { max-width: 470px; margin: 0 0 27px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.service-promises li { position: relative; padding: 12px 8px 12px 24px; border-bottom: 1px solid var(--line); color: var(--teal-ink); font-size: .75rem; font-weight: 700; }
.service-promises li:before { content: '✓'; position: absolute; left: 0; color: var(--gold-dark); }
.service-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.service-list article { min-height: 190px; padding: 24px; background: white; border-radius: 12px; }
.service-list article span { color: var(--gold-dark); font: 400 .9rem Garamond,serif; }
.service-list h3 { margin: 45px 0 8px; font: 700 1rem Arial,sans-serif; }
.service-list p { margin: 0; color: var(--slate); font-size: .78rem; }
.step-section { padding: 95px 0; }
.step-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; margin-top: 40px; }
.step-grid article { padding: 24px 0; border-top: 2px solid var(--gold); }
.step-grid span { color: var(--gold-dark); }
.step-grid h3 { margin: 30px 0 9px; font: 700 1.05rem Arial,sans-serif; }
.step-grid p { color: var(--slate); font-size: .8rem; }

.form-section { padding: 95px 0; background: var(--teal); color: white; }
.form-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.form-grid h2 { color: white; }
.form-grid > div > p { color: rgba(255,255,255,.7); }
.site-form { padding: 32px; border-radius: 18px; background: white; color: var(--charcoal); display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.site-form label { display: block; }
.site-form label.full, .site-form button, .site-form small { grid-column: 1 / -1; }
.site-form label span { display: block; margin-bottom: 7px; color: var(--teal); font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.site-form input, .site-form select, .site-form textarea { width: 100%; padding: 13px; border: 1px solid var(--line); border-radius: 8px; outline: none; }
.site-form input:focus, .site-form select:focus, .site-form textarea:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(27,94,110,.08); }
.site-form small { color: var(--slate); text-align: center; }

.support-options { padding: 95px 0; background: linear-gradient(180deg,#fff 0%,#f5f9fa 100%); }
.support-options-heading { max-width: 900px; }
.support-options-heading h2 { margin: 7px 0 14px; }
.support-options-heading > p:last-child { max-width: 720px; margin: 0; color: var(--slate); font-size: .94rem; line-height: 1.7; }
.support-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.support-card { min-height: 390px; padding: 31px 33px 29px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: 17px; display: flex; flex-direction: column; background: rgba(255,255,255,.94); box-shadow: 0 12px 30px rgba(16,69,85,.065); transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.support-card:hover { transform: translateY(-3px); border-color: rgba(27,94,110,.28); border-top-color: var(--gold); box-shadow: 0 18px 40px rgba(16,69,85,.11); }
.support-card-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.support-card-top small { color: var(--gold-dark); font-size: .64rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.support-icon { width: 54px; height: 54px; flex: 0 0 54px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(145deg,var(--teal),var(--teal-ink)); color: white; box-shadow: 0 9px 22px rgba(16,69,85,.18); font: 400 1.65rem Garamond,serif; }
.support-card h3 { margin: 29px 0 11px; color: var(--teal-ink); font: 700 1.25rem Arial,sans-serif; }
.support-card p { max-width: 620px; margin: 0 0 19px; color: var(--slate); font-size: .84rem; line-height: 1.65; }
.support-card ul { margin: 0 0 28px; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.support-card li { position: relative; padding: 9px 0 9px 20px; border-bottom: 1px solid var(--line); color: var(--slate); font-size: .73rem; }
.support-card li:before { content: '✓'; position: absolute; left: 0; color: var(--gold-dark); font-weight: 700; }
.support-card b { margin-top: auto; color: var(--teal); font-size: .73rem; letter-spacing: .015em; }

.site-footer { position: relative; padding: 62px 0 22px; border-top: 0; background: radial-gradient(circle at 7% 5%,rgba(142,198,210,.13),transparent 28%),linear-gradient(135deg,#0d3d4a,#092f3a); color: white; }
.site-footer:before { content: ''; position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg,var(--gold),var(--sky),transparent 72%); }
.footer-main { display: grid; grid-template-columns: minmax(390px,1.65fr) .78fr .95fr; gap: 78px; align-items: stretch; padding-bottom: 34px; }
.footer-lockup { display: inline-flex; align-items: center; gap: 15px; }
.footer-lockup img { width: 68px; height: 68px; flex: 0 0 68px; padding: 4px; border-radius: 50%; object-fit: cover; background: rgba(255,255,255,.96); box-shadow: 0 0 0 5px rgba(142,198,210,.09),0 12px 28px rgba(0,0,0,.16); }
.footer-lockup > span { display: flex; flex-direction: column; }
.footer-lockup strong { color: white; font: 700 1.42rem Arial,sans-serif; letter-spacing: .1em; line-height: 1; }
.footer-lockup em { color: var(--gold); font: italic 400 1.2rem Garamond,Georgia,serif; letter-spacing: 0; }
.footer-lockup small { margin-top: 8px; color: var(--sky); font-size: .59rem; line-height: 1.45; letter-spacing: .06em; text-transform: uppercase; }
.footer-brand { max-width: 500px; display: flex; flex-direction: column; align-items: flex-start; }
.footer-brand > p { max-width: 480px; margin: 22px 0 19px; color: rgba(255,255,255,.64); font-size: .76rem; line-height: 1.65; }
.footer-main h3 { color: var(--gold); font: 700 .68rem Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.footer-main a, .footer-main span { color: rgba(255,255,255,.7); }
.footer-main a:hover { color: white; }
.footer-contact-inline { display: flex; flex-wrap: wrap; gap: 8px 26px; }
.footer-contact-inline a { display: flex; align-items: baseline; gap: 8px; color: rgba(255,255,255,.9); }
.footer-contact-inline small { color: var(--gold); font-size: .52rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.footer-contact-inline strong { color: inherit; font: 600 .74rem Arial,sans-serif; }
.footer-main .footer-link-group { min-height: 0; padding: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 0; border: 0; border-radius: 0; background: transparent; }
.footer-link-group h3 { width: 100%; margin: 0 0 12px; padding: 0; border: 0; }
.footer-link-group a { position: relative; width: 100%; padding: 7px 18px 7px 0; border: 0; color: rgba(255,255,255,.7); font-size: .78rem; line-height: 1.35; }
.footer-link-group a:after { content: '→'; position: absolute; right: 1px; color: var(--gold); transition: transform .2s ease; }
.footer-link-group a:hover:after { transform: translateX(3px); }
.footer-column-meta { width: 100%; margin-top: auto; padding-top: 20px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.footer-column-meta small { color: var(--gold); font-size: .52rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.footer-column-meta span { max-width: 440px; color: rgba(255,255,255,.74); font-size: .69rem; line-height: 1.55; }
.footer-column-meta em { color: var(--sky); font: normal 600 .62rem Arial,sans-serif; letter-spacing: .035em; }
.footer-service-area strong { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; color: white; font: 700 .76rem Arial,sans-serif; }
.footer-service-area strong em { color: var(--sky); font-size: .59rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.footer-service-area > span { color: rgba(255,255,255,.62); }
.footer-brand .footer-column-meta { margin-top: 19px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.43); font-size: .68rem; }
.contact-details { margin-top: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-details > * { min-height: 92px; padding: 17px 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 10px; display: flex; flex-direction: column; gap: 7px; color: white; }
.contact-details small { color: var(--gold); font: 700 .62rem Arial,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.contact-details strong { font: 500 .83rem Arial,sans-serif; line-height: 1.5; }
.contact-details a:hover { border-color: var(--gold); }
.toast { position: fixed; z-index: 60; right: 20px; bottom: 20px; max-width: 370px; padding: 17px 21px; border-radius: 9px; background: var(--teal-ink); color: white; box-shadow: var(--shadow); opacity: 0; transform: translateY(140%); transition: .3s; }
.toast.show { opacity: 1; transform: none; }
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s, transform .6s; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1060px) {
  .main-nav { gap: 17px; }
  .nav-button { display: none; }
  .entry-grid { grid-template-columns: 1fr 1fr; }
  .entry-card { min-height: 135px; }
  .guided-hero { min-height: auto; }
  .binder { grid-template-columns: 230px 1fr; }
  .binder-products { grid-template-columns: 1fr; }
  .support-grid { grid-template-columns: 1fr 1fr; }
  .split-hero-shell { grid-template-columns: minmax(0,.92fr) minmax(400px,1.08fr); gap: 32px; }
  .footer-main { gap: 42px; }
  .terms-grid { grid-template-columns: repeat(3,1fr); }
  .credential-grid { grid-template-columns: 1fr 1fr; }
  .credential-badge:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
  .credential-badge:nth-child(4) { border-top: 1px solid var(--line); }
  .choice-grid { grid-template-columns: 1fr 1fr; }
  .modification-choice-grid .choice-card:nth-child(3) { grid-column: 1 / -1; }
  .modification-offer-grid { grid-template-columns: 1fr 1fr; }
  .modification-offer article:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .modification-offer article:nth-child(4) { border-top: 1px solid rgba(255,255,255,.18); }
}

@media (max-width: 780px) {
  .container { width: min(calc(100% - 32px), var(--container)); }
  .site-header { height: 70px; }
  .wordmark { width: 205px; height: 50px; flex-basis: 205px; }
  .menu-button { width: 42px; height: 42px; border: 0; border-radius: 50%; background: var(--teal); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; }
  .menu-button i { width: 17px; height: 1px; background: white; transition: .2s; }
  .menu-button[aria-expanded="true"] i:first-of-type { transform: translateY(3.5px) rotate(45deg); }
  .menu-button[aria-expanded="true"] i:last-of-type { transform: translateY(-3.5px) rotate(-45deg); }
  .main-nav { display: none; position: absolute; left: 16px; right: 16px; top: 70px; padding: 20px; border-radius: 13px; background: white; box-shadow: var(--shadow); flex-direction: column; align-items: stretch; }
  .main-nav.open { display: flex; }
  .main-nav a { padding: 7px 0; }
  .guided-hero { padding: 110px 0 25px; }
  .guided-hero-media { object-position: 68% center; }
  .guided-hero-overlay { background: linear-gradient(180deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.88) 56%,rgba(255,255,255,.2) 100%); }
  .hero-message { padding-bottom: 50px; }
  .hero-message h1 { font-size: clamp(3rem,14vw,4.6rem); }
  .entry-launcher { padding: 16px; }
  .entry-launcher-head { align-items: flex-start; flex-direction: column; gap: 6px; }
  .entry-grid { grid-template-columns: 1fr; }
  .entry-card { min-height: 116px; }
  .confidence-bar .container { flex-wrap: wrap; justify-content: flex-start; }
  .confidence-bar span { width: calc(50% - 12px); }
  .simple-help-inner { align-items: flex-start; flex-direction: column; gap: 26px; }
  .simple-help div:last-child { flex: auto; }
  .credential-shell, .terms-heading, .process-heading, .project-heading, .lift-heading { grid-template-columns: 1fr; gap: 32px; }
  .modification-offer-head { grid-template-columns: 1fr; gap: 20px; }
  .modification-offer-head h2 { white-space: normal; text-wrap: balance; }
  .page-hero { padding: 120px 0 58px; }
  .page-hero-grid, .form-grid, .service-detail-grid { grid-template-columns: 1fr; gap: 38px; }
  .ot-choice-heading h2 { white-space: normal; text-wrap: balance; }
  .modification-choice-heading h2 { white-space: normal; text-wrap: balance; }
  .split-page-hero { padding: 105px 0 45px; }
  .split-hero-shell { min-height: 0; grid-template-columns: 1fr; gap: 30px; }
  .split-hero-content { padding: 0; }
  .split-hero-content .breadcrumb { margin-bottom: 30px; }
  .split-hero-content .eyebrow { margin-top: 0; }
  .split-page-hero h1 { max-width: 720px; }
  .split-hero-visual { min-height: 0; height: clamp(440px,72vw,620px); border-radius: 19px; }
  .support-split-hero .split-hero-visual img { object-position: 71% center; }
  .terms-grid { grid-template-columns: 1fr 1fr; }
  .catalog-search-bar { grid-template-columns: 1fr; }
  .catalog-source-note { align-items: flex-start; flex-direction: column; gap: 5px; }
  .catalog-source-note span { text-align: left; }
  .binder { display: block; }
  .binder-tabs { position: static; padding: 0 0 13px; flex-direction: row; overflow-x: auto; }
  .binder-tab { flex: 0 0 190px; border: 1px solid var(--line); border-radius: 11px 11px 0 0; margin: 0 -1px 0 0; }
  .binder-tab + .binder-tab { margin-top: 0; }
  .binder-tab.active:after { right: 0; left: 0; top: auto; bottom: -2px; width: auto; height: 3px; }
  .binder-panel { min-height: auto; padding: 25px 19px; border-radius: 0 12px 12px 12px; }
  .binder-panel-head { align-items: flex-start; flex-direction: column-reverse; gap: 15px; }
  .binder-product { grid-template-columns: 95px 1fr; }
  .product-dialog-shell { grid-template-columns: 1fr; }
  .product-dialog-media { min-height: 245px; padding: 28px 72px; }
  .product-dialog-media img { max-height: 220px; }
  .product-dialog-content { padding: 34px 28px 30px; }
  .product-dialog-content h2 { margin-right: 38px; }
  .choice-grid, .step-grid, .scope-columns { grid-template-columns: 1fr 1fr; }
  .choice-guidance { grid-template-columns: 1fr; gap: 16px; }
  .choice-guidance .button { justify-self: start; }
  .scope-intro-grid { grid-template-columns: 1fr; }
  .scope-intro-grid .choice-heading { min-height: 0; }
  .project-showcase-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 360px 260px; }
  .project-story-featured { grid-column: 1 / -1; grid-row: auto; }
  .lift-delivery { grid-template-columns: 1fr 1fr; }
  .lift-delivery span:nth-child(3) { border-left: 0; }
  .step-grid.modification-steps { grid-template-columns: 1fr 1fr; }
  .choice-card { min-height: 260px; }
  .service-intro { position: static; }
  .support-grid { grid-template-columns: 1fr 1fr; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 30px; }
  .footer-brand { grid-column: 1 / -1; max-width: none; }
  .footer-bottom { flex-direction: column; }
}

@media (max-width: 520px) {
  .entry-grid, .choice-grid, .service-list, .step-grid, .support-grid, .site-form, .lift-grid { grid-template-columns: 1fr; }
  .modification-choice-grid .choice-card:nth-child(3) { grid-column: auto; }
  .confidence-bar span { width: 100%; }
  .page-hero h1 { font-size: 3.25rem; }
  .split-page-hero h1 { font-size: 3.05rem; }
  .split-hero-visual { height: 430px; }
  .split-hero-copy h2 { font-size: 1.75rem; }
  .support-card { min-height: 0; padding: 27px 24px; }
  .binder-product { min-height: 220px; }
  .product-dialog { width: calc(100% - 18px); max-height: calc(100vh - 18px); border-radius: 15px; }
  .product-dialog-media { min-height: 195px; padding: 24px 62px; }
  .product-dialog-content { padding: 29px 20px 24px; }
  .product-dialog-content h2 { font-size: 2rem; }
  .product-spec-grid { grid-template-columns: 1fr; }
  .product-dialog-actions { flex-direction: column; }
  .site-form label, .site-form label.full, .site-form button, .site-form small { grid-column: 1; }
  .footer-main { grid-template-columns: 1fr; }
  .footer-column-meta { margin-top: 20px; }
  .contact-details { grid-template-columns: 1fr; }
  .credential-grid, .terms-grid { grid-template-columns: 1fr; }
  .credential-badge + .credential-badge { border-left: 0; border-top: 1px solid var(--line); }
  .modification-offer-grid, .scope-columns { grid-template-columns: 1fr; }
  .major-showcase { min-height: 270px; }
  .lift-card { min-height: 0; }
  .lift-card-media { height: 245px; flex-basis: 245px; }
  .step-grid.modification-steps { grid-template-columns: 1fr; }
  .project-showcase-grid { grid-template-columns: 1fr; grid-template-rows: 340px repeat(2,260px); }
  .project-story-featured { grid-column: auto; }
  .project-proof-row { grid-template-columns: 1fr; }
  .project-proof-row span, .project-proof-row span:first-child { padding: 10px 0; border-left: 0; }
  .project-proof-row span + span { border-top: 1px solid var(--line); }
  .lift-delivery { grid-template-columns: 1fr; }
  .lift-delivery span, .lift-delivery span:first-child { padding: 10px 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.14); }
  .lift-delivery span:first-child { border-top: 0; }
  .modification-offer article { border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .modification-offer article:first-child { border-top: 0; }
}

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