/* EKNT · Cross-page UI contract · 07/11/2026.
 * One visual language for photo hero glass, full-reading dialogs, review
 * catalogue and shared review export, search drawer and dark/light.
 * Keep semantics, route content, and click handling in original components.
 * The backdrop-filter samples ONLY the pixels physically behind the element.
 */
:root{
 --ek-frost-ink:#f5f1eb;
 --ek-frost-glass:linear-gradient(112deg,rgba(26,30,31,.70) 0%,rgba(29,33,34,.69) 58%,rgba(31,34,34,.67) 100%);
 --ek-frost-modal-glass:linear-gradient(112deg,rgba(26,30,31,.76),rgba(29,33,34,.72));
 --ek-frost-modal-blur:18px;
 --ek-frost-scrim:rgba(12,17,19,.22);
 --ek-frost-scrim-blur:4px;
 --ek-frost-close-target:44px;
 --ek-share-panel-surface:#2b3031;
 --ek-frost-blur:14px;
 --ek-frost-contrast:rgba(245,241,235,.34);
 --ek-frost-corner:24px;
}
body.ek-integrated :is(
 .ek-global-hero .ek-hero-card,
 .ek-hub-hero .ph-card--hub,
 .ek-showcase-hero .ph-card,
 .ek-photo-hero .ph-card,
 .ek-restored-hero .ph-card,
 .ek-concept-main .hero-card
){
 background:var(--ek-frost-glass)!important;
 background-color:transparent!important;
 border:0!important;
 border-radius:var(--ek-frost-corner)!important;
 box-shadow:none!important;
 -webkit-backdrop-filter:blur(var(--ek-frost-blur)) saturate(.92)!important;
 backdrop-filter:blur(var(--ek-frost-blur)) saturate(.92)!important;
 color:var(--ek-frost-ink)!important;
 isolation:isolate;
}
/* No giant pseudo-element filter behind a local photographic card. */
body.ek-integrated .ek-global-hero .ek-hero-card::before,
body.ek-integrated .ek-concept-main .hero-card::before{
 filter:none!important;box-shadow:none!important;
}
/* The large image is NEVER blurred globally; only the card above it. */
body.ek-integrated :is(.ek-global-hero,.ek-hub-hero,.ek-showcase-hero,.ek-photo-hero) .ph-stage img{
 -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
body.ek-integrated .ek-global-hero .ek-hero-expand,
body.ek-integrated .ek-concept-main .hero-card a,
body.ek-integrated .ek-global-hero .ek-hero-card button{
 color:var(--ek-frost-ink)!important;
}
body.ek-integrated .ek-global-hero .ek-hero-expand:focus-visible,
body.ek-integrated .ek-concept-main .hero-card a:focus-visible{
 outline:2px solid var(--ek-frost-ink)!important;outline-offset:3px!important;
}
@media(min-width:701px){
 body.ek-integrated .ek-sheet.ek-hero-modal .ek-sheet-panel,
 body .ek-sheet.ek-hero-modal .ek-sheet-panel{
  background:var(--ek-frost-modal-glass)!important;
  border:0!important;border-radius:24px!important;
  color:var(--ek-frost-ink)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(var(--ek-frost-modal-blur)) saturate(.9)!important;
  backdrop-filter:blur(var(--ek-frost-modal-blur)) saturate(.9)!important;
 }
 body .ek-sheet.ek-hero-modal .ek-sheet-head{
  background:transparent!important;color:inherit!important;
  border:0!important;box-shadow:none!important;
 }
 body .ek-sheet.ek-hero-modal .ek-sheet-close{
  color:var(--ek-frost-ink)!important;
  background:transparent!important;
  border:1px solid var(--ek-frost-contrast)!important;
  border-radius:50%!important;
 }
}
body .ek-sheet.ek-hero-modal .ek-sheet-scrim,
:root[data-ek-theme="dark"] body .ek-sheet.ek-hero-modal .ek-sheet-scrim{
 background:var(--ek-frost-scrim)!important;
 backdrop-filter:blur(var(--ek-frost-scrim-blur))!important;
 -webkit-backdrop-filter:blur(var(--ek-frost-scrim-blur))!important;
}
body .ek-sheet.ek-hero-modal .ek-sheet-close:focus-visible{
 outline:2px solid currentColor!important;outline-offset:3px!important;
}
/* Shared hero-read surface: the SAME translucent glass on mobile as desktop.
   The older theme sheets otherwise repaint mobile as an opaque gray block. */
body .ek-sheet.ek-hero-modal .ek-sheet-close{
 display:grid!important;place-items:center!important;
 box-sizing:border-box!important;
 flex:0 0 var(--ek-frost-close-target)!important;
 width:var(--ek-frost-close-target)!important;
 height:var(--ek-frost-close-target)!important;
 min-width:var(--ek-frost-close-target)!important;
 min-height:var(--ek-frost-close-target)!important;
 border-radius:50%!important;
 color:var(--ek-frost-ink)!important;
 background:transparent!important;
 box-shadow:none!important;
}
body .ek-sheet.ek-hero-modal .ek-sheet-close svg{
 display:block!important;width:20px!important;height:20px!important;
 stroke:currentColor!important;opacity:1!important;
}
body .ek-sheet.ek-hero-modal .ek-sheet-body .ek-hero-full,
body .ek-sheet.ek-hero-modal .ek-sheet-body .ek-hero-full :is(p,li,h2,h3){
 color:var(--ek-frost-ink)!important;
}
body .ek-sheet.ek-hero-modal .ek-sheet-body .ek-hero-full :is(a.button,.button){
 color:var(--ek-frost-ink)!important;
 border-color:rgba(245,241,235,.65)!important;
}
@media(max-width:700px){
 body .ek-sheet.ek-hero-modal .ek-sheet-panel,
 :root[data-ek-theme="dark"] body .ek-sheet.ek-hero-modal .ek-sheet-panel{
  background:var(--ek-frost-modal-glass)!important;
  -webkit-backdrop-filter:blur(var(--ek-frost-modal-blur)) saturate(.9)!important;
  backdrop-filter:blur(var(--ek-frost-modal-blur)) saturate(.9)!important;
  color:var(--ek-frost-ink)!important;
  border:0!important;border-radius:24px 24px 0 0!important;
  box-shadow:none!important;
 }
}
/* /problemas/ uses the original full navigation integrated over its photo.
   A compact black rectangular header must never mask the image at rest. */
body.ek-integrated[data-route="/problemas/"] .ek-header:not(.is-pill) .ek-header-inner{
 background:rgba(19,24,25,.10)!important;
 color:#f5f1eb!important;
 border:0!important;box-shadow:none!important;
 -webkit-backdrop-filter:blur(5px)!important;
 backdrop-filter:blur(5px)!important;
}
body.ek-integrated[data-route="/problemas/"] .ek-header:not(.is-pill) .ek-nav a,
body.ek-integrated[data-route="/problemas/"] .ek-header:not(.is-pill) .brand{
 color:#f5f1eb!important;
}
/* Compact, aligned results drawer — matching the search cards' text edge:
   desktop 24px body inset + 20px item inset = 44px.
   phone 12px inset + 16px item inset = 28px. */
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head{
 padding:21px 24px 14px 44px!important;
 min-height:0!important;align-items:start!important;
 gap:14px!important;
 border:0!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-eyebrow{
 display:block!important;
 margin:0 0 8px!important;
 color:#d1cbc5!important;
 font:500 10px/1.35 var(--ek-font-body,system-ui,sans-serif)!important;
 letter-spacing:.08em!important;
 text-transform:uppercase!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head h2{
 font:400 22px/1.2 var(--ek-font-heading,serif)!important;
 margin:0 0 5px!important;
 color:#f5f1eb!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .symptom-status{
 font:400 12px/1.45 var(--ek-font-body,system-ui,sans-serif)!important;
 color:#d1cbc5!important;
 margin:0!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-close{
 display:grid!important;place-items:center!important;
 flex:0 0 44px!important;width:44px!important;height:44px!important;
 color:#f5f1eb!important;border:1px solid rgba(245,241,235,.5)!important;
 border-radius:50%!important;background:transparent!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-close svg{
 width:20px!important;height:20px!important;stroke:currentColor!important;
}
@media(max-width:700px){
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head{
  padding:42px 16px 12px 28px!important;align-items:center!important;
  gap:12px!important;
 }
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head h2{
  font-size:21px!important;line-height:1.2!important;
 }
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-eyebrow{
  font-size:10px!important;
 }
}
/* Review catalogue only: quotations get the editorial serif;
   Stories' actual body remains the approved Onest sans. */
body.ek-integrated[data-route="/resenas/"] .ek-reviews-list .ek-exp-quote{
 font-family:"Ekonatura Geist Serif",serif!important;
 font-weight:400!important;
}
body .ek-stories .ek-stories-text{
 font-family:var(--ek-font-body,"Ekonatura Onest",system-ui,sans-serif)!important;
}
body .ek-stories .ek-stories-nav{
 display:grid!important;place-items:center!important;
 width:44px!important;height:44px!important;
 border:1px solid rgba(245,241,235,.6)!important;
 border-radius:50%!important;
 background:rgba(41,45,46,.93)!important;
 color:#f5f1eb!important;
 -webkit-text-fill-color:#f5f1eb!important;
 font-size:0!important;box-shadow:none!important;
}
body .ek-stories .ek-stories-nav svg{
 display:block!important;width:20px!important;height:20px!important;
 fill:none!important;stroke:currentColor!important;
 opacity:1!important;visibility:visible!important;
}
body .ek-stories .ek-stories-nav:focus-visible{outline:2px solid #dfa089!important;outline-offset:3px!important}
/* Trust header: verified provider count lives in source; theme-safe stars. */
body.ek-integrated[data-route="/resenas/"] .ek-reviews-tools .stars{
 color:#292d2e!important;-webkit-text-fill-color:#292d2e!important;
}
:root[data-ek-theme="dark"] body.ek-integrated[data-route="/resenas/"] .ek-reviews-tools .stars{
 color:#f5f1eb!important;-webkit-text-fill-color:#f5f1eb!important;
}
/* Harmonize this photograph with Contact rather than replacing the image. */
body.ek-integrated[data-route="/resenas/"] .ek-global-hero .ph-stage img{
 filter:saturate(.79) contrast(.96) sepia(.015)!important;
}
/* Single canonical share renderer on Home, catalog, Stories and inline cards.
   Do not repaint the generated review image; the canvas always stays cream. */
/* Identical Home-approved graphite for sharing on every route, including Stories.
   Preserve one JS renderer and one set of export formats. */
body .ek-review-export .ek-review-export-panel,
:root[data-ek-theme="light"] body .ek-review-export .ek-review-export-panel,
:root[data-ek-theme="dark"] body .ek-review-export .ek-review-export-panel{
 background:var(--ek-share-panel-surface)!important;color:#f5f1eb!important;
 border:1px solid rgba(245,241,235,.26)!important;border-radius:26px!important;
 box-shadow:0 18px 55px rgba(7,10,11,.25)!important;
}
body .ek-review-export .ek-review-export-panel :is(h2,p,.ek-review-export-intro,.ek-review-export-note,.ek-review-export-status){
 color:#f5f1eb!important;-webkit-text-fill-color:#f5f1eb!important;
}
body .ek-review-export .ek-review-export-panel header [data-share-close]{
 color:#f5f1eb!important;
 background:transparent!important;
 border:1px solid rgba(245,241,235,.42)!important;
 border-radius:50%!important;
}
body .ek-review-export .ek-review-export-panel .ek-review-export-preview{
 background:#e6e3dd!important;
}
body .ek-review-export .ek-review-export-actions [data-share-native]{
 background:#f5f1eb!important;color:#292d2e!important;
 border:0!important;border-radius:999px!important;
}
body .ek-review-export .ek-review-export-formats button{
 color:#f5f1eb!important;-webkit-text-fill-color:#f5f1eb!important;
 background:transparent!important;
}
body .ek-review-export .ek-review-export-formats button[aria-checked="true"]{
 color:#dfa089!important;-webkit-text-fill-color:#dfa089!important;
}
@media(max-width:700px){
 body .ek-review-export .ek-review-export-panel{
  border:0!important;border-radius:26px 26px 0 0!important;
 }
}
@media(prefers-reduced-motion:reduce){
 body .ek-stories .ek-stories-nav,
 body.ek-integrated .ek-global-hero .ek-hero-card{
  transition:none!important;
 }
}


/* /problemas/ · flat search drawer + desktop drag affordance · 07/11/2026 */
/* Keep the header aligned with the result text. This is a flat, quiet surface. */
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-f5-search-sidebar.ek-search-drawer{
 border:0!important;box-shadow:none!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head{
 width:100%!important;max-width:none!important;box-sizing:border-box!important;
 padding:21px 16px 12px 46px!important;
 border:0!important;background:transparent!important;box-shadow:none!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head>div{
 flex:1 1 auto!important;min-width:0!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head h2{
 font-size:19px!important;line-height:1.25!important;
 letter-spacing:normal!important;margin-bottom:4px!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-eyebrow{
 margin-bottom:5px!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-close{
 border:0!important;box-shadow:none!important;background:transparent!important;
}
/* Mirror the scale and rhythm of the global search, not a second huge index. */
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .symptom-results{
 gap:0!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit a{
 display:block!important;min-height:44px!important;
 padding:14px 12px!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
 border-radius:0!important;text-shadow:none!important;transform:none!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit :is(h2,h3,strong,.search-hit-title,.symptom-result-title){
 font:400 21px/1.24 var(--ek-font-heading,Georgia,serif)!important;
 letter-spacing:-.015em!important;margin:0 0 5px!important;
 text-shadow:none!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit :is(p,small,.search-hit-description,.symptom-result-description){
 font-size:13px!important;line-height:1.45!important;margin:0!important;
}
body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit a:is(:hover,:focus-visible){
 background:rgba(245,241,235,.06)!important;color:#f5f1eb!important;
}
/* The rail handles navigation by dragging, but a simple click still follows a card. */
@media(min-width:901px) and (hover:hover) and (pointer:fine){
 body.ek-integrated[data-route="/problemas/"] .ek-f2-group>.ek-f2-rail,
 body.ek-integrated[data-route="/problemas/"] .ek-f2-group>.ek-f2-rail :is(.ek-ed-card,.ek-ed-card-hit,.ek-ed-card-hit *,img){
  cursor:grab!important;
 }
 body.ek-integrated[data-route="/problemas/"] .ek-f2-group>.ek-f2-rail:active,
 body.ek-integrated[data-route="/problemas/"] .ek-f2-group>.ek-f2-rail:active :is(.ek-ed-card,.ek-ed-card-hit,.ek-ed-card-hit *,img){
  cursor:grabbing!important;
 }
}
@media(max-width:700px){
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head{
  padding:36px 16px 12px 32px!important;align-items:start!important;gap:8px!important;
 }
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .ek-search-drawer-head h2{
  font-size:19px!important;line-height:1.25!important;
 }
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit :is(h2,h3,strong,.search-hit-title,.symptom-result-title){
  font-size:20px!important;
 }
 body.ek-integrated[data-route="/problemas/"] .hub-search .ek-search-drawer .search-hit a{
  padding:13px 16px!important;
 }
}


/* EKNT · Shared reading surface contrast · theme-independent */
/* Sheet, full review reader and share UI are autonomous dark components.
   Keep the paper-coloured exported image; do not borrow page theme ink. */
:root{
 --ek-reader-surface:#292d2e;
 --ek-reader-text:#f5f1eb;
 --ek-reader-muted:#c8ccc7;
 --ek-reader-rule:rgba(245,241,235,.22);
}
body .ek-sheet .ek-sheet-panel,
body .ek-review-dialog{
 background:var(--ek-reader-surface)!important;
 background-image:none!important;
 color:var(--ek-reader-text)!important;
 border:0!important;
 box-shadow:none!important;
 color-scheme:dark;
}
body .ek-sheet .ek-sheet-head{
 background:transparent!important;
 color:var(--ek-reader-text)!important;
 border:0!important;box-shadow:none!important;
}
body .ek-sheet .ek-sheet-grab{background:rgba(245,241,235,.7)!important}
body .ek-sheet .ek-sheet-close,
body .ek-review-dialog :is(.ek-review-dialog-close,.ek-review-dialog-nav button){
 color:var(--ek-reader-text)!important;
 -webkit-text-fill-color:var(--ek-reader-text)!important;
 background:transparent!important;
 box-shadow:none!important;
}
body .ek-sheet .ek-sheet-title,
body .ek-sheet .ek-sheet-body,
body .ek-sheet .ek-sheet-body :is(
 .ph-copy,.ek-hub-intro-preview,.ph-more-body,.ek-hub-extra-copy,
 .ek-hero-full,.ek-exp-body,.review-expanded,.ek-ed-card-desc,
 .home-topic-more,.owner-response,.ek-exp-reply,
 p,blockquote,li,h2,h3,h4,strong,span,small,a
),
body .ek-review-dialog :is(
 .ek-review-dialog-head h2,.ek-review-dialog-body,
 .ek-review-dialog-body p,.ek-review-dialog-body blockquote,
 .ek-review-dialog-body li,.ek-review-dialog-body h2,
 .ek-review-dialog-body h3,.ek-review-dialog-body strong,
 .ek-review-dialog-body span,.ek-review-dialog-body a,
 .ek-review-dialog-body small
){
 color:var(--ek-reader-text)!important;
 -webkit-text-fill-color:var(--ek-reader-text)!important;
 opacity:1!important;
}
body .ek-sheet .ek-sheet-body :is(.review-kicker,.ek-exp-label),
body .ek-review-dialog .ek-review-dialog-body :is(.review-kicker,.ek-exp-label){
 color:var(--ek-reader-muted)!important;
 -webkit-text-fill-color:var(--ek-reader-muted)!important;
}
body .ek-sheet .ek-sheet-body :is(.owner-response,.ek-exp-reply),
body .ek-review-dialog .ek-review-dialog-body :is(.owner-response,.ek-exp-reply){
 background:transparent!important;box-shadow:none!important;
 border:0!important;border-top:1px solid var(--ek-reader-rule)!important;
 border-radius:0!important;
}
body .ek-sheet .ek-sheet-body :is(a,button):focus-visible,
body .ek-review-dialog :is(a,button):focus-visible,
body .ek-review-export .ek-review-export-panel :is(a,button):focus-visible{
 outline:2px solid var(--ek-reader-text)!important;
 outline-offset:3px!important;
}
/* Share controls use the same high-contrast ink in either page theme.
   Exclude the generated cream preview and native light action button. */
body .ek-review-export .ek-review-export-panel{
 color-scheme:dark;color:var(--ek-reader-text)!important;
}
body .ek-review-export .ek-review-export-panel :is(
 header h2,.ek-review-export-intro,.ek-review-export-note,
 .ek-review-export-status,.ek-review-export-formats button
){
 color:var(--ek-reader-text)!important;
 -webkit-text-fill-color:var(--ek-reader-text)!important;
}


/* EKNT · Mobile menu CTA parity: no legacy green button */
/* The mobile booking action remains an accessible link, styled as another
   navigation row in either theme, never as an isolated green pill. */
@media(max-width:800px){
 body #ek-menu nav.ek-mobile-levels [data-menu-level="root"]>.ek-mobile-booking-cta,
 body #ek-menu nav.ek-mobile-levels .ek-mobile-booking-cta{
  display:flex!important;align-items:center!important;
  width:100%!important;min-height:56px!important;
  padding:12px 0!important;margin:0!important;
  border:0!important;border-bottom:1px solid rgba(245,241,235,.23)!important;
  border-radius:0!important;
  background:transparent!important;background-image:none!important;
  box-shadow:none!important;
  color:#f5f1eb!important;-webkit-text-fill-color:#f5f1eb!important;
  font:400 clamp(19px,4.7vw,22px)/1.22 var(--ek-font-heading,Georgia,serif)!important;
  letter-spacing:-.03em!important;text-decoration:none!important;
 }
 body #ek-menu nav.ek-mobile-levels .ek-mobile-booking-cta:focus-visible{
  outline:2px solid #f5f1eb!important;outline-offset:2px!important;
 }
}
