/*
Theme Name: PharmacyFreak Premium
Theme URI: https://pharmacyfreak.com/
Description: GeneratePress child theme that rebuilds pharmacyfreak.com with a premium dark top bar, a dark header (logo + search + Login + icon nav) and a rich dark footer (brand + social + newsletter + 3 link columns + trust badges + legal bar). Fully responsive. Quiz blocks under .pfq are never touched.
Author: G S Sachin
Author URI: https://pharmacyfreak.com/
Template: generatepress
Version: 2.2.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pharmacyfreak-premium
*/

/* =========================================================================
   The TOP BAR, HEADER, NAV and FOOTER are injected by functions.php and
   styled here. GeneratePress' own header/nav/footer are hidden just below so
   only the premium chrome shows. Edit links in functions.php (CONFIG block).
   Brand colour = --teal / --navy / --amber tokens. Quiz blocks (.pfq) safe.
   ========================================================================= */

:root{
  --navy:#0f1c30; --navy2:#0a1422; --footbg:#0c1830; --footbg2:#0a1426;
  --teal:#16b8c4; --teal-dk:#0c93a3; --amber:#f0b429;
  --ink:#0f1c30; --body:#3a4654; --muted:#6b7684; --line:#e7eaf0; --bg:#fff; --soft:#f4f7fb;
  --fl:#cdd6e2; --flink:#e4ebf3; --fmut:#8c99aa; --fline:rgba(255,255,255,.09);
  --r-sm:8px; --r:12px; --r-lg:16px;
  --sh-xs:0 1px 2px rgba(15,28,48,.05); --sh-sm:0 2px 8px rgba(15,28,48,.06); --sh:0 6px 20px rgba(15,28,48,.08);
}

/* ---- Hide GeneratePress default chrome (we inject our own) ------------- */
.site-header, #site-navigation, .main-navigation, #sticky-navigation,
.site-footer, .footer-widgets { display:none !important; }

