:root {
  --pro-black: #030303;
  --pro-panel: #080806;
  --pro-ivory: #f3efe6;
  --pro-muted: rgba(243, 239, 230, .7);
  --pro-gold: #c7a052;
  --pro-line: rgba(199, 160, 82, .28);
  --pro-serif: "Bodoni Moda", Georgia, serif;
  --pro-sans: "Manrope", Arial, sans-serif;
  --pro-header: 94px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--pro-header); background: var(--pro-black); }
body { margin: 0; min-width: 0; background: var(--pro-black); color: var(--pro-ivory); font-family: var(--pro-sans); }
body::selection { background: var(--pro-gold); color: #000; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
img { display: block; max-width: 100%; }
.skip-link { position: fixed; z-index: 2000; left: 16px; top: -80px; padding: 12px 16px; background: var(--pro-ivory); color: #000; }
.skip-link:focus { top: 12px; }

.eyebrow { margin: 0 0 22px; color: var(--pro-gold); font-size: 12px; font-weight: 600; letter-spacing: .2em; line-height: 1.5; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--pro-serif); font-weight: 400; }
.text-cta, .inline-links a { display: inline-block; padding: 13px 0 10px; border-bottom: 1px solid var(--pro-gold); color: var(--pro-gold); font-size: 12px; font-weight: 600; letter-spacing: .12em; text-decoration: none; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--pro-gold); outline-offset: 4px; }

