/* Newsreader (SIL OFL) self-host — editorial display serif */
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-01.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-02.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-03.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-01.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-02.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-03.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-05.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-06.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-05.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-06.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-05.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/newsreader/newsreader-06.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ============================================================================
   BIOHEAL PREMIUM WHITE — Hyvä brand-override (build-mentes).
   A prebuilt Hyvä styles.css UTÁN tölt → felülírja a Hyvä CSS-változókat:
   kék→Bioheal-zöld primary, paper bg, ink fg, Inter+Fraunces self-host fontok.
   SZABÁLY: patikai tisztaság · nincs emoji · visszafogott árnyék.
   ============================================================================ */

/* ---- SELF-HOST FONTOK (Inter + Fraunces, latin + latin-ext magyar) -------- */
@font-face{font-family:'FrauncesWMOld';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/fraunces/fraunces-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'FrauncesWMOld';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/fraunces/fraunces-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter/inter-400-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter/inter-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter/inter-500-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter/inter-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/inter/inter-600-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/inter/inter-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/inter/inter-700-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/inter/inter-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* ---- A Hyvä CSS-VÁLTOZÓK FELÜLÍRÁSA → Premium White ----------------------- */
/* ---- SELF-HOST Roboto (GDPR; Google CDN-ről letöltve) ---- */
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:300;font-display:swap;src:url('../fonts/roboto/roboto-300-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:300;font-display:swap;src:url('../fonts/roboto/roboto-300-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/roboto/roboto-400-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/roboto/roboto-400-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:500;font-display:swap;src:url('../fonts/roboto/roboto-500-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:italic;font-weight:500;font-display:swap;src:url('../fonts/roboto/roboto-500-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:100;font-display:swap;src:url('../fonts/roboto/roboto-100-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:100;font-display:swap;src:url('../fonts/roboto/roboto-100-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/roboto/roboto-300-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/roboto/roboto-300-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/roboto/roboto-400-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/roboto/roboto-400-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/roboto/roboto-500-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/roboto/roboto-500-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/roboto/roboto-700-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/roboto/roboto-700-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/roboto/roboto-900-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'RobotoOld';font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/roboto/roboto-900-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

:root {
  /* ======================================================================
     BIOHEAL PREMIUM WHITE 2.0 — token-rendszer (Sprint 0).
     A --bh-green/--color-primary az ELFOGADOTT zöld marad (jóváhagyott home/footer).
     A paper melegebb, az ink gazdagabb, a hairline lágyabb — finom 2.0 megerősítés.
     MINDEN korábbi --bh-* név megmarad (kompatibilis) + a hiányzó --bh-sagesoft/--bh-white
     mostantól definiált (latens hiba javítva).
     ====================================================================== */

  /* ---- 2.0 KANONIKUS PALETTA (§5.1) ---- */
  --bh-ink: #2B322E;
  --bh-ink-soft: #55605A;
  --bh-muted: #6B7A70;

  --bh-white: #FFFFFF;
  --bh-paper: #FAFBF8;
  --bh-paper-2: #EEF3EC;
  --bh-mist: #F5F8F5;

  --bh-sage-50: #EEF5EF;
  --bh-sage-100: #DFEDE2;
  --bh-sage-300: #9FC4A8;
  --bh-sage-500: #5F9270;

  --bh-forest: #034C3C;
  --bh-forest-2: #123E33;
  --bh-forest-3: #0D2F26;  /* legmélyebb zárófelület (lábléc 3.0 deep réteg alja) */
  --bh-green-bright: #82CD38;

  --bh-gold: #C9A961;
  --bh-gold-soft: #E8D9B5;
  --bh-copper: #B8754A;

  --bh-hair: rgba(23, 35, 30, .12);
  --bh-hair-strong: rgba(23, 35, 30, .22);

  /* ---- Surface / shadow / radius / motion tokenek ---- */
  --bh-shadow-soft: 0 4px 20px rgba(23, 35, 30, .06);
  --bh-shadow-card: 0 10px 32px rgba(23, 35, 30, .10);
  --bh-shadow-float: 0 24px 70px rgba(23, 35, 30, .16);

  --bh-radius-sm: 10px;
  --bh-radius: 16px;
  --bh-radius-lg: 24px;
  --bh-radius-xl: 32px;

  --bh-ease-out: cubic-bezier(.16, 1, .3, 1);
  --bh-ease-soft: cubic-bezier(.22, .61, .36, 1);
  --bh-ease-snap: cubic-bezier(.2, .8, .2, 1);
  --bh-dur-btn: 160ms;
  --bh-dur-card: 200ms;
  --bh-dur-drawer: 280ms;

  /* ---- LEGACY KOMPAT (a jóváhagyott zöld + a meglévő nevek) ---- */
  --bh-green: #2d5a3d;            /* jóváhagyott brand-zöld (home/footer/CTA) — VÁLTOZATLAN */
  --bh-greendeep: #234a31;        /* VÁLTOZATLAN */
  --bh-sage: var(--bh-sage-500);  /* finomítva 2.0 sage-500-ra */
  --bh-sagesoft: var(--bh-sage-300); /* ÚJ (eddig undefined → most sage-300) */
  --bh-line: var(--bh-hair);      /* lágyabb hairline */
  --bh-mute: var(--bh-muted);

  /* ---- Hyvä globális CSS-változók 2.0 finomítása (stock storefront megerősítés) ---- */
  --color-primary: #2d5a3d;       /* jóváhagyott zöld — VÁLTOZATLAN */
  --color-primary-lighter: #3d7a52;
  --color-primary-darker: #234a31;
  --color-secondary: var(--bh-sage-500);
  --color-secondary-lighter: var(--bh-sage-300);
  --color-secondary-darker: #2d5a3d;

  --color-bg: var(--bh-paper);          /* melegebb paper site-wide */
  --color-fg: var(--bh-ink);            /* gazdagabb ink, jobb kontraszt */
  --color-fg-secondary: var(--bh-muted);
  --color-border: var(--bh-hair);       /* lágy hairline */
  --scrollthumb-color: #cdd8cd;

  /* ---- Tipográfia ---- */
  --font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --default-font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --h-family: 'Newsreader', Georgia, 'Times New Roman', serif;
}

body {
  background-color: var(--color-bg);
  color: var(--color-fg);
  font-family: var(--default-font-family);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
h1, h2, h3, h4, .font-serif {
  font-family: var(--h-family);
  letter-spacing: -0.01em;
}

/* Bioheal® regisztrált jel */
.bh-reg { font-size: 0.62em; vertical-align: super; line-height: 0; font-weight: 400; }

/* Premium White finomítás: visszafogottabb árnyékok (patikai tisztaság) */
header.sticky, .header-content { box-shadow: none; }

/* ---- LÁBLÉC 3.0 — PREMIUM FOOTER REVEAL (2026-06-12) ----------------------
   Kétrétegű zárófelület: törtfehér felső réteg (brand + linkcsoportok + 5
   statikus trust-szimbólum) + mély Bioheal-zöld záróréteg (kézírásos
   záróüzenet + valós kapcsolati blokk + jogi sor). REVEAL = CSS-only: a
   .page-footer az oldal „alsó rétege" (sticky bottom, z-index a main alatt),
   a fő tartalom görgetéskor elegánsan feltárja. CLS=0 (sticky in-flow, natúr
   magasság), JS=0, könyvtár=0. Reveal CSAK ≥1024px ÉS no-reduced-motion;
   mobil / álló tablet / reduced-motion / checkout: statikus prémium footer. */
/* ⚠️ RÉTEGZÉS-INVARIÁNSOK (pre-deploy review 06-12):
   1) a main NEM kap position/z-index-et — stacking contextet nyitna, és a
      main-en BELÜLI fixed z-50 overlay-eket (PDP fullscreen galéria,
      .bh-sticky-cta, dialógusok) a sticky header alá csapdázná;
   2) helyette a footer megy z:-1-re: a canvas (body bg → html-re propagál)
      alatta, a main in-flow háttere felette fest → a reveal így is él.
      FELTÉTEL: a html és a .page-wrapper háttér-MENTES maradjon (ha bg-t
      kapnának, a z:-1 footer eltűnik mögöttük!);
   3) min-height 900px kapu: a footer ~830px magas — alacsonyabb viewporton
      (1366×768 laptop, fekvő tablet) a pinelt footer teteje SOHA nem érhető
      el → ott statikus;
   4) login/regisztráció kizárva: ott a luma-lite 1280px-re kapja a .page-main-t
      (balra zárt) → széles képernyőn a pinelt footer átlátszana a jobb
      oldali sávban (gyökér-fix = cap a .columns-ra: P2);
   5) main bg = var(--color-bg) (paper) — a reveal-nek opacitás kell, NEM szín:
      a site-wide meleg paper-felület változatlan marad. */
.page-wrapper > main { background: var(--color-bg); padding-bottom: 56px; margin-block-end: 0; }
@media (min-width: 1024px) and (min-height: 900px) and (prefers-reduced-motion: no-preference) {
  body:not(.checkout-index-index):not(.customer-account-login):not(.customer-account-create) .page-footer { position: static; z-index: auto; } /* reveal disabled 06-16: footer clickable for bank review */
  body:not(.checkout-index-index):not(.customer-account-login):not(.customer-account-create) .page-wrapper > main { box-shadow: 0 22px 34px -26px rgba(18, 62, 51, .35); }
}

/* felső, törtfehér réteg */
.bh-footer { background: var(--bh-paper); border-top: 1px solid var(--bh-gold-soft); margin: 0; }
.bh-footer__inner { width: 100%; }
.bh-footer__top { max-width: 1240px; margin: 0 auto; padding: clamp(48px, 6vw, 72px) 20px clamp(36px, 4vw, 52px); }
.bh-footer__columns { display: grid; grid-template-columns: 1fr; gap: 36px 28px; }
.bh-footer__logolink { display: inline-block; margin: 0 0 16px; }
.bh-footer__logoimg { display: block; height: 44px; width: auto; }
.bh-footer__claim { font-family: 'Inter', 'Inter', Georgia, serif; font-weight: 600; font-size: 1.12rem; color: var(--bh-ink); line-height: 1.4; margin: 0 0 8px; max-width: 24ch; }
.bh-footer__since { font-size: .88rem; color: var(--bh-mute); margin: 0; }
.bh-footer__head { font-family: 'Inter', sans-serif; font-size: .78rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--bh-sage); margin: 0 0 10px; }
.bh-footer__list { list-style: none; margin: 0; padding: 0; }
.bh-footer__list a { display: inline-flex; align-items: center; min-height: 44px; font-size: .95rem; color: var(--bh-ink-soft); text-decoration: none; transition: color .2s; }
.bh-footer__list a:hover { color: var(--bh-green); }
.bh-footer__shipnote { font-size: .85rem; color: var(--bh-forest); font-weight: 600; margin: 10px 0 0; }
/* bizalmi sáv — 5 statikus szimbólum + rövid label (flip NINCS a footerben) */
.bh-footer__trust { list-style: none; margin: clamp(36px, 4vw, 52px) 0 0; padding: clamp(24px, 3vw, 32px) 0 0; border-top: 1px solid var(--bh-line); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
.bh-footer__trust li { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bh-footer__trust b { display: block; font-family: 'Inter', 'Inter', Georgia, serif; font-weight: 600; font-size: .95rem; color: var(--bh-ink); line-height: 1.25; }
.bh-footer__trust i { font-style: normal; font-size: .78rem; color: var(--bh-mute); }
.bh-footer__trust .bh-symbol { flex: none; }
.bh-symbol--ftrust .bh-symbol__circle { width: 46px; height: 46px; }
.bh-symbol--ftrust .bh-symbol__icon { width: 26px; height: 26px; }

/* mély Bioheal-zöld záróréteg */
.bh-footer__deep { background: linear-gradient(180deg, var(--bh-forest-2) 0%, var(--bh-forest-3) 100%); color: rgba(250, 248, 242, .92); position: relative; overflow: hidden; }
/* S8/S9 (06-12 du.): halvány fehér-áttetsző sejt-vízjel a mélyzöld rétegben —
   jobb szélen, félig kilógatva; dekoratív (pointer-events none), a tartalom
   fölötte ül. CSS mask → a szín szabadon hangolható. */
.bh-footer__deep::before {
  content: ""; position: absolute; pointer-events: none;
  width: 460px; height: 460px; right: -170px; top: 50%; transform: translateY(-50%);
  background: rgba(250, 248, 242, .05);
  -webkit-mask-image: url('/media/bioheal/brand/bioheal-cell-logo-transparent-inverse-1600.png');
  mask-image: url('/media/bioheal/brand/bioheal-cell-logo-transparent-inverse-1600.png');
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-size: contain; mask-size: contain;
}
.bh-footer__deepinner { max-width: 1240px; margin: 0 auto; padding: clamp(36px, 4.5vw, 56px) 20px clamp(26px, 3vw, 36px); position: relative; }
/* S9: fehér Bioheal logó KÖZÉPEN, a szlogen FÖLÖTT, nyugodt mérettel-térrel */
.bh-footer__deeptop { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 18px; }
.bh-footer__brandlogo { display: block; width: clamp(170px, 22vw, 220px); height: auto; margin: 0 auto 2px; }
.bh-footer__close { font-family: 'Newsreader', 'Segoe Script', cursive; font-weight: 600; font-size: clamp(1.7rem, 3.4vw, 2.3rem); color: var(--bh-gold-soft); margin: 0; transform: rotate(-2deg); width: fit-content; line-height: 1.2; margin-inline: auto; }
.bh-footer__contact { font-style: normal; display: flex; flex-direction: column; gap: 4px; font-size: .92rem; color: rgba(250, 248, 242, .85); line-height: 1.6; }
.bh-footer__contact b { font-family: 'Inter', 'Inter', Georgia, serif; font-weight: 600; font-size: 1.02rem; color: #FAF8F2; }
.bh-footer__contact a { color: rgba(250, 248, 242, .92); text-decoration: none; border-bottom: 1px solid rgba(232, 217, 181, .35); transition: border-color .2s, color .2s; }
.bh-footer__contact a:hover { color: var(--bh-gold-soft); border-color: var(--bh-gold-soft); }
.bh-footer__bottom { border-top: 1px solid rgba(232, 217, 181, .22); margin-top: clamp(24px, 3vw, 34px); padding-top: 20px; display: flex; flex-direction: column; gap: 10px; }
.bh-footer__legal { font-size: .8rem; color: rgba(250, 248, 242, .62); margin: 0; }
.bh-footer__legallinks { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 22px; margin: 0; padding: 0; }
.bh-footer__legallinks a { display: inline-flex; align-items: center; min-height: 36px; font-size: .85rem; color: rgba(250, 248, 242, .8); text-decoration: none; transition: color .2s; }
.bh-footer__legallinks a:hover { color: var(--bh-gold-soft); }
.bh-footer__disclaimer { font-size: .78rem; color: rgba(250, 248, 242, .62); margin: 0; max-width: 78ch; }
@media (min-width: 768px) {
  .bh-footer__columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
  .bh-footer__brand { grid-column: 1 / -1; }
  .bh-footer__trust { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
  /* S9 (06-12 du.): a deep-réteg desktopon IS középre rendezett oszlop —
     fehér logó felül, alatta a szlogen, alatta a kontakt (nem sor-elrendezés) */
  .bh-footer__deeptop { flex-direction: column; align-items: center; justify-content: center; gap: 18px; }
  .bh-footer__contact { text-align: center; }
  .bh-footer__bottom { flex-direction: row; align-items: baseline; justify-content: space-between; flex-wrap: wrap; }
  .bh-footer__disclaimer { flex-basis: 100%; }
}
@media (min-width: 1024px) {
  .bh-footer__columns { grid-template-columns: 1.4fr 1fr 1fr 1fr; }
  .bh-footer__brand { grid-column: auto; }
}

/* ---- 3D-NÉZET (Alpine lazy-load) ---- */
.bh-3d { margin-top: 24px; border: 1px solid var(--bh-line); border-radius: 12px; background: #fff; padding: 16px; }
.bh-3d__label { font-family: 'Inter', sans-serif; font-weight: 600; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; color: var(--bh-sage); margin: 0 0 12px; }
.bh-3d__stage { width: 100%; }
.bh-3d__trigger { display: flex; align-items: center; gap: 16px; width: 100%; border: 1px dashed var(--bh-sagesoft); border-radius: 10px; background: var(--bh-paper); padding: 14px; cursor: pointer; text-align: left; transition: border-color .2s, background-color .2s; }
.bh-3d__trigger:hover { border-color: var(--bh-green); background: #fff; }
.bh-3d__poster { width: 92px; height: 92px; object-fit: contain; flex-shrink: 0; }
.bh-3d__cta { font-family: 'Inter', sans-serif; font-weight: 600; color: var(--bh-green); font-size: 1rem; }
.bh-3d__viewer { width: 100%; height: 440px; background: #fff; border: 1px solid var(--bh-line); border-radius: 10px; --poster-color: transparent; }
.bh-3d__note { font-size: .82rem; color: var(--bh-mute); margin: 12px 0 0; }
.bh-3d--pending { background: var(--bh-paper); }
.bh-3d--pending .bh-3d__label { margin-bottom: 6px; }

/* ============================================================================
   DANCING SCRIPT — kézírás-font az idézetekhez + szlogenhez (self-host, GDPR).
   ============================================================================ */
@font-face{font-family:'DancingScriptOld';font-weight:400;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-400-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'DancingScriptOld';font-weight:400;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'DancingScriptOld';font-weight:600;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-600-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'DancingScriptOld';font-weight:600;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'DancingScriptOld';font-weight:700;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-700-latinext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'DancingScriptOld';font-weight:700;font-style:normal;font-display:swap;src:url('../fonts/dancing-script/dancing-script-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* Általános kézírás-stílus (idézetek, aláírás-szerű szövegek) */
.bh-script { font-family: 'Newsreader', 'Segoe Script', cursive; font-weight: 600; color: var(--bh-green); line-height: 1.25; }
.bh-script--gold { color: var(--bh-gold); }

/* "Élőben odaírja" szlogen — ferde + balról jobbra feltáruló reveal.
   Robusztus: alapból LÁTSZIK; a JS rakja rá az .is-armed-et (elrejt), majd
   belépéskor az .is-writing-et (feltárul). JS nélkül / reduced-motion: végig látszik. */
.bh-handwrite {
  font-family: 'Newsreader', 'Segoe Script', cursive;
  font-weight: 700;
  display: inline-block;
  position: relative;
  transform: rotate(-3.5deg);
  transform-origin: left center;
  color: var(--bh-green);
  white-space: nowrap;
  line-height: 1.1;
}
/* Fedő réteg: a szalag színével takarja a szöveget; balról jobbra elhúzódik.
   Alapból scaleX(0) (nincs takarás) → no-JS / reduced-motion → a szöveg látszik. */
.bh-handwrite::after {
  content: ''; position: absolute;
  top: -0.14em; bottom: -0.2em; left: -0.08em; right: -0.08em;
  background: var(--bh-paper);
  transform: scaleX(0); transform-origin: right center;
  pointer-events: none; z-index: 1;
}
.bh-handwrite.is-armed::after { transform: scaleX(1); }            /* a JS fedi, amíg oda nem érünk */
.bh-handwrite.is-writing::after { animation: bh-unveil 2.9s cubic-bezier(.42,.06,.4,.98) forwards; }
@keyframes bh-unveil { from { transform: scaleX(1); } to { transform: scaleX(0); } }
@media (prefers-reduced-motion: reduce) {
  .bh-handwrite::after { display: none !important; }
}

/* ============================================================================
   PREMIUM WHITE 2.0 — Sprint 0: surface-rendszer + motion-alap + a11y.
   Additív: a meglévő komponensek (home/footer/3D/szlogen) NEM változnak.
   Ezek az osztályok a Sprint 1+ komponensekhez állnak készen (dormant).
   ============================================================================ */

/* ---- Surface Level 0–5 (§5.2) ---- */
.bh-surface-0 { background: var(--bh-white); }
.bh-surface-1 { background: var(--bh-paper); }
.bh-surface-2 { background: var(--bh-white); border: 1px solid var(--bh-hair); border-radius: var(--bh-radius); }
.bh-surface-3 { background: var(--bh-sage-50); }
.bh-surface-4 { background: var(--bh-forest); color: var(--bh-white); }
.bh-surface-4 a { color: var(--bh-gold-soft); }
.bh-surface-5 { background: var(--bh-white); border: 1px solid var(--bh-gold); border-radius: var(--bh-radius); }
.bh-hairline { border: 1px solid var(--bh-hair); }
.bh-hairline-strong { border: 1px solid var(--bh-hair-strong); }
.bh-gold-rule { height: 1px; border: 0; background: linear-gradient(90deg, transparent, var(--bh-gold), transparent); }

/* ---- Shadow / radius utility ---- */
.bh-shadow-soft { box-shadow: var(--bh-shadow-soft); }
.bh-shadow-card { box-shadow: var(--bh-shadow-card); }
.bh-radius { border-radius: var(--bh-radius); }
.bh-radius-lg { border-radius: var(--bh-radius-lg); }

/* ---- Motion-alap (§6) — csak transform/opacity/box-shadow/border/bg, NINCS transition:all ---- */
.bh-btn-motion {
  transform: translateY(0) scale(1);
  transition:
    transform var(--bh-dur-btn) var(--bh-ease-out),
    box-shadow var(--bh-dur-btn) var(--bh-ease-out),
    background-color var(--bh-dur-btn) var(--bh-ease-out),
    border-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-btn-motion:hover { transform: translateY(-1px); }
.bh-btn-motion:active { transform: translateY(0) scale(.98); }

/* Sprint 2+ termékkártya hover-alap (most még nincs .bh-product-card a DOM-ban) */
.bh-product-card {
  transition:
    transform var(--bh-dur-card) var(--bh-ease-soft),
    box-shadow var(--bh-dur-card) var(--bh-ease-soft),
    border-color var(--bh-dur-card) var(--bh-ease-soft);
}
.bh-product-card:hover {
  /* Premium White: NINCS drop shadow / lift — csak finom hairline-szín váltás (TASK 1) */
  border-color: var(--bh-sage-300);
}
.bh-product-card:hover .bh-product-card__media img { transform: scale(1.03); }
.bh-product-card__media img { transition: transform var(--bh-dur-card) var(--bh-ease-soft); }

/* Opt-in finom emelés bármely surface-kártyára */
.bh-lift { transition: transform var(--bh-dur-card) var(--bh-ease-soft), box-shadow var(--bh-dur-card) var(--bh-ease-soft); }
.bh-lift:hover { transform: translateY(-2px); box-shadow: var(--bh-shadow-card); }

/* ---- Accessibility: egységes Bioheal :focus-visible (§6.5) ---- */
a:focus-visible, button:focus-visible, [role="button"]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
summary:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid rgba(130, 205, 56, .45);  /* green-bright fókuszgyűrű */
  outline-offset: 2px;
  border-radius: 4px;
}

/* ---- Szöveg-kijelölés brand ---- */
::selection { background: var(--bh-sage-100); color: var(--bh-ink); }

/* ---- Reduced motion GLOBÁLIS fallback (§6.6) ---- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ============================================================================
   SPRINT 1A — FEJLÉC: Premium White shell + trust-microbar + finom scroll-kompakt.
   Csak a header shell/markup réteg; a Hyvä search/cart/customer/menu bindingok
   érintetlenek. Patika-tiszta, vékony, gold csak micro-accent.
   ============================================================================ */
.bh-container-x { width: 100%; max-width: 1240px; margin-left: auto; margin-right: auto; }

/* Sticky, fehér shell, lágy hairline (nem harsány árnyék) */
.bh-header-shell {
  position: sticky; top: 0; z-index: 40;
  background: var(--bh-white);
  color: var(--bh-ink);
  border-bottom: 1px solid var(--bh-hair);
}

/* Trust-microbar — vékony törtfehér sáv, gold pont-elválasztók */
.bh-trust-bar {
  background: var(--bh-paper-2);
  border-bottom: 1px solid var(--bh-hair);
  overflow: hidden;
  max-height: 44px;
  transition: max-height var(--bh-dur-drawer) var(--bh-ease-soft),
              border-color var(--bh-dur-drawer) var(--bh-ease-soft);
}
.bh-trust-bar__inner {
  display: flex; align-items: center; justify-content: center;
  gap: 10px; flex-wrap: nowrap;
  padding: 9px 16px;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 11.5px; font-weight: 500; letter-spacing: .03em;
  color: var(--bh-ink-soft);
}
.bh-trust-bar__item { white-space: nowrap; }
.bh-trust-bar__dot { color: var(--bh-gold); font-weight: 700; }

/* Scroll-kompakt: a trust-bar elcsúszik, a fő sor kicsit lapul (max-height, nem height) */
.bh-header--scrolled .bh-trust-bar { max-height: 0; border-bottom-color: transparent; }
.bh-header-inner {
  transition: padding-top var(--bh-dur-drawer) var(--bh-ease-soft),
              padding-bottom var(--bh-dur-drawer) var(--bh-ease-soft);
}
.bh-header--scrolled .bh-header-inner { padding-top: 8px !important; padding-bottom: 8px !important; }

/* Ikon-gombok (csak a header.phtml inline search+cart): finom ink→zöld hover */
.bh-header__icon {
  color: var(--bh-ink);
  border-radius: 8px;
  transition: color var(--bh-dur-btn) var(--bh-ease-out),
              transform var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-header__icon:hover { color: var(--bh-green); }
.bh-header__icon:active { transform: scale(.94); }

/* TASK 5 — minicart trigger: szöveges "Kosaram" (NINCS ikon) + dinamikus darabszám-badge.
   A badge x-text=summaryCount → Alpine adatkötés; AJAX hozzáadáskor reaktívan frissül. */
.bh-header__cart-trigger {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 600;
  font-size: .95rem;
  color: var(--bh-ink);
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-header__cart-trigger:hover { color: var(--bh-green); }
.bh-header__cart-label { line-height: 1; }

/* Kosár-számláló badge — kis zöld pill a "Kosaram" mellett (NINCS drop shadow) */
.bh-cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--bh-green);
  color: var(--bh-white);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

/* Mobil: a 2 középső trust-elem rövidítve (Magyar gyártás · Ingyenes szállítás…) */
@media (max-width: 640px) {
  .bh-trust-bar__item--md, .bh-trust-bar__dot--md { display: none; }
  .bh-trust-bar__inner { font-size: 11px; gap: 8px; padding: 8px 12px; }
}

/* ============================================================================
   SPRINT 2 — bh-product-card (katalógus-kártya) + bh-badge.
   A stock Hyvä product-item helyett (item.phtml override). Minden Hyvä/Magento
   data-binding érintetlen; ez CSAK a vizuális réteg. A hover-alapot a Sprint 0
   blokk adja (.bh-product-card / __media img). Stage FEHÉR — a termékképek
   #FFFFFF-hátterű JPG-k, így a packshot zökkenőmentesen ül a kártyán.
   ============================================================================ */

/* ---- Kártya-felület ---- */
.bh-product-card {
  position: relative;
  height: 100%;
  background: var(--bh-white);
  border: 1px solid var(--bh-hair);
  border-radius: var(--bh-radius-lg);
  overflow: hidden;
  /* (transition/hover a Sprint 0 blokkból) */
}

/* ---- STAGE: packshot szín-pad (fehér, négyzetes, contain) ---- */
.bh-product-card__stage {
  position: relative;
  background: var(--bh-white);
  padding: 14px 14px 6px;
}
.bh-product-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  width: 100%;
}
.bh-product-card__media img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  /* transform-transition a Sprint 0 blokkból (hover scale 1.03) */
}

/* ---- FŐOLDALI WIDGET-kártyák (block-products-list): bg-less, flakon cream-en LEBEG ----
   Scope: CSAK a widget-rácsok (Zászlóshajó / Most ajánljuk). A PLP/kategória-kártyák
   fehér-hátterűek maradnak. A flakon transparent (_front_alpha) + drop-shadow = lebegés,
   konzisztens a hero/fókusz stage-dzsel. */
.block-products-list .bh-product-card,
.block-products-list .bh-product-card:hover {
  background: transparent;
  border-color: transparent;
  overflow: visible;
}
.block-products-list .bh-product-card__stage {
  background: transparent;
  padding: 6px 12px 2px;
}
/* a lebegő flakon: drop-shadow a TÉNYLEGES alakra (nem doboz) — finom, zöld-tintált kontaktárnyék */
.block-products-list .bh-product-card__img--float {
  filter: drop-shadow(0 16px 22px rgba(3, 76, 60, .16));
  transition: transform var(--bh-dur-card) var(--bh-ease-soft),
              filter var(--bh-dur-card) var(--bh-ease-soft);
}
.block-products-list .bh-product-card:hover .bh-product-card__img--float {
  transform: translateY(-4px) scale(1.03);
  filter: drop-shadow(0 24px 30px rgba(3, 76, 60, .22));
}
/* a body kicsit közelebb a lebegő flakonhoz */
.block-products-list .bh-product-card__body { padding-top: 4px; }

/* ============================================================================
   TERMÉK-CLAIM SZIMBÓLUMOK — „Mire jó?" sor (PDP info) + a termékre jellemző 3 állítás.
   KÖR NÉLKÜLI assetek; a kört az EGYSÉGES .bh-symbol wrapper adja (§SYM szekció).
   ============================================================================ */
.bh-claims { margin: 18px 0 4px; }
.bh-claims__title {
  font-family: 'Inter', system-ui, sans-serif; font-size: .72rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: var(--bh-muted);
  margin-bottom: 10px;
}
.bh-claims__row {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 16px 4px; border-top: 1px solid var(--bh-hair); border-bottom: 1px solid var(--bh-hair);
}
.bh-claim {
  flex: 1 1 0; min-width: 0;
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px;
}
/* PDP: nagy claim-szimbólum (48px ikon / 78px kör) */
.bh-claims--pdp .bh-symbol { --bhs-d: 78px; --bhs-i: 48px; }
.bh-claim__label {
  font-family: 'Inter', system-ui, sans-serif; font-size: .8rem; font-weight: 500; line-height: 1.25;
  color: var(--bh-ink-soft);
}

/* ---- Kártya-variáns: kompakt ikon-sor, címke nélkül (a termékre jellemző 3 állítás vizuális jelzése) ---- */
.bh-claims--card { margin: 8px 0 2px; }
/* Kártya-szimbólumok: SORKIZÁRT — a 3 szimbólum elosztva a kártya teljes szélességében
   (flex:1, mint a PDP-n), a label rejtve. Mobilon NAGYOBB ikon (Attila, 2026-06-10). */
.bh-claims--card .bh-claims__row { padding: 0; border: 0; gap: 6px; justify-content: space-between; }
.bh-claims--card .bh-claim { flex: 1 1 0; min-width: 0; }
.bh-claims--card .bh-symbol { --bhs-d: 40px; --bhs-i: 24px; }
.bh-claims--card .bh-claim__label { display: none; }
.block-products-list .bh-claims--card .bh-claims__row { justify-content: space-between; }
/* MOBIL: nagyobb kártya-szimbólumok */
@media (max-width: 639px) {
  .bh-claims--card .bh-symbol { --bhs-d: 48px; --bhs-i: 28px; }
}

/* ---- PDP formátum-jelölő (bh_form attribútum → forma-szimbólum + címke; kör NÉLKÜL) ---- */
.bh-forma { display: flex; align-items: center; gap: 10px; margin: 12px 0 2px; }
.bh-forma .bh-symbol { --bhs-i: 30px; }
.bh-forma__label {
  font-family: 'Inter', system-ui, sans-serif; font-size: .8rem; font-weight: 600;
  letter-spacing: .02em; color: var(--bh-ink-soft);
}

/* ---- PDP leírás-szekció: a 2-oszlop (leírás | spec) „rottyon" üres jobb oszlop fix ----
   A leírás teljes szélességre, a spec-tábla alá kerül (nincs magas üres oszlop). */
.catalog-product-view div[class*="grid-cols-2"]:has(.bh-pdp) {
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
.catalog-product-view div[class*="grid-cols-2"]:has(.bh-pdp) .prose,
.catalog-product-view div[class*="grid-cols-2"]:has(.bh-pdp) .bh-pdp { max-width: 80ch; }

/* ---- BADGE-réteg (bal felső, egymás alá) ---- */
.bh-product-card__badges {
  position: absolute;
  top: 12px; left: 12px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  pointer-events: none;
}
.bh-badge {
  display: inline-flex;
  align-items: center;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1;
  padding: 5px 8px;
  border-radius: 999px;
  text-transform: uppercase;
  white-space: nowrap;
}
.bh-badge--new  { background: var(--bh-sage-100); color: var(--bh-forest); }
.bh-badge--sale { background: var(--bh-copper);   color: var(--bh-white); }
.bh-badge--3d   { background: var(--bh-white); color: var(--bh-forest); border: 1px solid var(--bh-sage-300); letter-spacing: .06em; }

/* ---- BODY ---- */
.bh-product-card__body {
  padding: 6px 16px 16px;
  text-align: left;
}

/* Eyebrow: "Bioheal®" */
.bh-product-card__brand {
  display: block;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: -.01em;
  text-transform: none;
  color: var(--bh-sage-500);
  margin: 2px 0 4px;
}

/* Név — 2 sorra korlátozva (kártya-magasság egyezés) */
.bh-product-card__name-wrap { min-height: 2.7em; }
.bh-product-card__name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.35;
  color: var(--bh-ink);
  text-decoration: none;
  transition: color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-product-card__name:hover { color: var(--bh-green); }

/* Meta: forma · kiszerelés */
.bh-product-card__meta {
  margin-top: 5px;
  font-size: .82rem;
  color: var(--bh-muted);
  line-height: 1.3;
}
.bh-product-card__meta-dot { margin: 0 6px; color: var(--bh-sage-300); }

/* Hyvä product details (swatch stb.) — egyszerű, üresnél nem foglal helyet */
.bh-product-card__details:empty { display: none; }
.bh-product-card__desc { font-size: .85rem; color: var(--bh-muted); }

/* ---- ÁR ---- */
.bh-product-card__price { margin-top: 10px; }
.bh-product-card__price .price-box { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.bh-product-card__price .price {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 700;
  font-size: 1.18rem;
  color: var(--bh-ink);
  font-variant-numeric: tabular-nums;
}
.bh-product-card__price .old-price .price {
  font-size: .92rem;
  font-weight: 500;
  color: var(--bh-muted);
  text-decoration: line-through;
}
.bh-product-card__price .special-price .price,
.bh-product-card__price .minimal-price .price { color: var(--bh-copper); }
.bh-product-card__price .price-label { font-size: .72rem; color: var(--bh-muted); }

/* ---- AKCIÓK ---- */
.bh-product-card__actions { margin-top: auto; }

/* CTA: prémium zöld "KOSÁRBA" — ikonmentes, drop-shadow MENTES, teljes szélességű,
   nagy kontrasztú, uppercase (TASK 1 / Premium White). min 44px touch target. */
.bh-btn-cart {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 12px 24px;
  border: 0;
  border-radius: var(--bh-radius-sm);
  background: var(--bh-green);
  color: var(--bh-white);
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 700;
  font-size: 1.0625rem;
  line-height: 1.35;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .06em;
  cursor: pointer;
  text-decoration: none;
  transition: background-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-btn-cart:hover,
.bh-btn-cart:active { background: var(--bh-greendeep); }

/* Másodlagos ikon-gombok (kívánságlista / összehasonlítás / addto) */
.bh-product-card__iconbtn,
.bh-product-card__secondary button,
.bh-product-card__secondary a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  border: 1px solid var(--bh-hair);
  border-radius: 999px;
  background: var(--bh-white);
  color: var(--bh-ink-soft);
  cursor: pointer;
  transition: color var(--bh-dur-btn) var(--bh-ease-out),
              border-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-product-card__iconbtn:hover,
.bh-product-card__secondary button:hover,
.bh-product-card__secondary a:hover { color: var(--bh-green); border-color: var(--bh-sage-300); }
.bh-product-card__iconbtn svg,
.bh-product-card__secondary svg { width: 18px; height: 18px; }

/* Készlet-állapot (nem-eladható termék) */
.bh-product-card__stock { font-size: .85rem; color: var(--bh-muted); }

/* ---- Lista-nézet finomítás (toolbar "list" mód) ---- */
.bh-product-card--list .bh-product-card__media { aspect-ratio: auto; }
.bh-product-card--list .bh-product-card__stage { display: flex; align-items: center; }

/* ---- Mobil ---- */
@media (max-width: 480px) {
  .bh-product-card__body { padding: 4px 12px 12px; }
  .bh-product-card__name { font-size: .95rem; }
  .bh-product-card__price .price { font-size: 1.08rem; }
}

/* ============================================================================
   SPRINT 3 — PDP (termékoldal): Premium White, NINCS ikon, NINCS drop shadow.
   ============================================================================ */

/* Drop shadow tiltása a teljes PDP-n (Hyvä .card + shadow-* utility) — hairline marad */
.catalog-product-view .card { box-shadow: none; }
.catalog-product-view [class*="shadow-"] { box-shadow: none !important; }

/* Info-oszlop kártya — tiszta, levegős, árnyékmentes */
.bh-pdp-info {
  background: var(--bh-white);
  border: 1px solid var(--bh-hair);
  border-radius: var(--bh-radius-lg);
  padding: 28px;
}
@media (max-width: 768px) { .bh-pdp-info { padding: 20px; } }

/* Buy-box: ár + (mennyiség + teljes szélességű CTA) */
.bh-pdp-buybox { border-top: 1px solid var(--bh-hair); padding-top: 20px; }
.bh-pdp-price { margin-bottom: 16px; }
.bh-pdp-price .price-box { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; }
.bh-pdp-price .price {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 700; font-size: 2rem; line-height: 1.1;
  color: var(--bh-ink); font-variant-numeric: tabular-nums;
}
.bh-pdp-price .old-price .price { font-size: 1.1rem; font-weight: 500; color: var(--bh-muted); text-decoration: line-through; }
.bh-pdp-price .special-price .price { color: var(--bh-copper); }

.bh-pdp-actions { display: flex; align-items: stretch; gap: 12px; }
.bh-pdp-actions .field.qty, .bh-pdp-actions .control.qty { margin: 0; display: flex; align-items: center; }
.bh-pdp-actions input.qty, .bh-pdp-actions input[name="qty"] {
  height: 48px; width: 72px; text-align: center;
  border: 1px solid var(--bh-hair); border-radius: var(--bh-radius-sm);
  font-weight: 600; font-variant-numeric: tabular-nums; background: var(--bh-white);
}
/* a PDP CTA a mennyiség mellett nő (felülírja a bh-btn-cart width:100%-ot) */
.bh-pdp-cart { display: inline-flex; align-items: center; justify-content: center; width: auto; flex: 1 1 auto; }

/* 3D "Forgatható nézet" a galéria ALATT (media-oszlop) — ikon/árnyék mentes */
.bh-3d--gallery { margin-top: 16px; padding: 0; border: 1px solid var(--bh-hair); border-radius: var(--bh-radius-lg); background: var(--bh-white); overflow: hidden; }
.bh-3d--gallery .bh-3d__stage { width: 100%; }
.bh-3d__poster-btn { display: flex; flex-direction: column; align-items: center; gap: 14px; width: 100%; border: 0; background: transparent; cursor: pointer; padding: 20px; }
.bh-3d__poster-img { max-width: 55%; height: auto; display: block; }
.bh-3d--gallery .bh-3d__cta {
  display: inline-block;
  font-family: 'Inter', system-ui, sans-serif; font-weight: 600; font-size: .95rem;
  letter-spacing: .04em; text-transform: uppercase;
  color: var(--bh-green); background: transparent;
  border: 1px solid var(--bh-green); border-radius: var(--bh-radius-sm);
  padding: 10px 22px;
  transition: color var(--bh-dur-btn) var(--bh-ease-out), background-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-3d__poster-btn:hover .bh-3d__cta { background: var(--bh-green); color: var(--bh-white); }
.bh-3d--gallery .bh-3d__viewer { width: 100%; height: 460px; --poster-color: transparent; }

/* TASK 3 — Mobil sticky kosárba-sáv: fix alul, 1px felső hairline, NINCS drop shadow */
.bh-sticky-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; background: var(--bh-white); border-top: 1px solid var(--bh-hair); }
.bh-sticky-cta__inner {
  display: flex; align-items: center; gap: 14px;
  max-width: 1240px; margin: 0 auto;
  padding: 10px 16px;
  padding-bottom: calc(10px + env(safe-area-inset-bottom));
}
.bh-sticky-cta__price { flex: 0 0 auto; }
.bh-sticky-cta__price .price { font-family: 'Inter', system-ui, sans-serif; font-weight: 700; font-size: 1.15rem; color: var(--bh-ink); font-variant-numeric: tabular-nums; }
.bh-sticky-cta__price .price-label { display: none; }
.bh-sticky-cta__btn { width: auto; flex: 1 1 auto; min-height: 48px; }
/* Desktop: a sticky sáv SOHA (felülírja az x-show inline display-t) */
@media (min-width: 768px) { .bh-sticky-cta { display: none !important; } }

/* PDP galéria — fő-kép lapozó nyilak (prev/next): Premium White, árnyékmentes pill.
   A Hyvä galéria Alpine-logikájára épül (setActiveAndScrollTo + getPrev/NextIndex). */
#gallery-main { position: relative; }
.bh-gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px; height: 46px;
  background: rgba(255, 255, 255, .92);
  border: 1px solid var(--bh-hair);
  border-radius: 999px;
  color: var(--bh-ink);
  cursor: pointer;
  transition: color var(--bh-dur-btn) var(--bh-ease-out),
              border-color var(--bh-dur-btn) var(--bh-ease-out),
              background-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-gallery-nav:hover { color: var(--bh-green); border-color: var(--bh-sage-300); background: #fff; }
.bh-gallery-nav:focus-visible { outline: 3px solid rgba(130,205,56,.45); outline-offset: 2px; }
.bh-gallery-nav--prev { left: 8px; }
.bh-gallery-nav--next { right: 8px; }
.bh-gallery-nav svg { width: 28px; height: 28px; }

/* PDP galéria — COVERFLOW bélyegkép-sáv: az aktív kép KÖZÉPEN + legnagyobb,
   kétoldalt fokozatosan kisebbek/halványabbak; navigáláskor középre "gurul".
   Max a fő-kép széléig (a média-oszlop szélessége). Árnyékmentes. */
.bh-coverflow { width: 100%; margin-top: 18px; }
.bh-coverflow__track {
  display: flex;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  scroll-behavior: smooth;
  /* a szélső kép is középre gurulhat (fél thumb = 44px) */
  padding: 10px calc(50% - 44px);
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.bh-coverflow__track::-webkit-scrollbar { display: none; }
.bh-coverflow__thumb {
  position: relative;
  flex: 0 0 auto;
  width: 88px; height: 88px;
  padding: 0;
  border: 1px solid var(--bh-hair);
  border-radius: var(--bh-radius-sm);
  background: var(--bh-white);
  overflow: hidden;
  cursor: pointer;
  transform-origin: center center;
  transition: transform .3s var(--bh-ease-soft),
              opacity .3s var(--bh-ease-soft),
              border-color .2s var(--bh-ease-out);
}
.bh-coverflow__thumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.bh-coverflow__thumb:hover { border-color: var(--bh-sage-300); }
.bh-coverflow__thumb.is-active { border-color: var(--bh-green); }
.bh-coverflow__video { position: absolute; inset: 0; display: grid; place-items: center; }
/* Teljes képernyős nézet: a sáv alul fix, törtfehér háttér */
.bh-coverflow--fs { background: rgba(255, 255, 255, .96); border-top: 1px solid var(--bh-hair); padding-top: 6px; padding-bottom: 6px; }

/* PDP — 3D "Forgatható nézet" badge a fő-kép JOBB ALSÓ sarkában (látványos zöld pill + pulzáló
   gyűrű a figyelemfelkeltéshez). Kattintásra a 3D a fő-kép helyén nyílik. */
.bh-3d-badge {
  position: absolute;
  right: 14px; bottom: 14px;
  z-index: 7;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 15px;
  border: 0;
  border-radius: 999px;
  background: var(--bh-green);
  color: var(--bh-white);
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .02em;
  cursor: pointer;
  transition: background-color var(--bh-dur-btn) var(--bh-ease-out),
              transform var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-3d-badge:hover { background: var(--bh-greendeep); transform: translateY(-1px); }
.bh-3d-badge svg { width: 18px; height: 18px; position: relative; z-index: 1; }
.bh-3d-badge__txt { position: relative; z-index: 1; white-space: nowrap; }
/* látványos pulzáló gyűrű (green-bright), reduced-motion alatt kikapcsol */
.bh-3d-badge__pulse {
  position: absolute; inset: 0;
  border-radius: 999px;
  border: 2px solid var(--bh-green-bright);
  pointer-events: none;
  animation: bh-3d-pulse 2.2s var(--bh-ease-out) infinite;
}
@keyframes bh-3d-pulse {
  0%   { transform: scale(1);    opacity: .6; }
  70%  { transform: scale(1.4);  opacity: 0; }
  100% { transform: scale(1.4);  opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .bh-3d-badge__pulse { display: none; } }

/* 3D model-viewer a fő-kép helyén (overlay) */
.bh-3d-overlay {
  position: absolute; inset: 0;
  z-index: 8;
  background: var(--bh-white);
  border-radius: var(--bh-radius-lg);
  overflow: hidden;
}
.bh-3d-mv { width: 100%; height: 100%; --poster-color: transparent; }
.bh-3d-close {
  position: absolute; top: 10px; right: 10px;
  z-index: 9;
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px;
  border-radius: 999px;
  background: var(--bh-white);
  border: 1px solid var(--bh-hair);
  color: var(--bh-ink);
  cursor: pointer;
  transition: color var(--bh-dur-btn) var(--bh-ease-out), border-color var(--bh-dur-btn) var(--bh-ease-out);
}
.bh-3d-close:hover { color: var(--bh-green); border-color: var(--bh-sage-300); }
/* ===== Package 3A — PDP tartalmi blokkok (Premium White) — append to bioheal-brand.css ===== */
.bh-pdp{max-width:64rem;margin-top:.5rem;color:var(--bh-ink,#2a3528);line-height:1.7}
.bh-pdp__intro p{font-size:1.0625rem;margin:0 0 1rem}
.bh-pdp__section{margin:1.5rem 0;padding-top:1.25rem;border-top:1px solid var(--bh-hairline,rgba(42,53,40,.12))}
.bh-pdp__h{font-family:var(--h-family,'Inter'),Georgia,serif;font-size:1.125rem;font-weight:600;margin:0 0 .75rem;color:var(--bh-forest,#034c3c)}
.bh-pdp__table{width:100%;border-collapse:collapse;font-size:.95rem;margin:0}
.bh-pdp__table th{text-align:left;font-weight:600;padding:.5rem .75rem;background:var(--bh-paper-2,#f3f1ea);border-bottom:1px solid var(--bh-hairline,rgba(42,53,40,.14))}
.bh-pdp__table td{padding:.5rem .75rem;border-bottom:1px solid var(--bh-hairline,rgba(42,53,40,.08))}
.bh-pdp__table td:nth-child(2),.bh-pdp__table td:nth-child(3),.bh-pdp__table th:nth-child(2),.bh-pdp__table th:nth-child(3){font-variant-numeric:tabular-nums;white-space:nowrap}
.bh-pdp__dose{margin:.75rem 0 0;font-weight:500}
.bh-pdp__claims{margin:0;padding-left:1.15rem}
.bh-pdp__claims li{margin:.35rem 0}
.bh-pdp__facts{display:flex;flex-wrap:wrap;gap:.5rem 2rem;border-top:1px solid var(--bh-hairline,rgba(42,53,40,.12));padding-top:1.25rem}
.bh-pdp__facts span{font-size:.95rem}
.bh-pdp__efsa,.bh-pdp__disclaimer{font-size:.8125rem;color:var(--bh-muted,#5c6657);margin:.75rem 0 0;line-height:1.55}
.bh-pdp__disclaimer{font-style:italic}
@media(max-width:640px){.bh-pdp__facts{flex-direction:column;gap:.35rem}.bh-pdp__table{font-size:.875rem}}


/* ============================================================================
   §SYM — BIOHEAL SYMBOL SYSTEM (Symbol Sprint 2026-06-11)
   Kör nélküli szimbólum-assetek (pub/media/bioheal/symbols). A kör SOHA nincs a
   képfájlban — és a wrapper is CSAK a termék-claim variánsnál rajzol kört.
   Markup:
     <span class="bh-symbol [bh-symbol--{small|medium|large|hero}] [bh-symbol--{claim|trust|nav|footer|product-format|decorative|legal}]" aria-hidden="true">
       <span class="bh-symbol__circle">
         <img class="bh-symbol__icon" src="…/bioheal-symbol-*.svg" alt="" width=".." height=".." loading="lazy" decoding="async">
       </span>
     </span>
   A11y: dekoratív → wrapper aria-hidden="true" + üres alt (címke szövegként mellette);
   önállóan informatív → a kattintható SZÜLŐ kap aria-label-t, az alt üres marad.
   ============================================================================ */
/* ★ KÖR-SZABÁLY (Attila 2026-06-11): kör KIZÁRÓLAG a termék-állítás (claim)
   szimbólumok körül — 1px, PONTOSAN a szimbólum zöldje (#2D5A3D). Minden más
   szimbólum kör nélkül, kontextusonként hangolt (bőkezűbb) ikonmérettel. */
.bh-symbol {
  --bhs-d: 52px;                                /* claim-kör átmérő (csak --claim használja) */
  --bhs-i: 32px;                                /* ikon méret */
  --bhs-ring: #2D5A3D;                          /* = a szimbólumok zöldje */
  --bhs-bg-hover: var(--bh-sage-50, #EEF5EF);
  display: inline-flex; flex: none; line-height: 0; vertical-align: middle;
}
/* alapértelmezés: NINCS kör — a doboz az ikonra simul */
.bh-symbol__circle {
  width: var(--bhs-i); height: var(--bhs-i); flex: none;
  display: inline-flex; align-items: center; justify-content: center;
  border: 0; border-radius: 999px; background: transparent;
  transition: background-color 420ms var(--bh-ease-soft, ease),
              transform 420ms var(--bh-ease-soft, ease);
}
.bh-symbol__icon { width: var(--bhs-i); height: var(--bhs-i); display: block; }

/* ★ CSAK A CLAIM kap kört: vékony 1px, a szimbólum saját zöldjével */
.bh-symbol--claim .bh-symbol__circle {
  width: var(--bhs-d); height: var(--bhs-d);
  border: 1px solid var(--bhs-ring);
}

/* méret-variánsok (ikonméret; claimnél a --bhs-d a kör) */
.bh-symbol--small  { --bhs-d: 40px;  --bhs-i: 24px; }
.bh-symbol--medium { --bhs-d: 52px;  --bhs-i: 32px; }
.bh-symbol--large  { --bhs-d: 78px;  --bhs-i: 48px; }
.bh-symbol--hero   { --bhs-d: 116px; --bhs-i: 72px; }

/* használati variánsok (kör nélküliek — méret + tónus) */
.bh-symbol--trust  {}                                  /* méret a kártya-kontextusból */
.bh-symbol--nav    { --bhs-i: 20px; }
.bh-symbol--footer { --bhs-i: 20px; }
.bh-symbol--product-format { --bhs-i: 30px; }
.bh-symbol--decorative { opacity: .92; }
.bh-symbol--legal  { --bhs-i: 18px; }
.bh-symbol--legal .bh-symbol__icon { opacity: .85; }

/* hover/fókusz — finom, lassú, prémium (link/gomb szülőről is):
   claim → halvány sage töltés + apró skála; kör nélkülieknél csak apró skála */
a:hover .bh-symbol__circle,
a:focus-visible .bh-symbol__circle,
button:hover .bh-symbol__circle,
.bh-symbol:hover .bh-symbol__circle { transform: scale(1.05); }
a:hover .bh-symbol--claim .bh-symbol__circle,
a:focus-visible .bh-symbol--claim .bh-symbol__circle,
.bh-symbol--claim:hover .bh-symbol__circle {
  background-color: var(--bhs-bg-hover);
  transform: scale(1.04);
}
@media (prefers-reduced-motion: reduce) {
  .bh-symbol__circle { transition: none; }
  a:hover .bh-symbol__circle, a:focus-visible .bh-symbol__circle,
  button:hover .bh-symbol__circle, .bh-symbol:hover .bh-symbol__circle { transform: none; }
}

/* responsive: nagy méretek mobilon olvashatóra húzva */
@media (max-width: 639px) {
  .bh-symbol--hero  { --bhs-d: 92px; --bhs-i: 56px; }
  .bh-symbol--large { --bhs-d: 64px; --bhs-i: 40px; }
  .bh-claims--pdp .bh-symbol { --bhs-d: 64px; --bhs-i: 40px; }
}

/* ---- kontextusok (designer-pass: a kommunikációs kártyákon bőkezű méretek) ---- */
/* (a footer-link szimbólum-kontextus a LÁBLÉC 3.0-val kivezetve — a linkek
   ikon nélküliek, a szabály a §LÁBLÉC 3.0 szekcióban él) */

/* főoldal: Rólunk tény-kártyák — nagy, levegős szimbólum a cím fölött */
.bh-about-home__item .bh-symbol { --bhs-i: 46px; margin-bottom: 12px; }

/* főoldal: záró bizalmi sáv — a legnagyobb kommunikációs felület */
.bh-trust__item .bh-symbol { --bhs-i: 56px; margin-bottom: 12px; }

/* főoldal: „Vásárlás cél szerint" kategória-kártyák */
.bh-need { position: relative; }
.bh-need .bh-symbol { --bhs-i: 34px; margin-bottom: 10px; }

/* CMS oldal-belépő szimbólum (infó/jogi oldalak teteje) */
.bh-page-symbol { display: flex; margin: 2px 0 14px; }
.bh-page-symbol .bh-symbol { --bhs-i: 48px; }
.bh-legal .bh-page-symbol { margin-bottom: 10px; }

/* header menü-kontextusok (ITT és nem a bioheal-header.css-ben — a header
   2.1 redesign párhuzamosan iterál azon a fájlon, ez itt túléli) */
#header .bh-mega__catlist .bh-symbol { --bhs-i: 22px; }
.bh-msheet .bh-symbol { --bhs-i: 26px; }

/* CMS kategória-kártyák (pl. Termékek hub bh-card) */
.bh-card .bh-symbol { --bhs-i: 30px; margin-bottom: 8px; }

/* mobil: a kommunikációs kártyák szimbólumai maradjanak hangsúlyosak, de arányosak */
@media (max-width: 639px) {
  .bh-trust__item .bh-symbol { --bhs-i: 48px; }
  .bh-about-home__item .bh-symbol { --bhs-i: 40px; }
}


/* ============================================================================
   §WM — bioheal® wordmark (HOME POLISH 2026-06-11)
   Mindig kisbetűs (uppercase kontextusban is), sűrűbb betűköz.
   ============================================================================ */
.bh-wm { letter-spacing: -.02em; text-transform: none; }
.bh-wm b { font-weight: 700; }


/* ============================================================================
   §SYM-MARKERS — PDP termék-jelölő sor (2026-06-11, 5 új allitas-szimbólum:
   laktozmentes/vegan/cukormentes/hormonmentes/clean-label). A --claim variáns
   adja az 1px #2D5A3D kört (v1.1 kör-szabály); méret kompakt chip.
   ============================================================================ */
.bh-markers { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin-top: 12px; }
.bh-marker { display: inline-flex; align-items: center; gap: 8px; }
.bh-markers .bh-symbol__circle { width: 40px; height: 40px; }
.bh-markers .bh-symbol__icon { width: 24px; height: 24px; }
.bh-marker__label { font-family: 'Inter', system-ui, sans-serif; font-size: .82rem; font-weight: 600; color: var(--bh-ink-soft); }
@media (max-width: 640px) {
  .bh-markers { gap: 8px 14px; }
  .bh-markers .bh-symbol__circle { width: 36px; height: 36px; }
  .bh-markers .bh-symbol__icon { width: 22px; height: 22px; }
}

/* ============================================================================
   §SYM-FLIP — SZIMBÓLUM FLIP-KÁRTYA MIKROINTERAKCIÓ (2026-06-12)
   Elő: kanonikus kör nélküli szimbólum a zöld kör-WRAPPERBEN + cím;
   hátlap: rövid magyar magyarázat. <button> alap → billentyűzettel natívan
   aktiválható (Enter/Space), állapot: aria-pressed (Alpine x-data toggle).
   Visszafogott, NEM tech-demo: 1 lassú fordulat, halk felületek.
   Reduced-motion: forgatás helyett crossfade. JS nélkül: statikus elő-oldal.
   ============================================================================ */
/* review-fixek 06-12: (1) a lapok IN-FLOW grid-stackben (grid-area 1/1) — a
   min-height így PADLÓ, nem plafon: hosszabb szöveg/szűk viewport esetén a
   kártya nő, nem csordul; (2) nincs visibility-koreográfia — a paint-et a
   backface-visibility intézi minden megszakított szögnél, a felolvasót az
   Alpine :aria-hidden binding (a markupban); (3) RM = valódi crossfade. */
.bh-symbol-flip { position: relative; display: block; width: 100%; padding: 0; border: 0; background: none; cursor: pointer; perspective: 900px; text-align: center; font: inherit; color: inherit; -webkit-tap-highlight-color: transparent; }
.bh-symbol-flip__inner { position: relative; display: grid; transform-style: preserve-3d; transition: transform .55s cubic-bezier(.35, .1, .3, 1); }
.bh-symbol-flip.is-flipped .bh-symbol-flip__inner { transform: rotateY(180deg); }
.bh-symbol-flip__front, .bh-symbol-flip__back {
  grid-area: 1 / 1; min-height: 236px; backface-visibility: hidden; -webkit-backface-visibility: hidden;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
  border-radius: 16px; padding: 18px 14px;
}
.bh-symbol-flip__front { background: var(--bh-white); border: 1px solid var(--bh-hair); }
.bh-symbol-flip__back { background: var(--bh-sage-50); border: 1px solid var(--bh-sage-100); transform: rotateY(180deg); }
/* S4 (06-12 du.): EGYSÉGES flip-affordance — apró sarok-badge (↻ forduló nyíl)
   MINDEN fordítható elemen; prémium, nem emoji, nem harsány. Fordításkor a
   badge is átfordul. pointer-events:none — a tap a gombot éri. */
.bh-symbol-flip::after {
  content: "\21BB"; position: absolute; top: 8px; right: 8px; z-index: 2;
  width: 22px; height: 22px; border-radius: 50%;
  display: grid; place-items: center;
  font-size: .8rem; line-height: 1; color: var(--bh-sage-500);
  background: var(--bh-sage-50); border: 1px solid var(--bh-sage-100);
  transition: transform .45s cubic-bezier(.35, .1, .3, 1), background .2s;
  pointer-events: none;
}
.bh-symbol-flip.is-flipped::after { transform: rotate(180deg); background: var(--bh-white); }
@media (prefers-reduced-motion: reduce) { .bh-symbol-flip::after { transition: none; } }
.bh-symbol-flip:hover .bh-symbol-flip__front { border-color: var(--bh-sage-300); }
/* audit-fix 06-12: az 'anywhere' kötőjel NÉLKÜL tört szó közben („Immunrendsz/er")
   → break-word + hu hyphens = szóhatáron vagy kötőjellel törik */
.bh-symbol-flip__title { font-family: 'Inter', 'Inter', Georgia, serif; font-weight: 600; font-size: 1.02rem; line-height: 1.25; color: var(--bh-ink); overflow-wrap: break-word; hyphens: auto; }
/* hosszú egyszavas claim-címkék (pl. Kalciumhasznosulás) ne feszítsék a chipet */
.bh-symbol-flip__front, .bh-symbol-flip__back { min-width: 0; }
.bh-symbol-flip__text { font-size: .86rem; line-height: 1.5; color: var(--bh-ink-soft); max-width: 30ch; overflow-wrap: break-word; }
.bh-symbol-flip__hint { font-family: 'Inter', sans-serif; font-size: .72rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--bh-sage-500); }
@media (max-width: 759px) {
  .bh-symbol-flip__front, .bh-symbol-flip__back { min-height: 248px; }
  .bh-symbol-flip__text { font-size: .78rem; max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bh-symbol-flip__inner { transition: none; }
  .bh-symbol-flip.is-flipped .bh-symbol-flip__inner { transform: none; }
  .bh-symbol-flip__front, .bh-symbol-flip__back { backface-visibility: visible; -webkit-backface-visibility: visible; transition: opacity .25s ease; }
  .bh-symbol-flip__back { transform: none; opacity: 0; }
  .bh-symbol-flip.is-flipped .bh-symbol-flip__back { opacity: 1; }
  .bh-symbol-flip.is-flipped .bh-symbol-flip__front { opacity: 0; }
}

/* ---- §SYM-FLIP --mini (FLIP EXT 2026-06-12: PDP claim-chip + stack-kártya
   chip) — a fordulási sebesség/viselkedés VÁLTOZATLAN (Attila: jó), csak a
   méretek kisebbek. A lapok in-flow grid-stackben → tartalomra nőnek. ---- */
.bh-symbol-flip--mini .bh-symbol-flip__front, .bh-symbol-flip--mini .bh-symbol-flip__back { min-height: 128px; padding: 12px 10px; gap: 5px; border-radius: 14px; }
.bh-symbol-flip--mini .bh-symbol-flip__title { font-size: .8rem; line-height: 1.2; }
.bh-symbol-flip--mini .bh-symbol-flip__text { font-size: .72rem; line-height: 1.4; max-width: none; }
.bh-symbol-flip--mini .bh-symbol-flip__hint { font-size: .58rem; letter-spacing: .05em; }
.bh-symbol-flip--mini .bh-symbol { display: block; width: fit-content; margin: 0 auto; }
/* PDP „Mire jó?" sorban: a chip flex-elem (a régi statikus .bh-claim helyén) */
.bh-claims__row .bh-symbol-flip--mini { flex: 1 1 0; min-width: 0; }
.bh-claims--pdp .bh-symbol-flip--mini .bh-symbol { --bhs-d: 64px; --bhs-i: 40px; }

/* ---- §SYM-POP — mini-popover claim-buborék (termékkártya; FLIP EXT) -------
   A kártyán nincs hely flipre → tap a kis claim-körre = sage buborék a flip-
   hátlap vizuális nyelvén. ESC + kívül-kattintás zár (Alpine). A gomb a kártya
   add-to-cart FORM-jában áll → type="button" kötelező (a PHP adja). ---- */
.bh-symbol-pop { position: relative; display: inline-flex; }
.bh-symbol-pop__btn { display: inline-flex; padding: 0; border: 0; background: none; cursor: pointer; border-radius: 999px; -webkit-tap-highlight-color: transparent; }
.bh-symbol-pop__btn:hover .bh-symbol__circle { background: var(--bh-sage-50); }
.bh-symbol-pop__bubble {
  position: absolute; bottom: calc(100% + 10px); left: 50%;
  width: max-content; max-width: min(230px, calc(100vw - 32px));
  background: var(--bh-sage-50); border: 1px solid var(--bh-sage-100); border-radius: 12px;
  padding: 9px 12px; font-size: .76rem; line-height: 1.45; color: var(--bh-ink-soft); text-align: left;
  box-shadow: 0 10px 24px -14px rgba(23, 35, 30, .25);
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translateX(-50%) translateY(4px);
  transition: opacity .22s ease, transform .22s ease, visibility 0s .22s;
  z-index: 6;
}
.bh-symbol-pop__bubble b { display: block; font-family: 'Inter', 'Inter', Georgia, serif; font-weight: 600; font-size: .8rem; color: var(--bh-ink); margin-bottom: 2px; }
.bh-symbol-pop__bubble.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0); transition: opacity .22s ease, transform .22s ease, visibility 0s 0s; }
.bh-symbol-pop__bubble::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -6px; border: 6px solid transparent; border-top-color: var(--bh-sage-100); }
/* sor-széli chipek: a buborék befelé igazodik (viewport-túllógás / h-scroll ellen) */
.bh-claims__row .bh-symbol-pop:first-child .bh-symbol-pop__bubble { left: 0; transform: translateY(4px); }
.bh-claims__row .bh-symbol-pop:first-child .bh-symbol-pop__bubble.is-open { transform: translateY(0); }
.bh-claims__row .bh-symbol-pop:first-child .bh-symbol-pop__bubble::after { left: 16px; margin-left: 0; }
.bh-claims__row .bh-symbol-pop:last-child .bh-symbol-pop__bubble { left: auto; right: 0; transform: translateY(4px); }
.bh-claims__row .bh-symbol-pop:last-child .bh-symbol-pop__bubble.is-open { transform: translateY(0); }
.bh-claims__row .bh-symbol-pop:last-child .bh-symbol-pop__bubble::after { left: auto; right: 16px; margin-left: 0; }
/* méretek a STATIKUS kártya-chipek tükrében (Attila-szabály: mobilon NAGYOBB
   ikon — 48px ≤639px [tap-target ≥44px], 40px felette) + flex-paritás a
   vegyes (statikus+popover) sorok egyenletes ritmusához */
.bh-claims--card .bh-symbol-pop { flex: 1 1 0; min-width: 0; justify-content: center; }
.bh-claims--card .bh-symbol-pop .bh-symbol { --bhs-d: 40px; --bhs-i: 24px; }
@media (max-width: 639px) { .bh-claims--card .bh-symbol-pop .bh-symbol { --bhs-d: 48px; --bhs-i: 28px; } }
/* kártya-kontextus: a buborék a SORHOZ horgonyzódik (a .bh-product-card
   overflow:hidden-je miatt a chip-horgonyzott 230px-es buborékot a keskeny
   mobil PLP-kártya levágná) — a sor-széles buborék mindig a kártyán belül marad */
.bh-claims--card .bh-claims__row { position: relative; }
.bh-claims--card .bh-symbol-pop { position: static; }
.bh-claims--card .bh-symbol-pop__bubble { left: 0; right: 0; width: auto; max-width: none; transform: translateY(4px); }
.bh-claims--card .bh-symbol-pop__bubble.is-open { transform: translateY(0); }
.bh-claims--card .bh-symbol-pop__bubble::after { display: none; }
@media (prefers-reduced-motion: reduce) {
  .bh-claims--card .bh-symbol-pop__bubble, .bh-claims--card .bh-symbol-pop__bubble.is-open { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bh-symbol-pop__bubble { transform: translateX(-50%); transition: opacity .2s ease, visibility 0s .2s; }
  .bh-symbol-pop__bubble.is-open { transform: translateX(-50%); transition: opacity .2s ease, visibility 0s 0s; }
  .bh-claims__row .bh-symbol-pop:first-child .bh-symbol-pop__bubble,
  .bh-claims__row .bh-symbol-pop:first-child .bh-symbol-pop__bubble.is-open,
  .bh-claims__row .bh-symbol-pop:last-child .bh-symbol-pop__bubble,
  .bh-claims__row .bh-symbol-pop:last-child .bh-symbol-pop__bubble.is-open { transform: none; }
}
/* ============================================================
   §BGLEAP - site-wide subtle depth (Experience Leap 2026-06-14)
   ADDITIVE, appended to bioheal-brand.css (global). Page background only.
   Watermark sits BEHIND all content (fixed, z-index:-1). No layout impact.
   ============================================================ */
body{
  background:
    radial-gradient(1200px 700px at 78% -6%, rgba(46,125,50,.055), transparent 60%),
    radial-gradient(900px 620px at 6% 12%, rgba(201,162,39,.045), transparent 55%),
    radial-gradient(1100px 900px at 50% 118%, rgba(46,125,50,.05), transparent 60%),
    #FBFAF7;
  background-attachment: fixed;
}
body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.55;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='208' viewBox='0 0 240 208'><g fill='none' stroke='%232E7D32' stroke-width='1' stroke-opacity='0.06'><polygon points='60,0 120,34 120,104 60,138 0,104 0,34'/><polygon points='180,0 240,34 240,104 180,138 120,104 120,34'/><polygon points='120,104 180,138 180,208 120,242 60,208 60,138'/><circle cx='60' cy='34' r='2.2' fill='%232E7D32' fill-opacity='0.08' stroke='none'/><circle cx='120' cy='104' r='2.2' fill='%23C9A227' fill-opacity='0.10' stroke='none'/><circle cx='180' cy='34' r='2.2' fill='%232E7D32' fill-opacity='0.08' stroke='none'/></g></svg>");
  background-size:480px 416px;
}
/* keep checkout/account flows visually clean (no watermark over dense forms) */
body.checkout-index-index::before, body.checkout-cart-index::before{ opacity:.32; }

/* §ROBOTOREFRESH 2026-06-16 */
:root{--bh-fresh:#2E9E6B;}
h1,h2{font-weight:300;letter-spacing:-.014em;}h3,.bh-su-card__title,.bh-su-stage__body h2{font-weight:400;}

/* §FONTSWAP overrides — slogan in Newsreader italic (retires Dancing Script), wordmark in Newsreader */
.bh-handwrite,.bh-script,.bh-footer__close{font-family:'Newsreader',Georgia,serif !important;font-style:italic !important;font-weight:500 !important;}
.bh-wm{font-family:'Newsreader',Georgia,serif !important;font-weight:500 !important;letter-spacing:-.015em !important;}

/* §FONTSWAP2 — editorial Newsreader on headings; retire Light-300 (confident 500) */
h1,h2,h3,.bh-su-hero__h1t,.bh-su-card__title,.bh-su-stage__body h2,.bh-su-proof h2,.bh-su-pillars h2,.bh-su-group h2,.bh-su-mission h2,.bh-su-stack h2,.bh-su-stage h2{font-family:'Newsreader',Georgia,'Times New Roman',serif !important;}
h1,h2,.bh-su-hero__h1t,.bh-su-stage h2,.bh-su-stack h2{font-weight:500 !important;letter-spacing:-.012em !important;}
.bh-su-hero__h1t{font-variation-settings:'opsz' 60;}
h2{font-variation-settings:'opsz' 44;}

/* === Kosaram (minicart) finomítás — 2026-06-24 (Attila: életlen mini-kép + túl vastag/hosszú név) ===
   A cart-drawer.phtml (Bioheal override) hook-osztályaihoz. view.xml mini_cart_product_thumbnail=200px. */
@media (min-width:768px){ .bh-mc{ width:460px !important; } }   /* keskenyebb drawer (volt 640px) */
.bh-mc-line{ font-size:.92rem; line-height:1.3; }              /* kisebb sorméret (volt text-lg/18px) */
.bh-mc-name{ font-weight:500; }                                /* nem bold (<strong> helyett medium) */
.bh-mc-img{ width:80px; height:80px; object-fit:contain; flex:0 0 auto; }  /* 80px display, 200px forrás = éles */
