/* Approved cover. The following homepage sections retain their existing design. */
[data-home-cover] .hero.wrap { width: min(var(--cover-width), calc(100% - clamp(40px, 8vw, 144px))); }
[data-home-cover] .hero.wrap {
  position: relative; grid-template-columns: minmax(0, 1.65fr) minmax(0, .85fr);
  gap: 24px 5%; align-items: center; padding: clamp(28px, 5.3vh, 50px) 0 0;
}
[data-home-cover] .hero .hero-copy { padding: 0; min-width: 0; }
[data-home-cover] .hero .eyebrow { margin: 0; font-size: 10px; letter-spacing: .13em; }
[data-home-cover] .hero .eyebrow::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 10px; background: var(--accent); border-radius: 50%; }
[data-home-cover] .hero h1 { width: max-content; max-width: 100%; font-size: clamp(52px, 5.4vw, 86px); line-height: 1.08; margin: 18px 0 0; letter-spacing: -.025em; }
[data-home-cover] .hero h1 span::after { bottom: -6px; height: 10px; }
[data-home-cover] .hero .hero-intro { max-width: 47ch; margin: 26px 0 0; font-size: clamp(16px, 1.25vw, 18px); line-height: 1.55; }
[data-home-cover] .hero .hero-actions { display: flex; gap: 24px; margin-top: 24px; }
[data-home-cover] .hero .hero-actions .button { min-height: 54px; padding: 10px 20px; border-radius: 10px; font-size: 13px; }
[data-home-cover] .hero .hero-actions .text-link { font-size: 13px; }
[data-home-cover] .hero .hero-portrait { justify-self: end; width: 100%; max-width: 390px; margin: 0; padding: 8px 14px 32px 0; }
[data-home-cover] .hero .hero-portrait::before { inset: 0 0 15% 8%; transform: rotate(-6deg); }
[data-home-cover] .hero .portrait-frame { margin: 0; width: 100%; height: clamp(360px, 51vh, 480px); transform: rotate(2deg); }
[data-home-cover] .hero .portrait-frame img { height: 100%; width: 100%; object-fit: cover; object-position: center 34%; transform: none; }
[data-home-cover] .hero .hero-portrait figcaption { display: block; bottom: 0; left: 2%; width: 93%; padding: 14px 18px; transform: rotate(-3deg); }
[data-home-cover] .hero .portrait-name { font-size: clamp(24px, 2.45vw, 34px); line-height: 1.1; }
[data-home-cover] .hero .hero-portrait figcaption > span:last-child { font-size: 9px; margin-top: 5px; }
[data-home-cover] .hero .hero-doodle { display: block; width: 90px; height: 145px; right: -19px; top: 37%; }
[data-home-cover] #practice.hero-proof { width: 100%; max-width: 680px; padding: 20px 0 0; margin: 26px 0 0; border: 0; border-top: 1px solid var(--line); background: none; }
[data-home-cover] #practice .practice-grid { display: grid; grid-template-columns: .8fr 1.3fr 1fr; gap: 20px; margin: 0; padding: 0; border: 0; }
[data-home-cover] #practice .practice-metric { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 5px; border: 0; padding: 0 !important; }
[data-home-cover] #practice .practice-metric dd { order: -1; font: 400 31px/1.15 var(--display); letter-spacing: -.02em; color: var(--ink); }
[data-home-cover] #practice .practice-metric dt { max-width: 22ch; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.4; }
@media (min-width: 981px) and (max-height: 760px) {
[data-home-cover] .hero.wrap { padding-top: 24px; row-gap: 18px; }
[data-home-cover] .hero h1 { font-size: clamp(52px, 5vw, 78px); margin-top: 14px; }
[data-home-cover] .hero .hero-intro { margin-top: 20px; }
[data-home-cover] .hero .hero-actions { margin-top: 18px; }
[data-home-cover] #practice.hero-proof { margin-top: 20px; padding-top: 16px; }
}
@media (max-width: 1150px) and (min-width: 981px) {
[data-home-cover] .hero .hero-actions { gap: 16px; }
[data-home-cover] .hero .hero-actions .button { padding-inline: 14px; }
}
@media (max-width: 980px) and (min-width: 701px) {
[data-home-cover] .hero.wrap { grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr); gap: 22px 4%; }
[data-home-cover] .hero h1 { font-size: clamp(40px, 5.4vw, 53px); }
[data-home-cover] .hero .portrait-frame { height: 350px; }
[data-home-cover] .hero .portrait-name { font-size: 22px; }
[data-home-cover] .hero .hero-actions { gap: 14px; }
[data-home-cover] #practice .practice-grid { gap: 14px; }
[data-home-cover] #practice .practice-metric dd { font-size: 27px; }
}
@media (max-width: 700px) {
[data-home-cover] .hero.wrap { display: grid; grid-template-columns: minmax(0, 1fr) 93px; gap: 16px; padding-top: 22px; }
[data-home-cover] .hero .hero-copy { display: contents; }
[data-home-cover] .hero .eyebrow { grid-column: 1; grid-row: 1; align-self: center; max-width: 24ch; margin: 0; font-size: 10px; letter-spacing: .05em; line-height: 1.7; }
[data-home-cover] .hero .eyebrow::before { width: 6px; height: 6px; margin-right: 6px; }
[data-home-cover] .hero h1 { grid-column: 1 / -1; grid-row: 2; margin: 2px 0 0; font-size: clamp(31px, 9.75vw, 64px); line-height: 1.1; width: 100%; letter-spacing: -.025em; }
[data-home-cover] .hero h1 span::after { bottom: -5px; height: 7px; }
[data-home-cover] .hero .hero-intro { grid-column: 1 / -1; grid-row: 3; font-size: 15px; line-height: 1.55; max-width: none; margin: 5px 0 0; }
[data-home-cover] .hero .hero-actions { grid-column: 1 / -1; grid-row: 4; display: flex; flex-wrap: wrap; gap: 10px; margin: 2px 0 0; }
[data-home-cover] .hero .hero-actions > .button { width: 100%; min-height: 50px; padding: 10px 16px; font-size: 14px; border-radius: 9px; }
html[data-home-cover][data-theme="capture"] .hero .hero-actions > .text-link { width: auto; min-height: 38px; padding: 6px 0; font-size: 12px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; gap: 22px; margin: 0; }
[data-home-cover] .hero .hero-portrait { grid-column: 2; grid-row: 1; width: 93px; padding: 0; margin: 0; align-self: center; }
html[data-home-cover][data-theme="capture"] .hero .portrait-frame { width: 100%; height: 88px; margin: 0; transform: rotate(2deg); }
[data-home-cover] .hero .portrait-frame img { object-position: 50% 22%; transform: scale(1.17); transform-origin: 50% 22%; }
[data-home-cover] .hero .hero-portrait::before { inset: 0 -4px 0 4px; transform: rotate(-5deg); }
[data-home-cover] .hero .hero-doodle,
[data-home-cover] .hero .hero-portrait figcaption { display: none; }
[data-home-cover] #practice.hero-proof { grid-column: 1 / -1; grid-row: 5; position: static; width: 100%; max-width: none; margin: 0; padding: 16px 0 0; }
[data-home-cover] #practice .practice-grid { grid-template-columns: .75fr 1.3fr 1fr; gap: 16px; }
[data-home-cover] #practice .practice-metric dd { font-size: 26px; }
[data-home-cover] #practice .practice-metric dt { font-size: 9px; max-width: 17ch; }
}
:root[data-home-cover] .hero.wrap {
  min-height: calc(100vh - var(--cover-header-space, 87px));
  min-height: calc(100dvh - var(--cover-header-space, 87px));
  align-content: center; padding-bottom: 28px;
}
:root[data-home-cover] .hero h1 { font-size: clamp(58px, 6vw, 100px); }
:root[data-home-cover] .hero .hero-portrait { max-width: 460px; }
:root[data-home-cover] .hero .portrait-frame { height: calc(clamp(360px, 51vh, 480px) + 90px); }
@media (min-width: 981px) and (max-height: 760px) {
:root[data-home-cover] .hero h1 { font-size: clamp(56px, 5.4vw, 86px); }
}
@media (max-width: 980px) and (min-width: 701px) {
:root[data-home-cover] .hero h1 { font-size: clamp(44px, 5.8vw, 58px); }
:root[data-home-cover] .hero .portrait-frame { height: 410px; }
}
@media (max-width: 700px) {
:root[data-home-cover] .hero.wrap { grid-template-columns: minmax(0, 1fr) 108px; padding-bottom: 24px; }
:root[data-home-cover] .hero h1 { font-size: clamp(31px, 10vw, 64px); }
:root[data-home-cover] .hero .hero-portrait { width: 108px; }
html[data-home-cover][data-theme="capture"]:root .hero .portrait-frame { height: 116px; }
}
@media (max-width: 700px) { [data-home-cover] .hero.wrap { width: calc(100% - 36px); } }
