.yjo-h05 {
  --h05-ink: #123f38;
  --h05-deep: #082c29;
  --h05-soft: #e8eee8;
  --h05-warm: #f2ede4;
  --h05-paper: #fbfaf6;
  --h05-muted: #66756e;
  --h05-line: rgba(18,63,56,.16);
  --h05-gold: #b89663;
  background: var(--h05-paper);
  color: var(--h05-ink);
  overflow: clip;
  padding-bottom: 0;
}
.yjo-h05 h1,.yjo-h05 h2,.yjo-h05 h3,.yjo-h05 p { max-width: none; }
.yjo-h05 .h05-section { position: relative; }
.yjo-h05 .h05-eyebrow { color: #7a8e83; font-size: 10px; font-weight: 800; letter-spacing: .18em; line-height: 1.4; margin: 0 0 20px; text-transform: uppercase; }
.yjo-h05 .h05-section h2 { color: inherit; font-size: clamp(42px,5.2vw,78px); letter-spacing: -.065em; line-height: .97; margin: 0 0 28px; }
.yjo-h05 .h05-section p { color: var(--h05-muted); font-size: 17px; line-height: 1.55; margin: 0 0 22px; max-width: 34rem; }
.h05-product-nav { position: sticky; top: 70px; z-index: 8; background: rgba(251,250,246,.94); border-bottom: 1px solid var(--h05-line); backdrop-filter: blur(16px); }
.h05-nav-inner { display: flex; align-items: center; gap: 28px; min-height: 60px; max-width: 1440px; margin: auto; padding: 0 40px; }
.h05-nav-name { flex: 0 0 auto; font-size: 12px; font-weight: 800; letter-spacing: .02em; white-space: nowrap; }
.h05-nav-links { display: flex; align-items: center; gap: 22px; min-width: 0; flex: 1; }
.h05-nav-links a { color: #62736a; font-size: 12px; min-height: 60px; display: inline-flex; align-items: center; border-bottom: 2px solid transparent; white-space: nowrap; }
.h05-nav-links a:hover,.h05-nav-links a.is-active { color: var(--h05-ink); text-decoration: none; border-bottom-color: var(--h05-ink); }
.h05-nav-cta { flex: 0 0 auto; border: 1px solid var(--h05-ink); border-radius: 999px; color: #fff; background: var(--h05-ink); padding: 9px 14px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.h05-nav-cta:hover { background: #20584a; text-decoration: none; }
.h05-hero { min-height: min(900px, calc(100vh - 130px)); display: grid; grid-template-columns: .82fr 1.18fr; background: var(--h05-warm); }
.h05-hero-media { min-height: 760px; background: #f7f7f5; overflow: hidden; }
.h05-hero-media picture,.h05-hero-media img { width: 100%; height: 100%; display: block; }
.h05-hero-media img { object-fit: cover; object-position: center; }
.h05-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(56px,8vw,132px) clamp(28px,7vw,120px); }
.h05-hero-copy .h05-eyebrow { color: #6e7d74; }
.h05-hero h1 { color: var(--h05-ink); font-size: clamp(58px,7vw,116px); line-height: .89; letter-spacing: -.08em; margin: 0 0 34px; }
.h05-hero-product { color: var(--h05-ink) !important; font-size: 17px !important; font-weight: 800; margin-bottom: 10px !important; }
.h05-hero-lede { max-width: 320px !important; font-size: 18px !important; }
.h05-method-line { display: flex; flex-wrap: wrap; gap: 8px 18px; max-width: 360px; margin-top: 24px; border-top: 1px solid var(--h05-line); padding-top: 18px; }
.h05-method-line span { color: var(--h05-ink); font-size: 12px; font-weight: 750; }
.h05-scene { min-height: 700px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 8vw; background: #dedbd2; padding: 100px clamp(32px,8vw,140px); }
.h05-scene-copy { max-width: 510px; }
.h05-scene-copy p:last-child { max-width: 340px; }
.h05-media-frame { overflow: hidden; background: #e9e9e2; }
.h05-media-frame img { display: block; width: 100%; height: 100%; object-fit: cover; }
.h05-scene-media { height: min(610px, 58vw); border-radius: 0 0 140px 0; background: #f3f3ef; }
.h05-scene-media img { object-fit: contain; }
.h05-access { padding: 130px clamp(28px,8vw,140px) 150px; background: #f7f4ed; }
.h05-section-intro { max-width: 1120px; margin: 0 auto 48px; }
.h05-section-intro > p:last-child { max-width: 440px; }
.h05-access-stage { position: relative; display: grid; grid-template-columns: minmax(0,1.3fr) minmax(260px,.7fr); align-items: center; max-width: 1200px; min-height: 600px; margin: auto; overflow: hidden; background: #edeae1; }
.h05-access-stage > img { width: 100%; height: 100%; min-height: 600px; display: block; object-fit: cover; object-position: center; }
.h05-access-list { display: grid; gap: 0; padding: 24px 36px; }
.h05-access-list div { display: grid; grid-template-columns: 35px 1fr; gap: 10px; align-items: center; border-bottom: 1px solid var(--h05-line); padding: 20px 0; }
.h05-access-list b { color: var(--h05-gold); font-size: 12px; }
.h05-access-list span { font-size: 16px; font-weight: 800; }
.h05-dark { color: #f6f3ec; background: var(--h05-deep); }
.h05-dark .h05-eyebrow { color: #91b3a5; }
.h05-dark p { color: #bdcdc4; }
.h05-interaction { display: grid; grid-template-columns: 1.2fr .8fr; align-items: stretch; min-height: 780px; }
.h05-interaction-media { min-height: 780px; overflow: hidden; background: #dcd9cf; }
.h05-interaction-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center bottom; }
.h05-interaction-copy { align-self: center; padding: 90px clamp(30px,8vw,140px) 90px 70px; }
.h05-interaction-copy h2 { font-size: clamp(54px,7vw,110px) !important; }
.h05-proof-label { display: inline-block; max-width: 230px; border-left: 1px solid #91b3a5; padding-left: 14px; color: #91b3a5; font-size: 11px; line-height: 1.4; }
.h05-passcode { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 7vw; background: var(--h05-paper); padding: 120px clamp(30px,8vw,140px); }
.h05-passcode-copy { max-width: 470px; justify-self: end; }
.h05-passcode-visual { height: min(600px, 50vw); width: min(700px, 100%); border-radius: 50% 0 50% 0; }
.h05-passcode-visual img { object-position: center; object-fit: cover; }
.h05-control { background: #e6ece5; padding: 110px clamp(28px,8vw,140px); }
.h05-control-media { max-width: 1320px; height: min(540px, 41vw); margin: auto; border-radius: 2px; }
.h05-control-media img { object-position: center; }
.h05-control-copy { max-width: 1320px; margin: 36px auto 0; display: flex; justify-content: space-between; align-items: end; gap: 36px; }
.h05-control-copy h2 { font-size: clamp(40px,5vw,72px) !important; margin-bottom: 0 !important; }
.h05-control-rail { display: grid; gap: 9px; min-width: 260px; border-left: 1px solid var(--h05-line); padding-left: 20px; }
.h05-control-rail span { color: var(--h05-ink); font-size: 12px; font-weight: 780; }
.h05-app { display: grid; grid-template-columns: .75fr 1.25fr; align-items: center; gap: 7vw; min-height: 760px; padding: 110px clamp(28px,8vw,140px); background: #efeae0; }
.h05-app-copy { max-width: 480px; justify-self: end; }
.h05-app-copy h2 { font-size: clamp(52px,6vw,94px) !important; }
.h05-limit { border-left: 1px solid var(--h05-gold); padding-left: 16px; font-size: 14px !important; }
.h05-button { display: inline-flex; align-items: center; gap: 12px; min-height: 46px; padding: 12px 20px; border-radius: 999px; background: var(--h05-ink); color: #fff; font-size: 13px; font-weight: 800; }
.h05-button:hover { background: #20584a; text-decoration: none; }
.h05-app-media { height: min(660px, 55vw); border-radius: 0 160px 0 160px; }
.h05-app-media img { object-fit: cover; object-position: center; }
.h05-gateway { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 8vw; min-height: 620px; padding: 100px clamp(28px,8vw,140px); background: #d9e6dd; }
.h05-gateway-media { height: min(520px, 54vw); max-width: 620px; justify-self: end; border-radius: 50%; }
.h05-gateway-media img { object-fit: cover; }
.h05-gateway-copy { max-width: 460px; }
.h05-light-section { background: var(--h05-paper); }
.h05-fit { padding: 120px clamp(28px,8vw,140px) 140px; }
.h05-fit-layout { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; max-width: 1200px; margin: auto; }
.h05-fit-media { height: min(650px, 53vw); background: #f1eae0; }
.h05-fit-media img { object-fit: contain; }
.h05-fit-table,.h05-spec-grid { margin: 0; }
.h05-fit-table div,.h05-spec-grid div { display: grid; grid-template-columns: minmax(135px,.75fr) 1fr; gap: 18px; border-bottom: 1px solid var(--h05-line); padding: 16px 0; }
.h05-fit-table dt,.h05-spec-grid dt { color: var(--h05-muted); font-size: 12px; font-weight: 800; }
.h05-fit-table dd,.h05-spec-grid dd { color: var(--h05-ink); font-size: 15px; margin: 0; }
.h05-install { display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: 7vw; padding: 120px clamp(28px,8vw,140px); background: #e4ebe4; }
.h05-install-copy { max-width: 470px; justify-self: end; }
.h05-step-line { display: flex; gap: 10px; margin-top: 40px; }
.h05-step-line span { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--h05-ink); border-radius: 50%; font-size: 11px; font-weight: 800; }
.h05-install-media { height: min(650px, 56vw); border-radius: 0 0 0 120px; }
.h05-install-media img { object-position: center bottom; }
.h05-power { display: grid; grid-template-columns: .9fr 1.1fr; gap: 7vw; align-items: center; padding: 120px clamp(28px,8vw,140px); min-height: 600px; }
.h05-power-copy { max-width: 480px; justify-self: end; }
.h05-power-copy h2 { font-size: clamp(52px,6vw,92px) !important; }
.h05-power-grid { display: grid; grid-template-columns: repeat(2, minmax(140px, 1fr)); border-top: 1px solid rgba(255,255,255,.25); border-left: 1px solid rgba(255,255,255,.25); }
.h05-power-grid div { min-height: 150px; display: flex; flex-direction: column; justify-content: center; gap: 9px; padding: 24px; border-right: 1px solid rgba(255,255,255,.25); border-bottom: 1px solid rgba(255,255,255,.25); }
.h05-power-grid strong { color: #f6f3ec; font-size: clamp(24px,3vw,42px); letter-spacing: -.04em; }
.h05-power-grid span { color: #a7bdb2; font-size: 12px; }
.h05-package { display: grid; grid-template-columns: 1.1fr .9fr; gap: 7vw; align-items: center; padding: 120px clamp(28px,8vw,140px); background: #f0e8db; }
.h05-package-media { height: min(650px, 55vw); }
.h05-package-media img { object-fit: cover; }
.h05-package-copy { max-width: 430px; }
.h05-package-copy ul { margin: 0; padding: 0; list-style: none; }
.h05-package-copy li { border-bottom: 1px solid var(--h05-line); padding: 14px 0; color: var(--h05-ink); font-size: 14px; }
.h05-package-copy li::before { content: '—'; color: var(--h05-gold); margin-right: 12px; }
.h05-specs { padding: 120px clamp(28px,8vw,140px); }
.h05-spec-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 70px; max-width: 1200px; margin: 50px auto 0; }
.h05-faq { display: grid; grid-template-columns: .75fr 1.25fr; gap: 7vw; padding: 120px clamp(28px,8vw,140px); background: #e9eee9; }
.h05-faq-list { max-width: 760px; }
.h05-faq-list details { border-top: 1px solid var(--h05-line); padding: 0; }
.h05-faq-list details:last-child { border-bottom: 1px solid var(--h05-line); }
.h05-faq-list summary { cursor: pointer; list-style: none; padding: 21px 40px 21px 0; position: relative; color: var(--h05-ink); font-size: 16px; font-weight: 800; }
.h05-faq-list summary::-webkit-details-marker { display: none; }
.h05-faq-list summary::after { content: '+'; position: absolute; right: 4px; top: 16px; font-size: 24px; font-weight: 400; }
.h05-faq-list details[open] summary::after { content: '−'; }
.h05-faq-list details p { font-size: 14px !important; max-width: 650px !important; padding: 0 40px 20px 0; }
.h05-final { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 720px; background: var(--h05-deep); color: #f6f3ec; }
.h05-final-media { min-height: 720px; background: #f4f3ee; }
.h05-final-media img { object-fit: cover; object-position: center; }
.h05-final-copy { align-self: center; padding: 80px clamp(28px,8vw,120px); }
.h05-final-copy h2 { font-size: clamp(48px,6vw,92px) !important; }
.h05-final-copy p { color: #c0d0c8 !important; }
.h05-final-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 34px; }
.h05-button-light { background: #f6f3ec; color: var(--h05-ink); }
.h05-button-light:hover { background: #fff; color: var(--h05-ink); }
.h05-text-link { color: #d1e0d7; font-size: 13px; font-weight: 800; padding: 12px 0; }
.h05-text-link:hover { text-decoration: underline; }
@media (max-width: 1100px) {
  .h05-nav-inner { padding-inline: 24px; gap: 18px; }
  .h05-nav-links { gap: 15px; }
  .h05-nav-name { font-size: 11px; }
  .h05-hero { grid-template-columns: .9fr 1.1fr; }
  .h05-hero-media { min-height: 650px; }
  .h05-scene,.h05-access,.h05-passcode,.h05-control,.h05-app,.h05-gateway,.h05-fit,.h05-install,.h05-power,.h05-package,.h05-specs,.h05-faq { padding-inline: 48px; }
  .h05-access-stage { grid-template-columns: 1fr; }
  .h05-access-stage > img { min-height: 450px; }
  .h05-access-list { grid-template-columns: repeat(5,1fr); padding: 0 22px 22px; gap: 12px; }
  .h05-access-list div { grid-template-columns: 1fr; gap: 6px; padding: 13px 0; }
  .h05-access-list span { font-size: 13px; }
  .h05-interaction-copy { padding-left: 45px; padding-right: 45px; }
}
@media (max-width: 760px) {
  .site-header .nav-actions > .button { display: none; }
  .h05-product-nav { top: 62px; }
  .h05-nav-inner { min-height: 54px; padding: 0 16px; gap: 12px; }
  .h05-nav-name { display: none; }
  .h05-nav-links { order: 1; overflow-x: auto; scrollbar-width: none; gap: 0; }
  .h05-nav-links::-webkit-scrollbar { display: none; }
  .h05-nav-links a { min-height: 54px; padding: 0 13px; font-size: 11px; }
  .h05-nav-links a:first-child { padding-left: 0; }
  .h05-nav-cta { order: 2; padding: 8px 11px; font-size: 10px; }
  .yjo-h05 .h05-section h2 { font-size: clamp(39px,12vw,58px); line-height: .98; margin-bottom: 20px; }
  .yjo-h05 .h05-section p { font-size: 15px; }
  .h05-hero { display: flex; flex-direction: column; min-height: 0; }
  .h05-hero-media { height: 72vw; min-height: 300px; max-height: 540px; order: 1; }
  .h05-hero-copy { order: 2; padding: 52px 22px 58px; }
  .h05-hero-copy .h05-eyebrow { max-width: 240px; font-size: 9px; letter-spacing: .1em; white-space: normal; overflow-wrap: anywhere; }
  .h05-hero h1 { max-width: 100%; font-size: 36px; letter-spacing: -.06em; margin-bottom: 28px; overflow-wrap: anywhere; }
  .h05-hero-product { font-size: 15px !important; }
  .h05-hero-lede { font-size: 16px !important; }
  .h05-method-line { margin-top: 14px; gap: 7px 13px; }
  .h05-method-line span { font-size: 11px; }
  .h05-scene { min-height: 0; display: flex; flex-direction: column; align-items: stretch; gap: 35px; padding: 78px 22px; }
  .h05-scene-media { height: 110vw; max-height: 510px; border-radius: 0 0 85px 0; }
  .h05-access,.h05-passcode,.h05-control,.h05-app,.h05-gateway,.h05-fit,.h05-install,.h05-power,.h05-package,.h05-specs,.h05-faq { padding: 78px 22px; }
  .h05-section-intro { margin-bottom: 30px; }
  .h05-access-stage { min-height: 0; }
  .h05-access-stage > img { min-height: 0; height: 92vw; max-height: 500px; }
  .h05-access-list { grid-template-columns: repeat(2,1fr); padding: 8px 14px 18px; gap: 0 14px; }
  .h05-access-list div { grid-template-columns: 25px 1fr; padding: 12px 0; }
  .h05-access-list span { font-size: 12px; }
  .h05-interaction { display: flex; flex-direction: column; min-height: 0; }
  .h05-interaction-media { min-height: 88vw; max-height: 500px; }
  .h05-interaction-copy { padding: 70px 22px 82px; }
  .h05-passcode { display: flex; flex-direction: column; gap: 30px; }
  .h05-passcode-copy { max-width: none; }
  .h05-passcode-visual { height: 92vw; width: 100%; max-height: 500px; border-radius: 70px 0 70px 0; }
  .h05-control-media { height: 64vw; max-height: 400px; }
  .h05-control-copy { display: block; margin-top: 28px; }
  .h05-control-copy h2 { margin-bottom: 25px !important; }
  .h05-control-rail { min-width: 0; grid-template-columns: repeat(2,1fr); gap: 12px 16px; padding: 16px 0 0; border-left: 0; border-top: 1px solid var(--h05-line); }
  .h05-app { display: flex; flex-direction: column; align-items: stretch; gap: 32px; min-height: 0; }
  .h05-app-copy { max-width: none; }
  .h05-app-media { height: 95vw; max-height: 500px; border-radius: 0 95px 0 95px; }
  .h05-gateway { display: flex; flex-direction: column; align-items: stretch; gap: 30px; min-height: 0; }
  .h05-gateway-media { width: 100%; height: 84vw; max-height: 450px; justify-self: auto; }
  .h05-fit-layout,.h05-install,.h05-power,.h05-package,.h05-faq { display: flex; flex-direction: column; align-items: stretch; gap: 34px; }
  .h05-fit-media { height: 92vw; max-height: 500px; }
  .h05-fit-table div,.h05-spec-grid div { grid-template-columns: minmax(120px,.8fr) 1fr; gap: 12px; padding: 14px 0; }
  .h05-fit-table dd,.h05-spec-grid dd { font-size: 13px; }
  .h05-install-copy { max-width: none; }
  .h05-install-media { height: 92vw; max-height: 500px; border-radius: 0 0 0 70px; }
  .h05-power-copy { max-width: none; }
  .h05-power-grid div { min-height: 125px; padding: 17px; }
  .h05-power-grid strong { font-size: 25px; }
  .h05-package-media { height: 92vw; max-height: 500px; }
  .h05-spec-grid { display: block; margin-top: 30px; }
  .h05-faq-list { width: 100%; }
  .h05-final { display: flex; flex-direction: column; min-height: 0; }
  .h05-final-media { min-height: 82vw; max-height: 500px; }
  .h05-final-copy { padding: 70px 22px 80px; }
}
@media (max-width: 520px) {
  .h05-nav-cta { display: none; }
}
@media (max-width: 420px) {
  .h05-nav-links a { padding-inline: 10px; }
  .h05-nav-cta { display: none; }
  .yjo-h05 .h05-eyebrow { max-width: 240px; font-size: 9px !important; letter-spacing: .1em; white-space: normal; overflow-wrap: anywhere; }
  .h05-hero-copy { min-width: 0; }
  .h05-hero h1 { max-width: 100%; font-size: 30px !important; letter-spacing: -.06em; white-space: normal; overflow-wrap: anywhere; }
  .h05-access-list { grid-template-columns: 1fr; }
  .h05-control-rail { grid-template-columns: 1fr; }
  .h05-fit-table div,.h05-spec-grid div { grid-template-columns: 1fr; gap: 5px; }
}

/* Recovery 02 / canonical PDP structure. */
.yjo-h05.h05-canonical {
  --content-max-width: 1240px;
  --text-max-width: 620px;
  --hero-text-max-width: 520px;
  --section-vertical-spacing: clamp(72px, 9vw, 128px);
  --grid-gap: clamp(28px, 5vw, 72px);
  --image-max-width: 100%;
  --image-max-height: 680px;
  --pdp-hero-image-bound: 560px;
  --type-scale-logic: bounded-fluid;
  padding-bottom: 0;
  background: var(--h05-paper);
  overflow: clip;
}
.h05-canonical-nav {
  position: sticky;
  top: 70px;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 22px;
  min-height: 58px;
  padding: 0 max(20px, calc((100% - var(--content-max-width)) / 2));
  border-bottom: 1px solid var(--h05-line);
  background: rgba(251,250,246,.96);
  backdrop-filter: blur(16px);
}
.h05-canonical-nav-name { flex: 0 1 220px; min-width: 0; overflow: hidden; color: var(--h05-ink); font-size: 12px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.h05-canonical-nav-links { display: flex; min-width: 0; flex: 1; align-items: center; gap: 18px; overflow-x: auto; scrollbar-width: none; }
.h05-canonical-nav-links::-webkit-scrollbar { display: none; }
.h05-canonical-nav-links a { display: inline-flex; flex: 0 0 auto; min-height: 58px; align-items: center; color: var(--h05-muted); font-size: 11px; font-weight: 700; white-space: nowrap; }
.h05-canonical-nav-links a:hover { color: var(--h05-ink); }
.h05-canonical-nav-cta { flex: 0 0 auto; border-radius: 999px; background: var(--h05-ink); color: #fff; padding: 9px 13px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.h05-canonical-module { position: relative; min-width: 0; padding: var(--section-vertical-spacing) max(22px, calc((100% - var(--content-max-width)) / 2)); }
.h05-canonical-module h1,
.h05-canonical-module h2,
.h05-canonical-module p,
.h05-canonical-module dl { max-width: var(--text-max-width); }
.h05-canonical-module h1,
.h05-canonical-module h2 { margin: 0 0 24px; color: var(--h05-ink); font-size: clamp(40px, 5vw, 72px); line-height: .98; letter-spacing: -.06em; overflow-wrap: normal; word-break: normal; }
.h05-canonical-module p { color: var(--h05-muted); font-size: 16px; line-height: 1.55; }
.h05-canonical-kicker { margin: 0 0 18px !important; color: #7a8e83 !important; font-size: 10px !important; font-weight: 800; letter-spacing: .18em; line-height: 1.4 !important; text-transform: uppercase; }
.h05-canonical-section-heading { max-width: var(--text-max-width); margin-bottom: 46px; }
.h05-canonical-button { display: inline-flex; min-height: 46px; align-items: center; gap: 10px; margin-top: 12px; padding: 12px 20px; border-radius: 999px; background: var(--h05-ink); color: #fff; font-size: 13px; font-weight: 800; }
.h05-canonical-button:hover { background: #20584a; color: #fff; }
.h05-canonical-button-light { background: #f6f3ec; color: var(--h05-ink); }
.h05-canonical-text-link { color: var(--h05-ink); font-size: 13px; font-weight: 800; }
.h05-canonical-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .92fr); min-height: 620px; padding-block: 0; background: var(--h05-warm); }
.h05-canonical-hero-media { width: 100%; max-width: var(--pdp-hero-image-bound); max-height: 620px; min-height: 520px; overflow: hidden; justify-self: center; background: #f7f7f5; }
.h05-canonical-hero-media img { display: block; width: 100%; height: 100%; max-width: var(--pdp-hero-image-bound); max-height: 620px; object-fit: contain; object-position: center; }
.h05-canonical-hero-copy { display: flex; min-width: 0; max-width: var(--hero-text-max-width); flex-direction: column; justify-content: center; padding: 72px clamp(28px, 6vw, 92px) 72px 0; }
.h05-canonical-hero-copy h1 { max-width: var(--hero-text-max-width); font-size: clamp(48px, 5vw, 70px); }
.h05-canonical-model { margin: -12px 0 20px; color: var(--h05-ink); font-size: 14px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.h05-canonical-lede { max-width: 460px !important; }
.h05-canonical-pending { grid-column: 1 / -1; display: flex; width: min(100%, var(--content-max-width)); min-height: 620px; max-width: var(--content-max-width); margin-inline: auto; flex-direction: column; justify-content: center; padding: 72px 0; }
.h05-canonical-pending h1 { max-width: 520px; font-size: clamp(44px, 4.6vw, 64px); }
.h05-canonical-story { background: var(--h05-paper); }
.h05-canonical-copy { max-width: var(--text-max-width); }
.h05-canonical-access { background: #f7f4ed; }
.h05-canonical-method-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); max-width: var(--content-max-width); border-top: 1px solid var(--h05-line); border-bottom: 1px solid var(--h05-line); }
.h05-canonical-method-grid div { min-width: 0; padding: 24px 18px 24px 0; border-right: 1px solid var(--h05-line); }
.h05-canonical-method-grid div:not(:first-child) { padding-left: 18px; }
.h05-canonical-method-grid div:last-child { border-right: 0; }
.h05-canonical-method-grid span { display: block; margin-bottom: 14px; color: var(--h05-gold); font-size: 11px; }
.h05-canonical-method-grid strong { display: block; color: var(--h05-ink); font-size: 15px; line-height: 1.2; }
.h05-canonical-daily { display: grid; grid-template-columns: minmax(0, .9fr) minmax(280px, 1.1fr); gap: var(--grid-gap); align-items: center; background: #e8eee8; }
.h05-canonical-fact-grid,
.h05-canonical-spec-list { max-width: var(--content-max-width); margin: 0; }
.h05-canonical-fact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--h05-line); border-left: 1px solid var(--h05-line); }
.h05-canonical-fact-grid div { min-height: 120px; padding: 20px; border-right: 1px solid var(--h05-line); border-bottom: 1px solid var(--h05-line); }
.h05-canonical-fact-grid dt,
.h05-canonical-spec-list dt { color: var(--h05-muted); font-size: 11px; font-weight: 800; }
.h05-canonical-fact-grid dd,
.h05-canonical-spec-list dd { margin: 8px 0 0; color: var(--h05-ink); font-size: 15px; }
.h05-canonical-app { background: #efeae0; }
.h05-canonical-fit { background: var(--h05-paper); }
.h05-canonical-spec-list { border-top: 1px solid var(--h05-line); }
.h05-canonical-spec-list div { display: grid; grid-template-columns: minmax(150px, .5fr) 1fr; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--h05-line); }
.h05-canonical-design { background: #f0e8db; }
.h05-canonical-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; max-width: var(--content-max-width); }
.h05-canonical-gallery figure { height: clamp(220px, 28vw, 400px); min-width: 0; margin: 0; overflow: hidden; background: #f5f3ed; }
.h05-canonical-gallery img { display: block; width: 100%; height: 100%; object-fit: contain; }
.h05-canonical-installation { background: #e4ebe4; }
.h05-canonical-specs { background: var(--h05-paper); }
.h05-canonical-support { background: #e9eee9; }
.h05-canonical-related { background: #f7f4ed; }
.h05-canonical-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; max-width: var(--content-max-width); }
.h05-canonical-related-grid div { min-height: 120px; padding: 24px; background: #fff; }
.h05-canonical-related-grid strong { color: var(--h05-ink); }
.h05-canonical-ecosystem { background: var(--h05-deep); }
.h05-canonical-ecosystem h2 { color: #f6f3ec; }
@media (max-width: 1100px) {
  .h05-canonical-nav { padding-inline: 24px; }
  .h05-canonical-hero { grid-template-columns: minmax(0, 1fr) minmax(320px, .95fr); }
  .h05-canonical-hero-copy { padding-right: 40px; }
  .h05-canonical-method-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .h05-canonical-method-grid div:nth-child(3) { border-right: 0; }
  .h05-canonical-method-grid div:nth-child(n+4) { border-top: 1px solid var(--h05-line); }
}
@media (max-width: 900px) {
  .h05-canonical-nav { top: 62px; min-height: 54px; gap: 12px; padding-inline: 16px; }
  .h05-canonical-nav-name { display: none; }
  .h05-canonical-nav-links { gap: 14px; }
  .h05-canonical-nav-links a { min-height: 54px; }
  .h05-canonical-hero { display: flex; min-height: 0; flex-direction: column; }
  .h05-canonical-hero-media { order: 1; width: 100%; max-width: 100%; height: clamp(320px, 60vw, 560px); min-height: 320px; max-height: 560px; }
  .h05-canonical-hero-copy { order: 2; max-width: 100%; padding: 58px max(22px, calc((100% - 680px) / 2)); }
  .h05-canonical-pending { min-height: 440px; padding: 58px max(22px, calc((100% - 680px) / 2)); }
  .h05-canonical-daily { grid-template-columns: 1fr; }
  .h05-canonical-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .h05-canonical-module { padding-block: 72px; padding-inline: 16px; }
  .h05-canonical-nav-cta { display: none; }
  .h05-canonical-nav-links { gap: 10px; width: 100%; }
  .h05-canonical-module h1,
  .h05-canonical-module h2 { font-size: 38px; line-height: .99; }
  .h05-canonical-hero-media { height: 78vw; min-height: 300px; max-height: 430px; }
  .h05-canonical-hero-copy,
  .h05-canonical-pending { padding: 48px 16px 58px; }
  .h05-canonical-hero-copy h1,
  .h05-canonical-pending h1 { font-size: 42px; }
  .h05-canonical-method-grid,
  .h05-canonical-fact-grid,
  .h05-canonical-gallery,
  .h05-canonical-related-grid { grid-template-columns: 1fr; }
  .h05-canonical-method-grid div,
  .h05-canonical-method-grid div:not(:first-child) { padding: 18px 0; border-right: 0; border-top: 1px solid var(--h05-line); }
  .h05-canonical-method-grid div:first-child { border-top: 0; }
  .h05-canonical-spec-list div { grid-template-columns: 1fr; gap: 5px; }
  .h05-canonical-gallery figure { height: 78vw; max-height: 360px; }
}
