.home-hero { background: linear-gradient(90deg,#051e36f5 0%,#061f37e8 43%,#041c32a0 100%), url('../images/qrm-technical-header.jpg') center/cover; color: #fff; }
.home-hero-inner { display: grid; grid-template-columns: 1.5fr 1fr; gap: 80px; align-items: center; padding-block: 76px; }
.home-hero h1 { margin: 0 0 22px; max-width: 720px; font-size: clamp(2.5rem,4.8vw,4rem); font-weight: 500; line-height: 1.08; letter-spacing: -.035em; color: #fff; }
.home-hero .lead { margin: 0 0 30px; max-width: 650px; color: #c7dbe9; font-size: 1.125rem; line-height: 1.75; }
.hero-links { padding: 26px; border: 1px solid #82bcdf55; border-radius: 16px; background: #0c2c46e8; }
.hero-links h2 { margin: 0 0 16px; font-size: .875rem; font-weight: 700; color: #acd9f5; letter-spacing: .08em; text-transform: uppercase; }
.hero-links a { display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; padding: 20px 0; border-top: 1px solid #a9c6dc35; color: #fff; text-decoration: none; }
.hero-links a strong { font-size: 1.1rem; font-weight: 700; }
.hero-links a small { font-size: .875rem; color: #c1d8e8; }
.hero-links .qrm-arrow { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #f5a451; }
.hero-links a:hover strong { text-decoration: underline; }
.home-context { background: #e5eef5; border-bottom: 1px solid #cadce9; }
.home-context .qrm-container { display: flex; gap: 28px; justify-content: space-between; padding-block: 18px; color: #284a62; font-size: .875rem; }
.home-section { padding-block: 72px 4px; }
.home-section-heading { display: flex; gap: 48px; align-items: end; justify-content: space-between; margin-bottom: 30px; }
.home-section-heading h2 { margin: 0; color: var(--qrm-navy); font-size: clamp(1.8rem,3.5vw,2.4rem); line-height: 1.18; letter-spacing: -.025em; }
.home-section-heading > p { margin: 0; max-width: 400px; color: var(--qrm-muted); }
.home-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.home-card { padding: 28px; border: 1px solid var(--qrm-border); border-radius: 12px; background: #fff; display: flex; flex-direction: column; box-shadow: 0 3px 18px #08294306; }
.home-card .service-index { font-size: .75rem; color: #6a879e; letter-spacing: .12em; }
.home-card h3 { margin: 16px 0 12px; font-size: 1.4rem; color: var(--qrm-navy); line-height: 1.2; }
.home-card p { color: var(--qrm-muted); margin: 0 0 24px; }
.home-card a { margin-top: auto; font-weight: 700; text-decoration: none; }
.home-card a:hover { text-decoration: underline; }
.home-card.featured { border-top: 3px solid var(--qrm-blue); padding-top: 26px; }
.home-process { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; margin: 0; padding: 0; list-style: none; }
.home-process li { padding: 22px; border-left: 1px solid #ccdce7; }
.home-process li:first-child { border-left: 0; padding-left: 0; }
.home-process .step { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 16px; border: 1px solid #a8c6dc; border-radius: 50%; color: var(--qrm-blue); background: #eaf2f9; font-size: .875rem; }
.home-process h3 { margin: 0 0 10px; color: var(--qrm-navy); font-size: 1.1rem; }
.home-process p { margin: 0; color: var(--qrm-muted); font-size: .9375rem; }
.home-support { display: grid; grid-template-columns: 150px 1fr auto; gap: 30px; align-items: center; border: 1px solid #cbdeed; border-radius: 16px; padding: 32px 40px 0; background: #e6f1fa; margin-top: 60px; }
.home-support img { height: 190px; width: 140px; object-fit: contain; align-self: end; }
.home-support h2 { color: var(--qrm-navy); margin: 0 0 12px; font-size: 1.8rem; line-height: 1.15; }
.home-support p { margin: 0 0 28px; color: #49697f; max-width: 560px; }
.home-support .qrm-button { margin-bottom: 30px; }
.home-faq { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.home-faq details { background: white; border: 1px solid var(--qrm-border); border-radius: 10px; padding: 20px 24px; align-self: start; }
.home-faq summary { font-weight: 700; color: var(--qrm-navy); cursor: pointer; }
.home-faq p { margin: 14px 0 0; color: var(--qrm-muted); }
.portal-entry { max-width: 760px; margin: 16px auto 80px; padding: 38px; background: white; border: 1px solid var(--qrm-border); border-radius: 14px; }
.portal-entry h2 { color: var(--qrm-navy); margin: 0 0 18px; font-size: 1.6rem; }
.portal-entry li { padding-block: 4px; }
.portal-entry ul { margin: 0 0 28px; padding-left: 22px; color: var(--qrm-muted); }
.portal-entry p { color: var(--qrm-muted); }
@media(max-width:960px){ .home-hero-inner { gap: 32px; } .home-support { grid-template-columns:120px 1fr; } .home-support .qrm-button { grid-column: 2; } .home-support img { grid-row: 1 / 3; } }
@media(max-width:760px){ .home-hero-inner { grid-template-columns: 1fr; padding-block: 48px; } .home-context .qrm-container { flex-wrap: wrap; gap: 8px 22px; } .home-section { padding-top: 48px; } .home-section-heading { display: block; } .home-section-heading>p { margin-top: 18px; } .home-services,.home-faq { grid-template-columns:1fr; } .home-process { grid-template-columns:1fr 1fr; gap: 22px 10px; } .home-process li { border: 0; padding: 0 12px 0 0; } .home-support { padding:26px 22px 0; gap:16px; grid-template-columns:80px 1fr; } .home-support img { width:80px; height:130px; } .home-support h2 { font-size:1.5rem; } .portal-entry { padding:24px; } }
@media(max-width:390px){ .home-process { grid-template-columns:1fr; } .qrm-actions .qrm-button { width: 100%; } }

/* Current QRM product and Qboy content */
.home-product-section { padding-top: 64px; }
.home-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.home-product-card { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 24px; align-items: start; padding: 26px; border: 1px solid var(--qrm-border); border-radius: 14px; background: #fff; box-shadow: 0 8px 26px #0829430b; }
.home-product-card-320 { border-top: 4px solid #f28a24; }
.home-product-card-330 { border-top: 4px solid var(--qrm-blue); }
.product-card-copy { min-width: 0; }
.product-label { color: #6a879e; font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.home-product-card h3 { margin: 8px 0 10px; color: var(--qrm-navy); font-size: 1.7rem; line-height: 1.1; }
.home-product-card p { margin: 0 0 14px; color: var(--qrm-muted); }
.home-product-card ul { margin: 0 0 18px; padding-left: 20px; color: var(--qrm-muted); font-size: .92rem; }
.home-product-card li { margin: 5px 0; }
.home-product-card a { font-weight: 700; text-decoration: none; }
.home-product-card a:hover { text-decoration: underline; }
.product-device-art { position: relative; width: 142px; height: 210px; border-radius: 19px 19px 15px 15px; padding: 18px 12px; color: #fff; background: linear-gradient(160deg, #173d5a, #071d31 70%); box-shadow: inset 0 0 0 2px #5c89a7, 0 12px 18px #0829432b; overflow: hidden; }
.product-device-art::after { content: ''; position: absolute; left: 22px; right: 22px; bottom: 14px; height: 24px; border: 2px solid #8ab2c8; border-radius: 5px; opacity: .7; }
.product-device-brand { display: block; color: #dcecf6; font-size: .62rem; font-weight: 700; letter-spacing: .13em; }
.product-device-model { display: block; margin-top: 23px; color: #fff; font-size: 2.4rem; font-weight: 700; letter-spacing: -.06em; }
.product-device-screen { display: inline-block; margin-top: 5px; padding: 5px 6px; border: 1px solid #83d2ec; border-radius: 4px; color: #a9edf3; background: #123f52; font-size: .66rem; font-weight: 700; letter-spacing: .05em; }
.product-device-grip { position: absolute; left: 31px; right: 31px; bottom: -11px; height: 54px; border-radius: 0 0 15px 15px; background: #0a2237; box-shadow: inset 0 3px 0 #4b718a; }
.home-product-card-320 .product-device-art { transform: rotate(-2deg); }
.home-product-card-330 .product-device-art { transform: rotate(2deg); background: linear-gradient(160deg, #0b5cad, #062542 70%); }
.home-calibration-callout { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 24px; padding: 25px 30px; border: 1px solid #c4dbea; border-left: 5px solid var(--qrm-orange); border-radius: 12px; background: #eaf4fb; }
.home-calibration-callout h3 { margin: 0 0 8px; color: var(--qrm-navy); font-size: 1.35rem; }
.home-calibration-callout p { margin: 0; max-width: 760px; color: #49697f; }
.home-calibration-callout .qrm-button { flex: 0 0 auto; }
.qboy-walkthrough { align-items: start; padding: 34px 40px 28px; }
.qboy-walkthrough-copy { min-width: 0; }
.qboy-walkthrough-copy > p:not(.qrm-section-label) { margin-bottom: 18px; }
.qboy-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 26px; margin: 0 0 22px; padding-left: 20px; color: #49697f; }
.qboy-steps li { padding-left: 4px; }
.qboy-steps strong { color: var(--qrm-navy); }
.qboy-walkthrough .qrm-actions { margin-bottom: 3px; }
.home-support-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
@media(max-width:1050px){ .home-product-card { grid-template-columns: 120px minmax(0,1fr); gap: 18px; padding: 22px; } .product-device-art { width: 116px; height: 182px; } .product-device-model { font-size: 2rem; } }
@media(max-width:960px){ .home-products { grid-template-columns: 1fr; } .home-calibration-callout { align-items: flex-start; flex-direction: column; } .home-calibration-callout .qrm-button { width: auto; } }
@media(max-width:760px){ .home-product-section { padding-top: 48px; } .home-product-card { grid-template-columns: 100px minmax(0,1fr); gap: 15px; padding: 18px; } .product-device-art { width: 96px; height: 160px; padding: 13px 9px; } .product-device-model { margin-top: 18px; font-size: 1.7rem; } .product-device-screen { font-size: .56rem; } .product-device-grip { left: 19px; right: 19px; } .home-calibration-callout { padding: 22px; } .qboy-walkthrough { padding: 26px 22px 22px; } .qboy-steps { grid-template-columns: 1fr; gap: 7px; } .home-support-links .qrm-button { width: 100%; } }
@media(max-width:430px){ .home-product-card { grid-template-columns: 1fr; } .home-product-card .product-device-art { width: 100px; } }