.professional-access { min-height: calc(100svh - var(--pro-header)); display: grid; grid-template-columns: minmax(0,1fr); place-items: center; padding: clamp(54px, 8vw, 120px) 22px; background: radial-gradient(circle at 50% 28%, rgba(116,86,38,.13), transparent 36%); }
.access-panel { width: min(100%, 700px); min-width: 0; padding: clamp(38px, 6vw, 76px); border: 1px solid var(--pro-line); background: rgba(5,5,4,.88); text-align: center; }
.access-panel h1 { margin-bottom: 28px; font-size: clamp(46px, 6.2vw, 82px); line-height: .98; }
.access-intro { margin: 0 auto 20px; max-width: 590px; color: var(--pro-ivory); font-size: clamp(17px, 1.35vw, 21px); line-height: 1.7; }
.access-note { margin-bottom: 36px; color: var(--pro-muted); font-size: 15px; line-height: 1.6; }
.access-form { width: min(100%, 470px); margin: 0 auto; text-align: left; }
.access-form label, .professional-form > label:not(.privacy-check) { display: grid; gap: 10px; color: var(--pro-gold); font-size: 12px; font-weight: 600; letter-spacing: .13em; }
.access-form input, .professional-form input, .professional-form select, .professional-form textarea { width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid rgba(199,160,82,.4); border-radius: 0; background: #050505; color: var(--pro-ivory); font-size: 16px; letter-spacing: 0; }
.professional-form textarea { min-height: 140px; resize: vertical; }
.button-primary { width: 100%; min-height: 56px; margin-top: 18px; padding: 13px 20px; border: 1px solid var(--pro-gold); background: transparent; color: var(--pro-gold); font-size: 13px; font-weight: 600; letter-spacing: .16em; cursor: pointer; }
.button-primary:hover, .button-primary:focus-visible { background: var(--pro-gold); color: #080704; }
.access-help { margin: 24px 0 0; color: var(--pro-muted); font-size: 14px; line-height: 1.6; }
.access-help a, .access-contact a { color: var(--pro-gold); font-weight: 600; letter-spacing: .08em; text-decoration: none; }
.access-contact { margin-top: 34px; padding-top: 28px; display: flex; flex-wrap: wrap; justify-content: center; gap: 16px 26px; border-top: 1px solid var(--pro-line); color: var(--pro-muted); font-size: 13px; line-height: 1.6; }
.access-contact p { flex: 0 0 100%; margin-bottom: 2px; }
.access-contact a { min-height: 44px; display: inline-flex; align-items: center; }

.professional-private { overflow: clip; }
.professional-hero { position: relative; min-height: calc(100svh - var(--pro-header)); padding: clamp(54px, 5.3vw, 92px) clamp(24px, 6.5vw, 124px); display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(430px, .78fr); align-items: center; gap: clamp(28px, 4vw, 76px); border-bottom: 1px solid var(--pro-line); background: radial-gradient(circle at 77% 47%, rgba(167,119,43,.14), transparent 29%), linear-gradient(110deg, #030303 0 53%, #070604 100%); }
.professional-hero::after { content: ""; position: absolute; right: 4%; bottom: 8%; width: 46%; height: 16%; border-radius: 50%; background: rgba(0,0,0,.72); filter: blur(42px); pointer-events: none; }
.professional-hero__copy { position: relative; z-index: 3; max-width: 880px; transform: translateY(-1.5%); }
.professional-hero h1 { max-width: 850px; margin-bottom: 26px; font-size: clamp(48px, 4.9vw, 86px); line-height: .98; letter-spacing: -.022em; }
.professional-hero__intro { max-width: 660px; margin-bottom: 22px; color: var(--pro-muted); font-size: clamp(17px, 1.2vw, 21px); line-height: 1.7; }
.professional-hero__proof { max-width: 680px; margin: 0 0 30px; padding: 3px 0 3px 18px; border-left: 1px solid rgba(199,160,82,.7); color: rgba(243,239,230,.84); font-size: clamp(14px, 1vw, 17px); font-weight: 500; line-height: 1.58; }
.professional-hero__proof strong { color: var(--pro-gold); font-weight: 600; }
.professional-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px 30px; }
.professional-hero__actions .button-primary { width: auto; min-height: 58px; margin: 0; padding: 14px 28px; display: inline-flex; align-items: center; text-decoration: none; }
.professional-hero__visual { position: relative; z-index: 2; height: min(70svh, 690px); min-height: 500px; margin: 0; }
.professional-hero__stage { position: absolute; inset: -3% -3% 24px; }
.professional-hero__stage::before { content: ""; position: absolute; inset: 13% 1% 3%; border: 1px solid rgba(199,160,82,.13); border-radius: 50%; background: radial-gradient(ellipse at 52% 58%, rgba(151,106,39,.15), rgba(82,58,23,.055) 46%, transparent 70%); transform: rotate(-6deg); }
.professional-hero__visual img { position: absolute; width: auto; max-width: none; object-fit: contain; filter: drop-shadow(0 28px 32px rgba(0,0,0,.76)); }
.professional-hero__aove { z-index: 2; left: 28%; bottom: 8%; height: 78%; }
.professional-hero__honey { z-index: 3; right: -4%; bottom: 2%; height: 50%; }
.professional-hero__avocado { z-index: 3; left: -8%; bottom: 1%; width: 54% !important; height: auto; }
.professional-hero__visual figcaption { position: absolute; z-index: 4; right: 0; bottom: 0; color: rgba(243,239,230,.45); font-size: 9px; font-weight: 600; letter-spacing: .16em; }
.session-exit { position: absolute; right: clamp(24px, 3vw, 58px); bottom: 24px; }
.session-exit button { border: 0; background: none; color: rgba(243,239,230,.48); font-size: 10px; letter-spacing: .14em; cursor: pointer; }

.professional-section { padding: clamp(76px, 7vw, 124px) clamp(24px, 6.5vw, 124px); border-bottom: 1px solid var(--pro-line); }
.inline-links { display: flex; gap: 28px; }
.section-heading { margin-bottom: clamp(48px, 4.7vw, 76px); }
.section-heading--wide, .certification-heading { display: grid; grid-template-columns: minmax(300px,.9fr) minmax(320px,.7fr); gap: clamp(48px, 10vw, 180px); align-items: end; }
.section-heading h2, .difference-intro h2, .professional-operation > header h2, .contact-intro h2 { margin-bottom: 26px; font-size: clamp(46px, 5vw, 82px); line-height: 1.02; }
.section-heading--wide > p, .certification-heading > div:last-child > p { max-width: 590px; margin-bottom: 0; color: var(--pro-muted); font-size: clamp(17px, 1.2vw, 20px); line-height: 1.7; }

.family-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 1px solid var(--pro-line); border-bottom: 1px solid var(--pro-line); }
.family-panel { min-width: 0; padding: clamp(28px, 3vw, 52px); display: flex; flex-direction: column; border-right: 1px solid var(--pro-line); background: radial-gradient(circle at 50% 28%, rgba(146,103,38,.09), transparent 32%); }
.family-panel:last-child { border-right: 0; }
.family-panel figure { position: relative; height: clamp(310px, 29vw, 450px); margin: 0 0 24px; display: flex; align-items: center; justify-content: center; }
.family-panel figure > img { max-height: 94%; width: auto; object-fit: contain; filter: drop-shadow(0 20px 25px rgba(0,0,0,.72)); }
.family-panel--avocado figure > img { width: min(100%, 440px); height: auto; }
.family-panel .aove-pair { gap: 0; }
.family-panel .aove-pair img { width: 43%; max-height: 96%; }
.family-panel .honey-set { gap: 0; }
.family-panel .honey-set img { width: 25%; max-height: 72%; }
.family-panel__copy { flex: 1; display: flex; flex-direction: column; }
.family-panel__copy h3 { margin-bottom: 20px; font-size: clamp(37px, 3.2vw, 57px); line-height: 1.02; }
.family-panel__copy > p:not(.product-index) { min-height: 7em; margin-bottom: 26px; color: var(--pro-muted); font-size: 15px; line-height: 1.7; }
.product-index { color: var(--pro-gold); font-size: 11px; font-weight: 600; letter-spacing: .16em; }
.family-panel dl { margin: auto 0 0; border-top: 1px solid var(--pro-line); }
.family-panel dl div { padding: 14px 0; border-bottom: 1px solid rgba(199,160,82,.14); }
.family-panel dt { margin-bottom: 7px; color: var(--pro-gold); font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.family-panel dd { margin: 0; color: var(--pro-muted); font-size: 15px; line-height: 1.52; }

.professional-difference { display: grid; grid-template-columns: minmax(300px,.7fr) minmax(500px,1.15fr); gap: clamp(60px, 9vw, 160px); align-items: start; }
.difference-intro { position: sticky; top: calc(var(--pro-header) + 48px); }
.difference-intro > p:not(.eyebrow) { max-width: 570px; color: var(--pro-muted); font-size: 17px; line-height: 1.75; }
.difference-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.difference-grid article { min-height: 228px; padding: 28px 30px 30px 0; border-top: 1px solid var(--pro-line); }
.difference-grid article:nth-child(odd) { padding-right: 40px; }
.difference-grid article:nth-child(even) { padding-left: 40px; border-left: 1px solid rgba(199,160,82,.14); }
.difference-grid span { color: rgba(199,160,82,.55); font-size: 10px; font-weight: 600; letter-spacing: .16em; }
.difference-grid h3 { margin: 20px 0 13px; font-size: clamp(27px, 2.2vw, 39px); line-height: 1.08; }
.difference-grid p { margin: 0; color: var(--pro-muted); font-size: 14px; line-height: 1.65; }

.certification-section { background: radial-gradient(circle at 70% 45%, rgba(125,89,35,.08), transparent 32%); }
.certification-heading { align-items: center; }
.certification-heading h2 { font-size: clamp(40px, 4.2vw, 68px); }
.certification-heading .text-cta { margin-top: 10px; }
.certification-section .section-heading { margin-bottom: clamp(38px, 3.8vw, 58px); }
.certification-proof { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr); gap: 18px; align-items: stretch; }
.certification-group { min-width: 0; padding: clamp(26px, 3vw, 46px); display: flex; flex-direction: column; border: 1px solid var(--pro-line); background: rgba(3,3,3,.58); }
.certification-group > p { min-height: 2.4em; margin-bottom: 24px; display: grid; place-items: center; color: var(--pro-gold); font-family: var(--pro-serif); font-size: clamp(20px, 1.55vw, 27px); line-height: 1.2; letter-spacing: .08em; text-align: center; }
.certification-grid { flex: 1; display: grid; gap: 16px; align-items: center; }
.certification-grid--organic { grid-template-columns: repeat(3,minmax(0,1fr)); }
.certification-grid--natural { grid-template-columns: repeat(2,minmax(0,1fr)); }
.certification-grid > img, .certification-grid .furia-certification-trigger { width: 100%; height: clamp(156px, 12vw, 194px); max-width: 260px; min-width: 0; padding: clamp(14px, 1.3vw, 20px); display: flex; align-items: center; justify-content: center; justify-self: center; overflow: hidden; contain: paint; border: 0; border-radius: 0; background: #fff; box-shadow: none; object-fit: contain; }
.certification-grid .furia-certification-trigger { cursor: pointer; }
.certification-grid .furia-certification-trigger img { display: block; flex: 0 1 auto; width: auto !important; height: auto !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain; }
.certification-grid--organic > img:first-child { padding: clamp(20px, 1.8vw, 28px) clamp(26px, 2.25vw, 36px); }
.certification-grid--organic > .furia-certification-trigger:first-child { padding: clamp(20px, 1.8vw, 28px) clamp(26px, 2.25vw, 36px); }
.certification-grid--organic > .furia-certification-trigger:first-child img { max-width: 94% !important; max-height: 94% !important; }

.professional-operation > header { max-width: 900px; margin-bottom: clamp(48px, 6vw, 88px); }
.operation-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--pro-line); }
.operation-grid article { min-height: 290px; padding: 30px clamp(22px, 2.6vw, 42px); border-right: 1px solid rgba(199,160,82,.18); }
.operation-grid article:first-child { padding-left: 0; }
.operation-grid article:last-child { padding-right: 0; border-right: 0; }
.operation-index { color: var(--pro-gold); font-size: 10px; font-weight: 600; letter-spacing: .13em; }
.operation-grid h3 { margin: 48px 0 18px; font-size: clamp(28px, 2.4vw, 41px); line-height: 1.06; }
.operation-grid article > p:last-child { color: var(--pro-muted); font-size: 14px; line-height: 1.7; }

.contact-section { display: grid; grid-template-columns: minmax(300px,.72fr) minmax(500px,1.12fr); gap: clamp(60px, 9vw, 160px); align-items: start; background: radial-gradient(circle at 18% 36%, rgba(145,102,37,.13), transparent 28%), var(--pro-panel); }
.contact-intro { position: sticky; top: calc(var(--pro-header) + 48px); }
.contact-intro > p:not(.eyebrow) { max-width: 580px; color: var(--pro-muted); font-size: 17px; line-height: 1.7; }
.contact-direct, .order-actions { margin-top: 28px; display: grid; }
.contact-direct a, .order-actions a { min-height: 54px; padding: 16px 0; display: flex; align-items: center; border-bottom: 1px solid var(--pro-line); color: var(--pro-gold); font-size: 11px; font-weight: 600; letter-spacing: .12em; line-height: 1.4; text-decoration: none; }
.professional-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px 28px; }
.form-wide { grid-column: 1 / -1; }
.privacy-check { display: flex; align-items: flex-start; gap: 12px; color: var(--pro-muted); font-size: 14px; line-height: 1.6; }
.privacy-check input { flex: 0 0 20px; width: 20px; min-height: 20px; margin-top: 1px; accent-color: var(--pro-gold); }
.privacy-check a { color: var(--pro-ivory); }
.form-submit { display: flex; align-items: center; gap: 26px; }
.form-submit .button-primary { width: min(100%, 360px); margin: 0; }
.form-submit > p { margin: 0; color: var(--pro-muted); font-size: 12px; line-height: 1.55; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.form-message { margin: 0 0 32px; padding: 18px 20px; border-left: 2px solid var(--pro-gold); background: rgba(199,160,82,.08); color: var(--pro-ivory); font-size: 15px; line-height: 1.6; }
.form-message p, .form-message ul { margin: 0; }

@media (max-width: 1024px) {
  :root { --pro-header: 84px; }
  .professional-hero { grid-template-columns: minmax(0,1.08fr) minmax(350px,.72fr); }
  .professional-hero__visual { min-height: 470px; }
  .professional-hero__aove { left: 27%; height: 76%; }
  .professional-hero__honey { right: -5%; height: 49%; }
  .professional-hero__avocado { left: -7%; width: 55% !important; }
  .family-grid { grid-template-columns: 1fr; }
  .family-panel { min-height: 520px; padding: 42px; display: grid; grid-template-columns: minmax(300px,.8fr) minmax(340px,1fr); gap: 48px; align-items: center; border-right: 0; border-bottom: 1px solid var(--pro-line); }
  .family-panel:last-child { border-bottom: 0; }
  .family-panel figure { height: 410px; margin: 0; }
  .family-panel__copy > p:not(.product-index) { min-height: 0; }
  .professional-difference { grid-template-columns: minmax(260px,.65fr) minmax(430px,1fr); gap: 60px; }
  .certification-proof { grid-template-columns: 1fr; }
  .certification-grid > img, .certification-grid .furia-certification-trigger { height: 184px; }
  .operation-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .operation-grid article:nth-child(2) { border-right: 0; }
  .operation-grid article:nth-child(n+3) { border-top: 1px solid rgba(199,160,82,.18); }
  .operation-grid article:nth-child(3) { padding-left: 0; }
  .contact-section { grid-template-columns: minmax(260px,.7fr) minmax(430px,1fr); gap: 55px; }
}

@media (max-width: 840px) {
  .professional-hero { min-height: auto; grid-template-columns: 1fr; gap: 44px; }
  .professional-hero__visual { width: min(100%, 620px); height: 500px; min-height: 0; justify-self: center; }
  .professional-hero__copy { max-width: 720px; transform: none; }
  .section-heading--wide, .certification-heading, .professional-difference, .contact-section { grid-template-columns: 1fr; gap: 38px; }
  .family-panel { min-height: 0; grid-template-columns: 1fr; gap: 24px; }
  .family-panel figure { margin: 0; }
  .difference-intro, .contact-intro { position: static; }
}

@media (max-width: 760px) {
  :root { --pro-header: auto; }
  html { scroll-padding-top: 112px; }
  .professional-access { min-height: calc(100svh - 108px); padding: 38px 15px 60px; }
  .access-panel { padding: 38px 22px; }
  .access-panel h1 { font-size: clamp(38px, 12vw, 52px); }
  .professional-hero { min-height: auto; padding: 58px 22px 74px; grid-template-columns: 1fr; gap: 40px; text-align: left; }
  .professional-hero h1 { font-size: clamp(43px, 12vw, 62px); }
  .professional-hero__visual { height: 440px; min-height: 0; }
  .professional-hero__aove { left: 28%; bottom: 9%; height: 77%; }
  .professional-hero__honey { right: -4%; bottom: 1%; height: 50%; }
  .professional-hero__avocado { left: -6%; width: 55% !important; }
  .professional-hero__visual figcaption { right: 2px; font-size: 8px; }
  .session-exit { right: 20px; bottom: 18px; }
  .professional-section { padding: 68px 22px; }
  .section-heading--wide, .certification-heading, .professional-difference, .contact-section { grid-template-columns: 1fr; gap: 34px; }
  .section-heading h2, .difference-intro h2, .professional-operation > header h2, .contact-intro h2 { font-size: clamp(40px, 12vw, 58px); }
  .section-heading { margin-bottom: 56px; }
  .family-panel { min-height: 0; padding: 34px 0 44px; grid-template-columns: 1fr; gap: 20px; }
  .family-panel figure { height: 330px; }
  .family-panel--avocado figure > img { width: min(92%, 390px); }
  .family-panel__copy h3 { font-size: clamp(40px, 12vw, 56px); }
  .family-panel .honey-set { height: 270px; }
  .difference-intro, .contact-intro { position: static; }
  .difference-grid { grid-template-columns: 1fr; }
  .difference-grid article, .difference-grid article:nth-child(odd), .difference-grid article:nth-child(even) { min-height: 0; padding: 28px 0; border-left: 0; }
  .certification-grid { gap: 12px; }
  .certification-grid > img, .certification-grid .furia-certification-trigger { height: 150px; padding: 12px; }
  .certification-grid--organic { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .certification-grid--natural { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .certification-group { padding: 26px 18px; }
  .operation-grid { grid-template-columns: 1fr; }
  .operation-grid article, .operation-grid article:first-child, .operation-grid article:nth-child(3), .operation-grid article:last-child { min-height: 0; padding: 28px 0; border-top: 1px solid rgba(199,160,82,.18); border-right: 0; }
  .operation-grid article:first-child { border-top: 0; }
  .operation-grid h3 { margin-top: 28px; }
  .professional-form { grid-template-columns: 1fr; }
  .form-wide { grid-column: auto; }
  .form-submit { align-items: stretch; flex-direction: column; }
  .form-submit .button-primary { width: 100%; }
}

@media (max-width: 540px) {
  .certification-grid--organic { grid-template-columns: 1fr 1fr; }
  .certification-grid--organic > :last-child { grid-column: 1 / -1; width: calc(50% - 6px); justify-self: center; }
}

@media (max-width: 390px) {
  .access-panel { padding-inline: 18px; }
  .professional-hero, .professional-section { padding-inline: 18px; }
  .professional-hero__visual { height: 370px; }
  .professional-hero__aove { left: 26%; bottom: 11%; height: 75%; }
  .professional-hero__honey { right: -6%; height: 48%; }
  .professional-hero__avocado { left: -5%; width: 56% !important; }
  .family-panel figure { height: 285px; }
  .family-panel .honey-set { height: 235px; }
  .certification-grid > img, .certification-grid .furia-certification-trigger { height: 132px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Revisión final de legibilidad: solo microtexto comercial y explicativo del
   interior. Hero, formularios, certificaciones y seguridad permanecen intactos. */
.professional-private .professional-section > :where(.eyebrow),
.professional-private .section-heading :where(.eyebrow),
.professional-private .difference-intro > .eyebrow,
.professional-private .professional-operation > header > .eyebrow,
.professional-private .contact-intro > .eyebrow {
  font-size: 14px;
}

.professional-private .product-index,
.professional-private .difference-grid span,
.professional-private .operation-index {
  font-size: 12px;
  line-height: 1.45;
}

.professional-private .difference-grid p,
.professional-private .operation-grid article > p:last-child {
  font-size: 15px;
  line-height: 1.65;
}

.professional-private .contact-direct a,
.professional-private .order-actions a {
  font-size: 13px;
}

.professional-private .form-submit > p {
  font-size: 14px;
  line-height: 1.55;
}