/* ---- Base ------------------------------------------------------------- */
body{ color:var(--body); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility; }
h1,h2,h3,h4,h5,h6,.entry-title,.widget-title{ color:var(--ink); letter-spacing:-.014em; line-height:1.22; }
::selection{ background:var(--teal); color:#fff; }
.pf-wrap{ max-width:1280px; margin:0 auto; }
.pf-topbar svg,.pf-header svg,.pf-nav svg,.pf-footer svg{ display:block; }

/* ============================ TOP BAR ================================== */
.pf-topbar{ background:var(--navy2); color:#aeb9c7; font-size:13.5px; }
.pf-topbar .pf-wrap{ display:flex; align-items:center; justify-content:space-between; gap:18px; padding:9px 26px; }
.pf-topbar .pf-ti{ display:flex; align-items:center; gap:9px; }
.pf-topbar .pf-ti svg{ color:var(--teal); flex:0 0 auto; }
.pf-topbar .pf-prem{ display:flex; align-items:center; gap:8px; color:var(--amber) !important; font-weight:600; text-decoration:none; }
.pf-topbar .pf-prem svg{ color:var(--amber); }

/* ============================ HEADER ================================== */
.pf-header{ background:var(--footbg); border-bottom:1px solid var(--fline); }
.pf-header .pf-wrap{ display:flex; align-items:center; gap:24px; padding:14px 26px; }
.pf-brand{ display:flex; align-items:center; flex:0 0 auto; background:#fff; padding:7px 15px; border-radius:12px; box-shadow:0 2px 12px rgba(0,0,0,.20); }
.pf-brand img{ height:40px; width:auto; display:block; }
.pf-search{ flex:1; display:flex; align-items:center; background:rgba(255,255,255,.05); border:1px solid var(--fline); border-radius:12px; padding:4px 6px 4px 18px; max-width:560px; }
.pf-search:focus-within{ border-color:var(--teal); box-shadow:0 0 0 4px rgba(22,184,196,.14); }
.pf-search input{ flex:1; border:0 !important; outline:0; font-size:.98rem; color:#fff !important; background:transparent !important; padding:10px 6px; box-shadow:none !important; }
.pf-search input::placeholder{ color:#8593a3; }
.pf-search button{ width:46px; height:42px; border:0; border-radius:9px; background:var(--teal); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; flex:0 0 auto; }
.pf-search button:hover{ background:var(--teal-dk); }
.pf-actions{ display:flex; align-items:center; gap:16px; margin-left:auto; }
.pf-login{ display:flex; align-items:center; gap:8px; color:#fff !important; font-weight:600; font-size:.96rem; text-decoration:none; }
.pf-login svg{ color:var(--teal); }
.pf-login:hover{ color:var(--teal) !important; }
.pf-burger{ display:none; align-items:center; justify-content:center; width:46px; height:46px; border:1px solid var(--fline); border-radius:11px; background:rgba(255,255,255,.05); color:#fff; cursor:pointer; flex:0 0 auto; }
.pf-burger:hover{ background:rgba(255,255,255,.1); }

/* ============================ NAV ===================================== */
.pf-nav{ background:var(--footbg2); border-top:1px solid var(--fline); border-bottom:1px solid var(--fline); }
.pf-nav .pf-wrap{ padding:0 26px; }
#pf-primary-menu{ display:flex; align-items:center; gap:4px; list-style:none; margin:0; padding:0; flex-wrap:wrap; }
#pf-primary-menu li{ position:relative; list-style:none; }
#pf-primary-menu li a{ display:flex; align-items:center; gap:8px; color:#c4d0de; font-weight:600; font-size:.95rem; padding:15px 15px; text-decoration:none; }
#pf-primary-menu li a .pf-ic{ display:inline-flex; color:#7f8c9d; }
#pf-primary-menu > li > a:hover, #pf-primary-menu > li.current-menu-item > a{ color:var(--teal); }
#pf-primary-menu > li > a:hover .pf-ic, #pf-primary-menu > li.current-menu-item > a .pf-ic{ color:var(--teal); }
#pf-primary-menu > li.current-menu-item > a::before{ content:""; position:absolute; left:15px; right:15px; bottom:0; height:3px; background:var(--teal); border-radius:3px 3px 0 0; }
#pf-primary-menu > li.menu-item-has-children > a::after{ content:""; width:8px; height:8px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); margin-left:2px; margin-top:-3px; opacity:.5; }
/* dropdowns */
#pf-primary-menu ul.sub-menu{ position:absolute; top:100%; left:0; min-width:230px; background:var(--footbg); border:1px solid var(--fline); border-radius:12px; box-shadow:0 18px 44px rgba(0,0,0,.45); padding:6px; margin:0; list-style:none; display:none; z-index:60; }
#pf-primary-menu li:hover > ul.sub-menu{ display:block; }
#pf-primary-menu ul.sub-menu li a{ padding:10px 14px; border-radius:8px; color:#c4d0de; }
#pf-primary-menu ul.sub-menu li a:hover{ background:rgba(255,255,255,.06); color:var(--teal); }

/* ====================== CONTENT (premium, light) ====================== */
.entry-content{ line-height:1.72; }
.entry-content a:not(.button):not(.wp-block-button__link):not(.pfq a){ color:var(--teal-dk); text-decoration:none; }
.entry-content a:not(.button):not(.wp-block-button__link):not(.pfq a):hover{ color:var(--teal); text-decoration:underline; text-underline-offset:3px; }
.entry-content :is(h2,h3):not(.pfq *){ margin-top:1.8em; }
.entry-content h2:not(.pfq *){ padding-bottom:.3em; border-bottom:2px solid var(--line); }
.entry-content :is(ul,ol):not(.pfq *){ padding-left:1.3em; }
.entry-content ul:not(.pfq *) li::marker{ color:var(--teal); }
.entry-content img:not(.pfq img):not(.wp-smiley){ border-radius:var(--r); box-shadow:var(--sh-sm); height:auto; }
.entry-content blockquote:not(.pfq *){ border-left:4px solid var(--teal); background:var(--soft); border-radius:0 var(--r) var(--r) 0; padding:1em 1.25em; color:var(--ink); font-style:normal; }
.entry-content hr:not(.pfq *){ border:none; height:1px; background:linear-gradient(90deg,transparent,#d4dbe5,transparent); margin:2.2em 0; }

.entry-content table:not(.pfq table){ width:100%; border-collapse:separate; border-spacing:0; margin:1.4em 0; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; box-shadow:var(--sh-xs); font-size:.96em; }
.entry-content table:not(.pfq table) thead th{ background:linear-gradient(180deg,var(--navy),#16324f); color:#fff !important; font-weight:600; text-align:left; }
.entry-content table:not(.pfq table) th,.entry-content table:not(.pfq table) td{ padding:.7em .95em; border-bottom:1px solid var(--line); vertical-align:top; }
.entry-content table:not(.pfq table) tbody tr:nth-child(even){ background:var(--soft); }
.entry-content table:not(.pfq table) tbody tr:hover{ background:#eaf7f9; }
.entry-content table:not(.pfq table) tr:last-child td{ border-bottom:none; }

/* buttons */
.button,button.button,input[type="submit"],.wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center; gap:.5em; background:var(--teal);
  color:#fff !important; font-weight:600; border:none; border-radius:var(--r); padding:.72em 1.5em; box-shadow:var(--sh-sm); cursor:pointer; text-decoration:none;
}
.button:hover,input[type="submit"]:hover,.wp-block-button__link:hover{ background:var(--teal-dk); color:#fff !important; }

/* sidebar / widgets */
.widget-area .widget,.sidebar .widget,.inside-right-sidebar .widget{ margin-bottom:1.6em; }
.widget-area .widget-title,.sidebar .widget-title,.widget-title{ color:var(--ink) !important; font-size:1.05em; padding-bottom:.5em; margin-bottom:.9em; border-bottom:2px solid var(--line); position:relative; }
.widget-title::after{ content:""; position:absolute; left:0; bottom:-2px; width:46px; height:2px; background:var(--teal); }
.widget-area,.sidebar .widget,.inside-right-sidebar,.widget-area li,.widget-area p,.widget-area span{ color:var(--body) !important; }
.widget-area a,.sidebar .widget a,.inside-right-sidebar a{ color:var(--body) !important; text-decoration:none; }
.widget-area a:hover,.sidebar .widget a:hover,.inside-right-sidebar a:hover{ color:var(--teal) !important; }
.widget-area ul:not(.pfq *) li:not(.pfq *),.sidebar .widget ul:not(.pfq *) li:not(.pfq *){ padding:.6em 0; border-bottom:1px solid var(--line); line-height:1.5; list-style:none; }
.widget-area ul:not(.pfq *),.sidebar .widget ul:not(.pfq *){ list-style:none; padding:0; margin:0; }
.widget-area ul li:not(.pfq *):last-child,.sidebar .widget ul li:not(.pfq *):last-child{ border-bottom:none; }

/* forms */
.search-field,input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="number"],textarea,select{
  border:1px solid #d4dbe5; border-radius:var(--r); padding:.65em .9em; background:#fff; color:var(--ink);
}
input:focus,textarea:focus,select:focus{ border-color:var(--teal); box-shadow:0 0 0 4px rgba(22,184,196,.15); outline:none; }

/* ============================ FOOTER ================================== */
.pf-footer{ background:radial-gradient(1100px 460px at 12% -8%,rgba(22,184,196,.10),transparent 60%),linear-gradient(180deg,var(--footbg),var(--footbg2)); color:var(--fl); position:relative; }
.pf-footer::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--teal),var(--amber)); }
.pf-footer a{ text-decoration:none; transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease; }

/* top: brand/newsletter rail + link columns */
.pf-ftop{ display:grid; grid-template-columns:minmax(300px,1.35fr) 2.3fr; gap:54px; padding:54px 30px 42px; }

/* brand / left rail */
.pf-fbrand .pf-fb{ display:flex; align-items:center; gap:13px; margin-bottom:18px; }
.pf-fbrand .pf-mono{ width:54px; height:54px; border-radius:13px; background:linear-gradient(135deg,rgba(22,184,196,.20),rgba(255,255,255,.04)); border:1px solid var(--fline); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:23px; letter-spacing:1px; box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.pf-fbrand .pf-mono b{ color:var(--teal); }
.pf-fbrand .pf-name{ font-size:1.5rem; font-weight:800; letter-spacing:.02em; line-height:1.05; color:#fff; }
.pf-fbrand .pf-name i{ color:var(--teal); font-style:normal; }
.pf-fbrand>p{ color:#9fabbb; line-height:1.7; font-size:.94rem; max-width:340px; margin:0 0 20px; }
.pf-social{ display:flex; gap:11px; }
.pf-social a{ width:42px; height:42px; border-radius:12px; background:rgba(255,255,255,.05); border:1px solid var(--fline); display:flex; align-items:center; justify-content:center; color:#c4d0de; }
.pf-social a:hover{ background:var(--teal); border-color:var(--teal); color:#fff; transform:translateY(-2px); box-shadow:0 8px 20px rgba(22,184,196,.28); }

/* newsletter (inside left rail) */
.pf-fnews{ margin-top:30px; padding-top:26px; border-top:1px solid var(--fline); }
.pf-fnews h4{ color:#fff; font-size:.96rem; font-weight:700; letter-spacing:.08em; margin:0; position:relative; display:inline-block; padding-bottom:8px; }
.pf-fnews h4::after{ content:""; position:absolute; left:0; bottom:0; width:38px; height:3px; background:var(--amber); border-radius:3px; }
.pf-fnews>p{ color:#9fabbb; line-height:1.6; font-size:.9rem; margin:14px 0 14px; max-width:340px; }
.pf-nrow{ display:flex; background:rgba(255,255,255,.04); border:1px solid var(--fline); border-radius:12px; padding:5px; max-width:360px; }
.pf-nrow:focus-within{ border-color:var(--teal); box-shadow:0 0 0 4px rgba(22,184,196,.14); }
.pf-nrow input{ flex:1; border:0 !important; background:transparent !important; outline:0; color:#fff; font-size:.93rem; padding:10px 12px; box-shadow:none !important; }
.pf-nrow input::placeholder{ color:#7f8c9d; }
.pf-nrow button{ width:46px; height:42px; border:0; border-radius:9px; background:var(--teal); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.pf-nrow button:hover{ background:var(--teal-dk); }
.pf-nspam{ display:flex; align-items:center; gap:8px; color:#8593a3; font-size:.82rem; margin:12px 0 18px; }
.pf-goprem{ display:inline-flex; align-items:center; gap:9px; border:1.5px solid var(--amber); color:var(--amber) !important; font-weight:700; font-size:.92rem; padding:11px 20px; border-radius:11px; }
.pf-goprem:hover{ background:var(--amber); color:#0f1c30 !important; box-shadow:0 8px 22px rgba(240,180,41,.22); }

/* link columns */
.pf-fcols{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px 30px; }
.pf-fcol{ min-width:0; }
.pf-fcol h4{ color:#fff !important; font-size:.8rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin:0 0 14px !important; position:relative; padding-bottom:10px; border:0 !important; }
.pf-fcol h4::after{ content:""; position:absolute; left:0; bottom:0; width:26px; height:2px; background:var(--teal); border-radius:2px; }
.pf-fcol ul{ list-style:none !important; margin:0 !important; padding:0 !important; }
.pf-fcol ul li{ list-style:none !important; margin:0 !important; padding:0 !important; border:0 !important; }
.pf-fcol ul li::marker{ content:"" !important; color:transparent !important; }
.pf-fcol li a{ display:inline-flex !important; align-items:center; color:#9fabbb !important; font-size:.9rem; line-height:1.45; padding:5px 0 !important; text-decoration:none !important; background:none !important; }
.pf-fcol li a::before{ content:""; width:0; height:1.5px; background:var(--teal); border-radius:2px; transition:width .18s ease,margin-right .18s ease; }
.pf-fcol li a:hover{ color:#fff !important; }
.pf-fcol li a:hover::before{ width:12px; margin-right:8px; }

/* trust badges */
.pf-ftrust{ border-top:1px solid var(--fline); background:rgba(255,255,255,.02); }
.pf-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding:26px 30px; }
.pf-tcard{ display:flex; align-items:center; gap:15px; }
.pf-tcard .pf-ico{ width:52px; height:52px; border-radius:14px; background:rgba(22,184,196,.12); border:1px solid rgba(22,184,196,.3); display:flex; align-items:center; justify-content:center; color:var(--teal); flex:0 0 auto; }
.pf-tcard b{ display:block; color:#fff; font-size:.96rem; font-weight:700; margin-bottom:3px; }
.pf-tcard span{ color:#93a0b0; font-size:.84rem; line-height:1.4; }
.pf-grid .pf-tcard:not(:last-child){ border-right:1px solid var(--fline); padding-right:20px; }

/* bottom bar */
.pf-fbot{ border-top:1px solid var(--fline); }
.pf-row{ display:flex; align-items:center; justify-content:space-between; gap:14px 22px; padding:20px 30px; flex-wrap:wrap; }
.pf-copy{ color:#8593a3 !important; font-size:.86rem; }
.pf-blinks{ display:flex; align-items:center; flex-wrap:wrap; list-style:none !important; margin:0; padding:0; }
.pf-blinks a{ color:#9fabbb !important; font-size:.84rem; padding:2px 14px; position:relative; text-decoration:none !important; background:none !important; }
.pf-blinks a:not(:last-child)::after{ content:""; position:absolute; right:0; top:50%; transform:translateY(-50%); width:1px; height:12px; background:var(--fline); }
.pf-blinks a:first-child{ padding-left:0; }
.pf-blinks a:last-child{ padding-right:0; }
.pf-blinks a:hover{ color:var(--teal) !important; }

/* ============================ RESPONSIVE ============================== */
@media(max-width:1000px){
  .pf-topbar .pf-center,.pf-topbar .pf-left{ display:none; }
  .pf-topbar .pf-wrap{ justify-content:center; }
}
@media(max-width:980px){
  .pf-ftop{ grid-template-columns:1fr; gap:40px; }
  .pf-fbrand>p{ max-width:none; }
  .pf-fnews{ max-width:520px; }
  .pf-fnews>p{ max-width:none; }
}
@media(max-width:880px){
  .pf-header .pf-wrap{ flex-wrap:wrap; gap:14px; }
  .pf-search{ order:3; flex:1 1 100%; max-width:none; }
  .pf-grid{ grid-template-columns:1fr 1fr; }
  .pf-grid .pf-tcard{ border-right:none !important; padding-right:0 !important; }
}
@media(max-width:768px){
  .pf-burger{ display:flex; }
  .pf-nav{ display:none; }
  .pf-nav.pf-open{ display:block; }
  #pf-primary-menu{ flex-direction:column; align-items:stretch; }
  #pf-primary-menu > li > a{ padding:14px 26px; border-bottom:1px solid var(--fline); }
  #pf-primary-menu > li.current-menu-item > a::before{ left:0; right:auto; top:0; bottom:0; width:4px; height:auto; border-radius:0; }
  #pf-primary-menu > li.menu-item-has-children > a::after{ margin-left:auto; }
  #pf-primary-menu ul.sub-menu{ position:static; display:block; box-shadow:none; border:none; padding:0 0 0 18px; min-width:0; background:transparent; }
}
@media(max-width:600px){
  .pf-fcols{ grid-template-columns:1fr 1fr; }
}
@media(max-width:560px){
  .pf-header .pf-wrap{ padding:12px 18px; gap:12px; }
  .pf-brand{ padding:6px 12px; }
  .pf-brand img{ height:34px; }
  .pf-login span{ display:none; }
  .pf-login{ gap:0; }
  .pf-burger{ width:42px; height:42px; }
  .pf-actions{ gap:10px; }
  .pf-ftop{ padding:42px 22px 34px; }
  .pf-grid{ grid-template-columns:1fr; padding:24px 22px; }
  .pf-row{ padding:18px 22px; }
  .pf-blinks a:first-child{ padding-left:0; }
  .entry-content table:not(.pfq table){ display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; white-space:nowrap; }
}
@media(max-width:420px){
  .pf-fcols{ grid-template-columns:1fr; gap:22px; }
}



/* =========================================================================
   Header Light Refresh v2.2.2
   - Dark pre-header like footer
   - Light main header
   - Better desktop alignment
   - Cleaner mobile header/search/menu
   - Footer and body design unchanged
   ========================================================================= */

/* Dark premium pre-header */
.pf-topbar{
  background:linear-gradient(90deg,var(--footbg2),var(--footbg));
  color:var(--fl);
  border-bottom:1px solid var(--fline);
  box-shadow:none;
}
.pf-topbar .pf-wrap{
  min-height:42px;
  padding:7px 26px;
}
.pf-topbar .pf-ti{
  color:var(--fl);
  font-weight:600;
}
.pf-topbar .pf-ti svg{
  color:var(--teal);
}
.pf-topbar .pf-prem{
  color:var(--amber) !important;
  border:1px solid rgba(240,180,41,.55);
  border-radius:10px;
  padding:6px 14px;
  background:rgba(255,255,255,.04);
  line-height:1;
  white-space:nowrap;
}
.pf-topbar .pf-prem:hover{
  background:var(--amber);
  color:var(--navy2) !important;
  border-color:var(--amber);
}
.pf-topbar .pf-prem svg{
  color:currentColor;
}

/* Light, aligned main header */
.pf-header{
  background:#FFFFFF;
  border-bottom:1px solid #E6ECEF;
}
.pf-header .pf-wrap{
  display:grid;
  grid-template-columns:minmax(170px,240px) minmax(320px,560px) minmax(120px,auto);
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:18px 26px;
}
.pf-brand{
  background:transparent;
  box-shadow:none;
  padding:0;
  border-radius:0;
  min-width:0;
  justify-self:start;
}
.pf-brand img{
  height:44px;
  max-width:220px;
  object-fit:contain;
}
.pf-search{
  width:100%;
  max-width:560px;
  justify-self:center;
  background:#FFFFFF;
  border:1px solid #DDE7EA;
  border-radius:14px;
  padding:5px 7px 5px 18px;
  box-shadow:0 4px 16px rgba(23,59,87,.07);
}
.pf-search:focus-within{
  border-color:#68B3A8;
  box-shadow:0 0 0 4px rgba(104,179,168,.14),0 4px 16px rgba(23,59,87,.07);
}
.pf-search input{
  color:#1D3449 !important;
  min-width:0;
}
.pf-search input::placeholder{
  color:#8A98A4;
}
.pf-search button{
  width:56px;
  height:44px;
  border-radius:11px;
  background:#68B3A8;
  box-shadow:0 6px 14px rgba(104,179,168,.22);
}
.pf-search button:hover{
  background:#4A8E85;
}
.pf-actions{
  justify-self:end;
  margin-left:0;
  gap:14px;
}
.pf-login{
  color:#1D3449 !important;
}
.pf-login svg{
  color:#4A8E85;
}
.pf-login:hover{
  color:#4A8E85 !important;
}
.pf-burger{
  background:#FFFFFF;
  border-color:#DDE7EA;
  color:#1D3449;
}
.pf-burger:hover{
  background:#F8FBFA;
}

/* Light nav with visible separation from body */
.pf-nav{
  background:#FFFFFF;
  border-top:1px solid #E6ECEF;
  border-bottom:1px solid #DCE6EA;
  box-shadow:0 8px 18px rgba(23,59,87,.08);
}
.pf-nav .pf-wrap{
  padding:0 26px;
}
#pf-primary-menu{
  gap:18px;
}
#pf-primary-menu li a{
  color:#1D3449;
  padding:16px 12px;
}
#pf-primary-menu li a .pf-ic{
  color:#173B57;
}
#pf-primary-menu > li > a:hover,
#pf-primary-menu > li.current-menu-item > a{
  color:#4A8E85;
}
#pf-primary-menu > li > a:hover .pf-ic,
#pf-primary-menu > li.current-menu-item > a .pf-ic{
  color:#4A8E85;
}
#pf-primary-menu > li.current-menu-item > a::before{
  background:#68B3A8;
}
#pf-primary-menu ul.sub-menu{
  background:#FFFFFF;
  border:1px solid #E6ECEF;
  box-shadow:0 18px 44px rgba(23,59,87,.16);
}
#pf-primary-menu ul.sub-menu li a{
  color:#1D3449;
}
#pf-primary-menu ul.sub-menu li a:hover{
  background:#F8FBFA;
  color:#4A8E85;
}

@media(max-width:1000px){
  .pf-topbar .pf-wrap{
    justify-content:center;
  }
}

@media(max-width:880px){
  .pf-header .pf-wrap{
    grid-template-columns:auto 1fr auto;
    gap:12px;
  }
  .pf-search{
    order:0;
    grid-column:1 / -1;
    max-width:none;
    margin-top:8px;
  }
}

@media(max-width:768px){
  .pf-topbar .pf-wrap{
    min-height:40px;
    padding:7px 16px;
  }
  .pf-topbar .pf-prem{
    font-size:13px;
    padding:6px 12px;
  }
  .pf-header .pf-wrap{
    padding:13px 18px 12px;
    grid-template-columns:1fr auto;
    gap:10px 12px;
  }
  .pf-brand{
    grid-column:1;
    grid-row:1;
  }
  .pf-brand img{
    height:38px;
    max-width:165px;
  }
  .pf-actions{
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
  }
  .pf-login{
    width:42px;
    height:42px;
    border:1px solid #DDE7EA;
    border-radius:11px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#FFFFFF;
  }
  .pf-login span{
    display:none;
  }
  .pf-burger{
    width:42px;
    height:42px;
  }
  .pf-search{
    grid-column:1 / -1;
    grid-row:2;
    width:100%;
    margin-top:5px;
    padding:4px 6px 4px 14px;
    border-radius:13px;
  }
  .pf-search input{
    font-size:16px;
    padding:10px 4px;
  }
  .pf-search button{
    width:50px;
    height:40px;
    flex:0 0 50px;
  }
  .pf-nav{
    display:none;
    background:#FFFFFF;
    border-top:1px solid #E6ECEF;
    box-shadow:0 10px 24px rgba(23,59,87,.10);
  }
  .pf-nav.pf-open{
    display:block;
  }
  .pf-nav .pf-wrap{
    padding:0;
  }
  #pf-primary-menu{
    gap:0;
  }
  #pf-primary-menu > li > a{
    padding:14px 18px;
    border-bottom:1px solid #E6ECEF;
  }
  #pf-primary-menu ul.sub-menu{
    background:#F8FBFA;
    border:none;
    border-radius:0;
    box-shadow:none;
    padding:0;
  }
  #pf-primary-menu ul.sub-menu li a{
    color:#435465;
    padding:12px 18px 12px 42px;
  }
}

@media(max-width:420px){
  .pf-header .pf-wrap{
    padding-left:16px;
    padding-right:16px;
  }
  .pf-brand img{
    height:36px;
    max-width:145px;
  }
  .pf-search input::placeholder{
    font-size:15px;
  }
}


/* =========================================================================
   Mobile Header + Small Phone Footer Stability Fix v2.2.3
   CSS-only: hides mobile account icon, draws a reliable hamburger icon, and
   prevents old/small mobile footer trust cards from overlapping.
   ========================================================================= */

/* Keep mobile menu button visible even if SVG rendering is inconsistent. */
.pf-burger{
  position:relative;
  font-size:0;
  line-height:1;
}
.pf-burger svg{
  display:none !important;
}
.pf-burger::before{
  content:"";
  width:20px;
  height:2px;
  border-radius:2px;
  background:#173B57;
  box-shadow:0 -6px 0 #173B57,0 6px 0 #173B57;
  display:block;
}
.pf-burger:hover::before{
  background:#4A8E85;
  box-shadow:0 -6px 0 #4A8E85,0 6px 0 #4A8E85;
}

@media(max-width:768px){
  /* Mobile: show only hamburger. The separate account/login icon is removed. */
  .pf-header .pf-actions{
    gap:0 !important;
  }
  .pf-header .pf-login{
    display:none !important;
  }
  .pf-burger{
    display:flex !important;
    width:44px;
    height:44px;
    border:1px solid #DDE7EA;
    border-radius:12px;
    background:#FFFFFF;
    color:#173B57;
    align-items:center;
    justify-content:center;
    box-shadow:0 3px 12px rgba(23,59,87,.06);
  }
  .pf-burger:hover{
    background:#F8FBFA;
  }

  /* Cleaner mobile header alignment: logo left, hamburger right, search full row. */
  .pf-header .pf-wrap{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 44px !important;
    align-items:center;
  }
  .pf-brand{
    justify-self:start;
    min-width:0;
  }
  .pf-actions{
    justify-self:end;
  }
  .pf-search{
    grid-column:1 / -1 !important;
    width:100% !important;
  }
}

@media(max-width:560px){
  /* Old/small phone footer guard: avoid grid/flex overlap in trust badges. */
  .pf-footer,
  .pf-footer *{
    box-sizing:border-box;
  }
  .pf-ftrust{
    overflow:hidden;
  }
  .pf-grid{
    display:block !important;
    padding:22px 22px 12px !important;
  }
  .pf-tcard{
    display:flex !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    align-items:flex-start !important;
    gap:14px !important;
    padding:0 0 16px 0 !important;
    margin:0 0 16px 0 !important;
    border-right:0 !important;
    border-bottom:1px solid var(--fline) !important;
    clear:both;
  }
  .pf-tcard:last-child{
    border-bottom:0 !important;
    margin-bottom:0 !important;
  }
  .pf-tcard .pf-ico{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    flex:0 0 48px !important;
  }
  .pf-tcard div{
    min-width:0 !important;
  }
  .pf-tcard b,
  .pf-tcard span{
    overflow-wrap:anywhere;
  }
}

@media(max-width:380px){
  .pf-topbar .pf-prem{
    max-width:100%;
    white-space:nowrap;
  }
  .pf-brand img{
    max-width:132px;
  }
  .pf-search{
    padding-left:12px !important;
  }
  .pf-search button{
    width:48px !important;
    flex-basis:48px !important;
  }
  .pf-search input{
    font-size:16px;
  }
}


/* =========================================================================
   Mobile + Tablet Header Layout v2.2.4
   Target: dark ads-free pre-header + one-row compact header on mobile/tablet.
   Body/footer design unchanged. CSS-only, no extra JS or assets.
   ========================================================================= */

/* Correct premium link/button style on dark strip. */
.pf-topbar{
  background:linear-gradient(90deg,#0A1728,#102D43) !important;
}
.pf-topbar .pf-prem{
  border-color:rgba(197,163,90,.72) !important;
  color:#C5A35A !important;
}
.pf-topbar .pf-prem:hover{
  background:#C5A35A !important;
  color:#0A1728 !important;
}

@media(max-width:1024px){
  /* On tablet/mobile, keep the top dark strip clean like the reference. */
  .pf-topbar .pf-wrap{
    justify-content:center !important;
    min-height:40px !important;
    padding:6px 14px !important;
  }
  .pf-topbar .pf-ti{
    display:none !important;
  }
  .pf-topbar .pf-prem{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    min-height:30px !important;
    padding:6px 14px !important;
    border-radius:9px !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  /* Tablet/mobile header: logo + search + hamburger in one row. */
  .pf-header .pf-wrap{
    display:grid !important;
    grid-template-columns:minmax(92px,150px) minmax(0,1fr) 44px !important;
    align-items:center !important;
    gap:10px !important;
    padding:13px 18px !important;
  }
  .pf-brand{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:start !important;
    min-width:0 !important;
    padding:0 !important;
  }
  .pf-brand img{
    height:40px !important;
    max-width:150px !important;
    width:auto !important;
    object-fit:contain !important;
  }
  .pf-search{
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:4px 5px 4px 14px !important;
    border-radius:12px !important;
    box-shadow:0 3px 12px rgba(23,59,87,.07) !important;
  }
  .pf-search input{
    min-width:0 !important;
    width:100% !important;
    font-size:15px !important;
    padding:9px 4px !important;
  }
  .pf-search button{
    width:42px !important;
    height:38px !important;
    flex:0 0 42px !important;
    border-radius:9px !important;
  }
  .pf-header .pf-actions{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:end !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:0 !important;
    min-width:44px !important;
    margin:0 !important;
  }
  .pf-header .pf-login{
    display:none !important;
  }
  .pf-burger{
    display:flex !important;
    width:42px !important;
    height:42px !important;
    border:1px solid #DDE7EA !important;
    border-radius:12px !important;
    background:#FFFFFF !important;
    color:#173B57 !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 3px 12px rgba(23,59,87,.06) !important;
  }

  /* Navigation is opened only by hamburger on tablet/mobile. */
  .pf-nav{
    display:none !important;
    background:#FFFFFF !important;
    border-top:1px solid #E6ECEF !important;
    box-shadow:0 10px 24px rgba(23,59,87,.10) !important;
  }
  .pf-nav.pf-open{
    display:block !important;
  }
}

@media(max-width:560px){
  .pf-header .pf-wrap{
    grid-template-columns:76px minmax(0,1fr) 42px !important;
    gap:8px !important;
    padding:12px 16px !important;
  }
  .pf-brand img{
    height:35px !important;
    max-width:76px !important;
  }
  .pf-search{
    padding-left:11px !important;
  }
  .pf-search input{
    font-size:16px !important;
    padding:8px 3px !important;
  }
  .pf-search input::placeholder{
    font-size:14px !important;
  }
  .pf-search button{
    width:40px !important;
    height:36px !important;
    flex-basis:40px !important;
  }
  .pf-burger{
    width:40px !important;
    height:40px !important;
  }
}

@media(max-width:380px){
  .pf-header .pf-wrap{
    grid-template-columns:68px minmax(0,1fr) 40px !important;
    gap:7px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .pf-brand img{
    max-width:68px !important;
  }
  .pf-search{
    padding-left:10px !important;
  }
  .pf-search input::placeholder{
    font-size:13px !important;
  }
  .pf-search button{
    width:38px !important;
    flex-basis:38px !important;
  }
  .pf-burger{
    width:38px !important;
    height:38px !important;
  }
}


/* =========================================================================
   Header Icon Reliability Fix v2.2.5
   - Keeps mobile/tablet header exactly the same layout.
   - Forces search and hamburger icons visible even when SVG/currentColor is
     affected by cache/minify/browser CSS on older phones.
   - CSS only; no extra assets or libraries.
   ========================================================================= */
.pf-search button{
  position:relative !important;
  color:#FFFFFF !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:visible !important;
}
.pf-search button svg{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  min-height:18px !important;
  flex:0 0 18px !important;
  color:#FFFFFF !important;
  stroke:#FFFFFF !important;
  fill:none !important;
  pointer-events:none !important;
}
.pf-search button svg circle,
.pf-search button svg path,
.pf-search button svg line{
  stroke:#FFFFFF !important;
  fill:none !important;
}
.pf-burger{
  position:relative !important;
  color:#173B57 !important;
  font-size:0 !important;
  line-height:1 !important;
  overflow:visible !important;
}
.pf-burger::before,
.pf-burger::after{
  content:none !important;
  display:none !important;
}
.pf-burger svg{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:21px !important;
  height:21px !important;
  min-width:21px !important;
  min-height:21px !important;
  flex:0 0 21px !important;
  color:#173B57 !important;
  stroke:#173B57 !important;
  fill:none !important;
  pointer-events:none !important;
}
.pf-burger svg line,
.pf-burger svg path{
  stroke:#173B57 !important;
  fill:none !important;
}
@media(max-width:768px){
  .pf-header .pf-login{ display:none !important; }
  .pf-header .pf-actions{ min-width:40px !important; }
}
@media(max-width:380px){
  .pf-search button svg{ width:17px !important; height:17px !important; min-width:17px !important; min-height:17px !important; }
  .pf-burger svg{ width:20px !important; height:20px !important; min-width:20px !important; min-height:20px !important; }
}
