/*
Theme Name: Dr. Ben Hur Ono
Theme URI: https://example.com
Author: Dr. Ben Hur Ono
Description: Landing page de condução clínica contínua, com visualização de evolução metabólica.
Version: 1.0.6
Requires at least: 6.1
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: benhur-ono
*/

:root {
  --onyx: #0f0e0c; --charcoal: #1e1b17; --charcoal-2: #28231d;
  --brass: #b98a45; --brass-light: #d1ae71; --ivory: #ece5d6; --sand: #b6a88e;
  --line: rgba(185,138,69,.17); --line-strong: rgba(185,138,69,.42);
  --st-good: #72b689; --st-mid: #d6a74c; --st-watch: #cf7664;
  --font-display: "Cinzel", "Optima", "Palatino Linotype", Palatino, Georgia, serif;
  --font-emph: "Cormorant Garamond", "Palatino Linotype", Palatino, Georgia, serif;
  --font-body: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;
  --step-xl: clamp(3rem, 7.2vw, 6.1rem); --step-l: clamp(1.75rem, 3.8vw, 3rem); --step-m: clamp(1.13rem, 1.7vw, 1.34rem);
  --wrap: 1140px; --measure: 61ch;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.benhur { margin: 0; overflow-x: hidden; color: var(--ivory); background: var(--onyx); font-family: var(--font-body); font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased; background-image: radial-gradient(900px 590px at 90% -5%, rgba(185,138,69,.075), transparent 65%), radial-gradient(760px 480px at 3% 104%, rgba(185,138,69,.045), transparent 65%); background-attachment: fixed; }
.benhur .wrap { width: min(100% - 2.5rem, var(--wrap)); margin-inline: auto; }
.benhur h1, .benhur h2, .benhur h3, .benhur p { margin: 0; }
.benhur h1, .benhur h2, .benhur h3 { text-wrap: balance; }
.benhur .stack { display: flex; flex-direction: column; }.benhur .stack-s { gap: .7rem; }.benhur .stack-m { gap: 1.5rem; }.benhur .stack-l { gap: 3rem; }
.benhur .section { padding-block: clamp(4.7rem, 9vw, 8rem); }.benhur .section + .section { border-top: 1px solid var(--line); }
.benhur .eyebrow { color: var(--sand); font-size: .71rem; letter-spacing: .22em; text-transform: uppercase; }
.benhur .title { color: var(--ivory); font-family: var(--font-display); font-size: var(--step-l); font-weight: 600; letter-spacing: .1em; line-height: 1.2; text-transform: uppercase; }
.benhur .lead { max-width: var(--measure); color: color-mix(in srgb, var(--ivory) 84%, transparent); font-size: var(--step-m); }
.benhur .hairline { width: 100%; height: 1px; margin: 0; border: 0; background: linear-gradient(90deg, var(--brass), transparent); }
.benhur a:focus-visible { outline: 2px solid var(--brass-light); outline-offset: 4px; }
.benhur #conducao { scroll-margin-top: 1.5rem; }

/* Hero */
.benhur .hero { position: relative; display: flex; min-height: min(94vh, 900px); padding-block: 1.5rem clamp(5.5rem, 9vw, 8rem); overflow: hidden; align-items: center; }
.benhur #field { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; opacity: .82; }
.benhur .hero .wrap { position: relative; z-index: 1; min-height: min(94vh, 900px); }
.benhur .hero-nav { display: flex; align-items: center; justify-content: space-between; position: absolute; inset: 0 0 auto; padding-top: 1.55rem; }
.benhur .brand { display: inline-flex; gap: .8rem; align-items: center; color: var(--ivory); font-family: var(--font-display); font-size: .7rem; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; }
.benhur .brand-mark { display: grid; width: 2.25rem; height: 2.25rem; border: 1px solid var(--line-strong); border-radius: 50%; place-items: center; color: var(--brass-light); font-family: var(--font-mono); font-size: .56rem; letter-spacing: .03em; }
.benhur .nav-link { color: var(--sand); font-size: .75rem; letter-spacing: .13em; text-decoration: none; text-transform: uppercase; }.benhur .nav-link:hover { color: var(--brass-light); }
.benhur .hero-photo { position: absolute; z-index: 1; top: 5.5rem; right: -2rem; bottom: 0; width: min(43vw, 580px); margin: 0; overflow: hidden; pointer-events: none; -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 100%); mask-image: linear-gradient(90deg, transparent 0%, #000 22%, #000 100%); }.benhur .hero-photo::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, var(--onyx) 0%, transparent 36%), linear-gradient(0deg, var(--onyx) 0%, transparent 25%); }.benhur .hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 48% 23%; filter: saturate(.82) contrast(1.04); }
.benhur .hero-inner { position: relative; z-index: 2; max-width: 49rem; display: flex; flex-direction: column; gap: 1.3rem; padding-top: 4.5rem; }
.benhur .hero-meta { display: flex; flex-wrap: wrap; gap: .35rem .9rem; align-items: center; }
.benhur .hero-location { padding-left: .9rem; border-left: 1px solid var(--line-strong); color: color-mix(in srgb, var(--sand) 76%, transparent); font-size: .66rem; letter-spacing: .14em; line-height: 1.5; text-transform: uppercase; }
.benhur h1 { font-family: var(--font-display); font-size: var(--step-xl); font-weight: 600; letter-spacing: .045em; line-height: .99; text-transform: uppercase; }.benhur h1 .emph { color: var(--brass-light); font-family: var(--font-emph); font-size: 1.18em; font-style: italic; font-weight: 400; letter-spacing: -.02em; text-transform: none; }
.benhur .hero-proof { max-width: 36ch; color: color-mix(in srgb, var(--ivory) 85%, transparent); font-family: var(--font-emph); font-size: clamp(1.35rem, 2vw, 1.7rem); font-style: italic; line-height: 1.35; }
.benhur .availability { display: flex; gap: .55rem; align-items: center; color: var(--brass-light); font-family: var(--font-mono); font-size: .71rem; letter-spacing: .075em; text-transform: uppercase; }.benhur .pulse { width: .52rem; height: .52rem; border-radius: 50%; background: var(--st-good); box-shadow: 0 0 0 5px rgba(114,182,137,.12); }
.benhur .actions { display: flex; flex-wrap: wrap; gap: .9rem; align-items: center; margin-top: .25rem; }.benhur .btn { display: inline-block; padding: .9rem 1.4rem; border: 1px solid transparent; border-radius: 3px; font-size: .75rem; font-weight: 600; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; transition: .22s ease; }.benhur .btn-primary { border-color: var(--brass); background: var(--brass); color: var(--onyx); }.benhur .btn-primary:hover { border-color: var(--brass-light); background: var(--brass-light); }.benhur .btn-ghost { border-color: var(--line-strong); color: var(--ivory); }.benhur .btn-ghost:hover { border-color: var(--brass); color: var(--brass-light); }
.benhur .hero-caption { position: absolute; right: 0; bottom: 1rem; max-width: 30ch; color: color-mix(in srgb, var(--sand) 74%, transparent); font-size: .76rem; line-height: 1.5; text-align: right; }

/* Tension and signals */
.benhur .gap-grid { display: grid; gap: 2.5rem; }.benhur .gap-quote { max-width: 23ch; color: var(--ivory); font-family: var(--font-emph); font-size: clamp(1.8rem, 3.3vw, 2.65rem); font-style: italic; line-height: 1.22; }.benhur .gap-body { max-width: var(--measure); color: var(--sand); }.benhur .signal-list { display: grid; gap: .55rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }.benhur .signal-list span { display: flex; gap: .55rem; align-items: baseline; color: color-mix(in srgb, var(--ivory) 86%, transparent); font-size: .88rem; }.benhur .signal-list span::before { width: .38rem; height: .38rem; content: ""; flex: none; border: 1px solid var(--st-watch); border-radius: 50%; }

/* Scope of care */
.benhur .scope-section { background: rgba(30,27,23,.28); }
.benhur .scope-grid { display: grid; border-top: 1px solid var(--line); }
.benhur .scope-grid article { display: grid; grid-template-columns: 2.5rem 1fr; gap: .7rem; padding: 1.25rem 0; border-bottom: 1px solid var(--line); }
.benhur .scope-grid article > span { color: var(--brass); font-family: var(--font-mono); font-size: .67rem; letter-spacing: .08em; }
.benhur .scope-grid h3 { color: var(--ivory); font-family: var(--font-display); font-size: .78rem; font-weight: 600; letter-spacing: .1em; line-height: 1.45; text-transform: uppercase; }
.benhur .scope-grid p { max-width: 52ch; margin-top: .4rem; color: var(--sand); font-size: .86rem; line-height: 1.5; }
.benhur .scope-note { max-width: 72ch; color: color-mix(in srgb, var(--sand) 70%, transparent); font-size: .72rem; }

/* Section headings */
.benhur .section-head { display: flex; flex-direction: column; gap: 1.3rem; }

/* Consultation tools */
.benhur .tools-section { background: linear-gradient(180deg, rgba(24,21,17,.34), rgba(15,14,12,0)); }
.benhur .process-grid { display: grid; gap: 1rem; }
.benhur .tools-grid { display: grid; gap: 1rem; }
.benhur .tool-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: var(--charcoal); transition: border-color .25s ease, transform .25s ease; }
.benhur .tool-card:hover { border-color: var(--line-strong); transform: translateY(-2px); }
.benhur .tool-copy { display: grid; grid-template-columns: 2.1rem 1fr; gap: .65rem; padding: 1.15rem 1.2rem; }
.benhur .tool-copy > span { color: var(--brass); font-family: var(--font-mono); font-size: .67rem; letter-spacing: .07em; }
.benhur .tool-copy h3 { color: var(--ivory); font-family: var(--font-display); font-size: .78rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.benhur .tool-copy p { max-width: 68ch; margin-top: .35rem; color: var(--sand); font-size: .84rem; line-height: 1.5; }
.benhur .process-visual { position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 4 / 3; margin: 0; border-top: 1px solid var(--line); background: #05080b; }
.benhur .process-visual::before { position: absolute; z-index: 0; inset: -1.4rem; content: ""; background-image: var(--process-photo); background-position: center; background-size: cover; filter: blur(18px) brightness(.34) saturate(.72); opacity: .72; transform: scale(1.06); }
.benhur .process-visual::after { position: absolute; z-index: 2; inset: 0; content: ""; box-shadow: inset 0 0 0 1px rgba(255,255,255,.025); pointer-events: none; }
.benhur .process-visual img { position: relative; z-index: 1; display: block; width: 58%; height: 100%; margin-inline: auto; object-fit: cover; filter: saturate(.86) contrast(1.03); transition: transform .45s ease, opacity .3s ease; }
.benhur .process-card:hover .process-visual img { transform: scale(1.012); opacity: .94; }
.benhur .process-visual-measurement { --process-photo: url("assets/images/consultation-tools/measurement.jpg"); }
.benhur .process-visual-reading { --process-photo: url("assets/images/consultation-tools/data-reading.jpg"); }
.benhur .process-visual-measurement img { left: -1.75%; width: 60%; object-position: 50% 24%; }
.benhur .process-visual-reading img { object-position: 50% 64%; }
.benhur .tool-visual { position: relative; display: block; overflow: hidden; aspect-ratio: 1.925 / 1; border-top: 1px solid var(--line); background: #05080b; }
.benhur .tool-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform .45s ease, opacity .3s ease; }
.benhur .tool-visual:hover img { transform: scale(1.012); opacity: .92; }
.benhur .tool-visual > span { position: absolute; right: .75rem; bottom: .65rem; padding: .28rem .55rem; border: 1px solid var(--line-strong); border-radius: 2px; color: var(--ivory); background: rgba(15,14,12,.84); font-size: .58rem; letter-spacing: .11em; text-transform: uppercase; backdrop-filter: blur(7px); }
.benhur .tool-visual-detail { aspect-ratio: 1.25 / 1; }
.benhur .tools-note { max-width: 70ch; color: color-mix(in srgb, var(--sand) 70%, transparent); font-size: .72rem; }

/* Clinical path */
.benhur .path { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: none; }.benhur .path li { display: grid; grid-template-columns: 3.8rem 1fr; gap: .9rem; padding: 1.5rem 0; border-top: 1px solid var(--line); }.benhur .path li:last-child { border-bottom: 1px solid var(--line); }.benhur .path-num { color: var(--brass); font-family: var(--font-mono); font-size: .72rem; letter-spacing: .08em; }.benhur .path h3 { color: var(--ivory); font-family: var(--font-display); font-size: .85rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }.benhur .path p { max-width: 65ch; margin-top: .45rem; color: var(--sand); font-size: .94rem; }

/* Outcomes and qualification */
.benhur .sides { display: grid; gap: 2.5rem; }.benhur .side-intro { display: flex; flex-direction: column; gap: 1rem; }.benhur .side-intro .title { font-size: clamp(1.5rem, 2.8vw, 2.2rem); }.benhur .side-intro > p:last-child { max-width: 48ch; color: var(--sand); }.benhur .outcome-list { border-top: 1px solid var(--line); }.benhur .outcome-list div { display: grid; grid-template-columns: 2.25rem 1fr; gap: .7rem; padding: .85rem 0; border-bottom: 1px solid var(--line); }.benhur .outcome-list span { color: var(--brass); font-family: var(--font-mono); font-size: .68rem; }.benhur .outcome-list p { color: color-mix(in srgb, var(--ivory) 88%, transparent); font-size: .94rem; }.benhur .qualify-grid { display: grid; gap: 2.2rem; }.benhur .qualify-list { border-top: 1px solid var(--line); }.benhur .qualify-list p { display: grid; grid-template-columns: 1.2rem 1fr; gap: .65rem; padding: .9rem 0; border-bottom: 1px solid var(--line); color: color-mix(in srgb, var(--ivory) 85%, transparent); font-size: .94rem; }.benhur .qualify-list span { color: var(--brass); }.benhur .qualify-list .not-fit { margin-top: .9rem; color: var(--sand); border-top: 1px solid var(--line); }.benhur .not-fit span { color: var(--st-watch); }

/* Qualification details */
.benhur .hero-treatment-note { display: flex; flex-wrap: wrap; gap: .2rem .35rem; color: var(--sand); font-size: .75rem; letter-spacing: .06em; line-height: 1.55; }
.benhur .hero-treatment-note span { max-width: 100%; text-wrap: balance; }
.benhur .qualification-content { min-width: 0; }
.benhur .qualification-negative { margin-top: 1.8rem; }
.benhur .qualification-negative h3 { margin-bottom: .85rem; color: var(--sand); font-family: var(--font-body); font-size: .75rem; font-weight: 600; letter-spacing: .1em; line-height: 1.6; }
.benhur .qualification-negative .not-fit { margin-top: 0; border-top: 0; }
.benhur .qualification-actions { margin-top: 1.8rem; }
.benhur #conversa { scroll-margin-top: 1.5rem; }
@media (max-width: 560px) { .benhur .qualification-actions .btn { width: 100%; text-align: center; } }

/* CTA */
.benhur .access { position: relative; overflow: hidden; background: linear-gradient(135deg, #201c16, #13110e 70%); }.benhur .access::after { position: absolute; top: -20rem; right: -12rem; width: 44rem; height: 44rem; border: 1px solid rgba(185,138,69,.11); border-radius: 50%; content: ""; }.benhur .access-inner { position: relative; z-index: 1; display: grid; gap: 2.2rem; }.benhur .access-copy { max-width: 42rem; }.benhur .access-copy h2 { margin-top: .55rem; color: var(--ivory); font-family: var(--font-display); font-size: var(--step-l); font-weight: 600; letter-spacing: .085em; line-height: 1.2; text-transform: uppercase; }.benhur .access-copy > p:last-child { margin-top: 1rem; color: var(--sand); }.benhur .entry-steps { display: grid; gap: .75rem; }.benhur .entry-steps div { display: flex; gap: .8rem; align-items: center; color: var(--ivory); font-size: .9rem; }.benhur .entry-steps b { display: grid; width: 1.8rem; height: 1.8rem; border: 1px solid var(--line-strong); border-radius: 50%; place-items: center; color: var(--brass-light); font-family: var(--font-mono); font-size: .65rem; font-weight: 400; }.benhur .access-action { display: flex; flex-direction: column; gap: 1.2rem; align-items: flex-start; max-width: 38rem; }.benhur .access-action p { color: color-mix(in srgb, var(--sand) 88%, transparent); font-size: .83rem; }
.benhur .access-location { display: grid; flex: none; gap: .08rem; padding-left: .9rem; border-left: 1px solid var(--line-strong); color: var(--sand); line-height: 1.4; }
.benhur .access-location span { color: color-mix(in srgb, var(--sand) 72%, transparent); font-size: .58rem; letter-spacing: .15em; text-transform: uppercase; }
.benhur .access-location strong { color: color-mix(in srgb, var(--ivory) 88%, transparent); font-size: .76rem; font-weight: 600; letter-spacing: .04em; }
.benhur .access-location p { max-width: none; color: color-mix(in srgb, var(--sand) 82%, transparent); font-size: .72rem; }
.benhur .site-footer { padding-block: 2.5rem 3rem; border-top: 1px solid var(--line); }.benhur .foot-grid { display: flex; flex-wrap: wrap; gap: 1.2rem 3rem; align-items: flex-start; justify-content: space-between; }.benhur .foot-mark { color: color-mix(in srgb, var(--sand) 70%, transparent); font-family: var(--font-display); font-size: .65rem; letter-spacing: .17em; text-transform: uppercase; }.benhur .disclaimer { max-width: 58ch; color: color-mix(in srgb, var(--sand) 64%, transparent); font-size: .72rem; }

/* Motion */
.benhur .reveal { opacity: 0; transform: translateY(18px); transition: opacity .8s ease, transform .8s ease; }.benhur .reveal.in { opacity: 1; transform: none; }
@media (min-width: 720px) { .benhur .section-head { flex-direction: row; align-items: end; justify-content: space-between; }.benhur .section-head .lead { max-width: 37ch; }.benhur .sides { grid-template-columns: .9fr 1.1fr; gap: 5rem; align-items: start; }.benhur .qualify-grid { grid-template-columns: .9fr 1.1fr; gap: 5rem; }.benhur .access-inner { grid-template-columns: 1.25fr .8fr; }.benhur .access-action { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: space-between; max-width: none; padding-top: .9rem; border-top: 1px solid var(--line); }.benhur .access-action p { max-width: 55ch; } }
@media (min-width: 720px) { .benhur .scope-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; }.benhur .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.benhur .tools-grid { grid-template-columns: 1.35fr .65fr; }.benhur .tool-card-main { grid-column: 1 / -1; }.benhur .tool-card-detail .tool-visual { aspect-ratio: auto; height: 22rem; } }
@media (min-width: 880px) { .benhur .gap-grid { grid-template-columns: 1fr 1fr; gap: 5rem; align-items: start; } }
@media (max-width: 760px) { .benhur .hero-photo { top: 11rem; right: -34%; width: 98vw; opacity: .42; -webkit-mask-image: linear-gradient(90deg, transparent, #000 42%); mask-image: linear-gradient(90deg, transparent, #000 42%); }.benhur .hero-photo::after { background: linear-gradient(90deg, var(--onyx) 0%, transparent 74%), linear-gradient(0deg, var(--onyx) 0%, transparent 24%); } }
@media (max-width: 560px) { .benhur .hero { min-height: 0; padding-block: 0 3.5rem; align-items: flex-start; }.benhur .hero .wrap { min-height: 48rem; }.benhur .hero-nav { padding-top: 1.15rem; justify-content: flex-start; }.benhur .nav-link { display: none; }.benhur .hero-inner { max-width: 100%; gap: 1.05rem; padding-top: 8rem; }.benhur h1 { font-size: clamp(2.7rem, 12.5vw, 3.15rem); line-height: 1.04; letter-spacing: .025em; }.benhur .hero-proof { max-width: 29ch; font-size: 1.28rem; }.benhur .availability { max-width: 100%; font-size: .64rem; line-height: 1.55; }.benhur .actions { display: grid; grid-template-columns: 1fr; width: 100%; gap: .75rem; }.benhur .actions .btn { width: 100%; text-align: center; }.benhur .hero-caption { display: none; }.benhur .brand { font-size: .64rem; }.benhur .signal-list { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .benhur .hero .wrap { min-height: auto; }.benhur .section-head > *, .benhur .tool-card, .benhur .scope-grid article > div, .benhur .path li > div { min-width: 0; }.benhur h1, .benhur .title, .benhur .path h3, .benhur .scope-grid h3, .benhur .tool-copy h3 { max-width: 100%; overflow-wrap: break-word; }.benhur .availability { overflow-wrap: break-word; } }
@media (max-width: 560px) { .benhur .hero-meta { flex-direction: column; gap: .25rem; align-items: flex-start; }.benhur .hero-location { padding-left: 0; border-left: 0; font-size: .59rem; letter-spacing: .12em; }.benhur .access-location { padding-left: .8rem; } }
@media (prefers-reduced-motion: reduce) { .benhur .reveal { opacity: 1; transform: none; transition: none; }.benhur * { animation-duration: .001ms !important; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
