/*
Theme Name: PHVSBNG Ultimate
Theme URI: https://phvsbng.com
Author: PHVSBNG
Description: PHVSBNG single language access theme for VSBNG and VSBNG.COM navigation.
Version: 1.0.0
Requires PHP: 8.0
Text Domain: phvsbng
*/

:root{
  --bg:#060403;
  --bg2:#110b05;
  --panel:#151006;
  --panel2:#211609;
  --gold:#f7c64a;
  --gold2:#ffe49a;
  --red:#e32622;
  --text:#fff7dc;
  --muted:#d0bf8d;
  --line:rgba(247,198,74,.22);
  --soft:rgba(255,255,255,.045);
  --max:1180px;
  --radius:16px;
  --shadow:0 26px 80px rgba(0,0,0,.46);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 8% 0%,rgba(227,38,34,.22),transparent 30%),
    radial-gradient(circle at 90% 7%,rgba(247,198,74,.18),transparent 32%),
    linear-gradient(180deg,#070403 0%,#050302 52%,#100904 100%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.phv-shell{width:min(var(--max),calc(100% - 32px));margin:auto}

.phv-top{
  position:sticky;
  top:0;
  z-index:99;
  background:rgba(6,4,3,.88);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(16px);
}
.phv-nav{
  height:76px;
  display:flex;
  align-items:center;
  gap:18px;
}
.phv-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:190px;
}
.phv-brand img{
  width:155px;
  max-height:58px;
  object-fit:contain;
}
.phv-brand strong{
  display:block;
  color:var(--gold);
  font-size:20px;
  letter-spacing:.08em;
}
.phv-brand span{
  display:block;
  color:var(--muted);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.phv-menu{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:4px;
}
.phv-menu a{
  padding:10px 11px;
  border-radius:999px;
  color:#ead9a5;
  font-size:14px;
  font-weight:800;
}
.phv-menu a:hover{
  color:#fff;
  background:rgba(247,198,74,.12);
}
.phv-main-btn{
  padding:12px 17px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--gold),#ff9d1d);
  color:#1b0b00;
  font-weight:1000;
  box-shadow:0 12px 30px rgba(247,198,74,.24);
}
.phv-burger{
  display:none;
  margin-left:auto;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--line);
  background:#130d05;
}
.phv-burger span{
  display:block;
  width:19px;
  height:2px;
  background:var(--gold);
  margin:5px auto;
}

.phv-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(6,4,3,.96),rgba(6,4,3,.66),rgba(6,4,3,.98)),
    var(--hero-img,none) center/cover no-repeat;
}
.phv-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(115deg,transparent 0 40%,rgba(247,198,74,.08) 40% 41%,transparent 41% 100%),
    radial-gradient(circle at 55% 35%,rgba(247,198,74,.12),transparent 28%);
  pointer-events:none;
}
.phv-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 430px;
  gap:30px;
  align-items:center;
  min-height:640px;
  padding:54px 0;
}
.phv-pill{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:8px 13px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(247,198,74,.08);
  color:var(--gold2);
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.phv-pill:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--red);
  box-shadow:0 0 18px var(--red);
}
h1{
  margin:18px 0 16px;
  font-size:clamp(38px,5vw,72px);
  line-height:.95;
}
.phv-lead{
  max-width:720px;
  margin:0 0 24px;
  color:#ead9a8;
  font-size:18px;
  line-height:1.82;
}
.phv-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.phv-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 18px;
  border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.045);
  color:#fff;
  font-weight:950;
}
.phv-btn.gold{
  border:0;
  color:#190b00;
  background:linear-gradient(135deg,var(--gold),#ff9c1f);
}
.phv-btn.red{
  border:0;
  background:linear-gradient(135deg,#ff3d34,#a90e0e);
}

.phv-console{
  border:1px solid var(--line);
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(247,198,74,.14),transparent 28%),
    linear-gradient(180deg,rgba(31,22,9,.96),rgba(9,7,4,.96));
  box-shadow:var(--shadow);
  padding:18px;
}
.phv-console-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
}
.phv-console-head strong{
  color:var(--gold);
  font-size:21px;
}
.phv-console-head span{
  color:var(--muted);
  font-size:12px;
}
.phv-line-list{display:grid;gap:12px}
.phv-line{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:14px;
  border:1px solid rgba(247,198,74,.16);
  background:rgba(255,255,255,.045);
}
.phv-line b{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#170a00;
  background:linear-gradient(135deg,var(--gold),#ffac22);
  font-weight:1000;
}
.phv-line strong{display:block;font-size:16px}
.phv-line span span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}
.phv-line em{
  font-style:normal;
  padding:7px 10px;
  border-radius:999px;
  background:#ffe18c;
  color:#180900;
  font-size:12px;
  font-weight:1000;
}

.phv-signal{
  background:#0b0704;
  border-bottom:1px solid var(--line);
}
.phv-signal-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
}
.phv-signal-card{
  padding:18px;
  background:linear-gradient(180deg,rgba(247,198,74,.08),rgba(255,255,255,.015));
}
.phv-signal-card strong{
  display:block;
  color:var(--gold);
  font-size:22px;
}
.phv-signal-card span{
  display:block;
  color:var(--muted);
  font-size:13px;
  margin-top:4px;
}

.phv-section{padding:58px 0}
.phv-section.alt{
  background:rgba(255,255,255,.025);
  border-block:1px solid rgba(247,198,74,.08);
}
.phv-head{max-width:850px;margin-bottom:24px}
.phv-head h2,
.phv-content h2{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(26px,3vw,42px);
}
.phv-head p,
.phv-content p{
  color:#decd99;
  line-height:1.86;
  font-size:16px;
}
.phv-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.phv-card{
  position:relative;
  overflow:hidden;
  min-height:190px;
  padding:20px;
  border-radius:16px;
  border:1px solid rgba(247,198,74,.15);
  background:
    radial-gradient(circle at 86% 12%,rgba(247,198,74,.16),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));
  box-shadow:0 16px 40px rgba(0,0,0,.28);
}
.phv-card:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:linear-gradient(90deg,var(--red),var(--gold),transparent);
}
.phv-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  border:1px solid rgba(247,198,74,.22);
  background:rgba(247,198,74,.12);
  color:var(--gold);
  font-weight:1000;
}
.phv-card h3{margin:16px 0 8px;font-size:21px}
.phv-card p{margin:0;color:#d9c58d;line-height:1.76}

.phv-content{
  padding:26px;
  border-radius:18px;
  border:1px solid rgba(247,198,74,.14);
  background:
    radial-gradient(circle at 100% 0%,rgba(247,198,74,.08),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
}
.phv-content h2{margin-top:30px}
.phv-content h2:first-child{margin-top:0}
.phv-content ul{
  color:#decd99;
  line-height:1.9;
  padding-left:20px;
}
.phv-faq{
  display:grid;
  gap:12px;
  margin-top:22px;
}
.phv-faq details{
  padding:16px;
  border-radius:14px;
  border:1px solid rgba(247,198,74,.16);
  background:rgba(255,255,255,.04);
}
.phv-faq summary{
  cursor:pointer;
  color:#fff;
  font-weight:950;
}
.phv-faq p{
  margin:10px 0 0;
  color:#d9c58d;
}
.phv-back{margin-top:24px}

.phv-footer{
  padding:36px 0;
  border-top:1px solid var(--line);
  background:#060403;
  color:#cdbd8a;
}
.phv-footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:24px;
}
.phv-footer a{color:#f1d884}

.phv-float{
  position:fixed;
  right:16px;
  bottom:18px;
  z-index:80;
  display:grid;
  gap:10px;
}
.phv-float a,
.phv-float button{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
  cursor:pointer;
}
.phv-float svg{
  width:22px;
  height:22px;
  fill:currentColor;
}
.phv-float .tg{background:#229ed9}
.phv-float .ws{background:#22a35a}
.phv-float .fb{background:#1877f2}
.phv-float button{background:#171007}

@media(max-width:980px){
  .phv-burger{display:block}
  .phv-menu{
    display:none;
    position:absolute;
    left:16px;
    right:16px;
    top:76px;
    flex-direction:column;
    align-items:stretch;
    padding:10px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#0d0904;
  }
  .phv-menu.is-open{display:flex}
  .phv-menu a{border-radius:10px}
  .phv-main-btn{display:none}
  .phv-hero-grid{
    grid-template-columns:1fr;
    min-height:auto;
    padding:38px 0;
  }
  .phv-console{order:-1}
  .phv-grid{grid-template-columns:1fr}
  .phv-signal-grid{grid-template-columns:repeat(2,1fr)}
  .phv-footer-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .phv-shell{width:min(100% - 22px,var(--max))}
  h1{font-size:38px}
  .phv-brand img{width:132px}
  .phv-brand strong,.phv-brand span{display:none}
  .phv-line{grid-template-columns:auto 1fr}
  .phv-line em{grid-column:1/-1;text-align:center}
  .phv-signal-grid{grid-template-columns:1fr}
  .phv-content{padding:18px}
  .phv-float{right:10px;bottom:12px}
}
/* Header Upgrade */
.phv-top{
  overflow:visible;
}
.phv-top-glow{
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),var(--red),var(--gold),transparent);
  opacity:.72;
}
.phv-brand-mark{
  width:162px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:
    radial-gradient(circle at 30% 10%,rgba(247,198,74,.18),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  border:1px solid rgba(247,198,74,.14);
}
.phv-brand-mark img{
  width:145px;
  max-height:52px;
  object-fit:contain;
}
.phv-brand-copy{
  display:block;
}
.phv-brand-copy strong{
  display:block;
  font-size:20px;
  color:var(--gold);
  letter-spacing:.08em;
}
.phv-brand-copy span{
  display:block;
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
}
.phv-main-btn{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  min-width:132px;
  height:48px;
  line-height:1;
}
.phv-main-btn span{
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.78;
}
.phv-main-btn strong{
  font-size:14px;
}

/* Footer Upgrade */
.phv-footer{
  position:relative;
  overflow:hidden;
  padding:46px 0 28px;
  background:
    radial-gradient(circle at 10% 0%,rgba(227,38,34,.12),transparent 32%),
    radial-gradient(circle at 88% 12%,rgba(247,198,74,.14),transparent 30%),
    #060403;
}
.phv-footer-glow{
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),var(--red),var(--gold),transparent);
}
.phv-footer-panel{
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
  padding:22px;
  border-radius:18px;
  border:1px solid rgba(247,198,74,.16);
  background:
    radial-gradient(circle at 100% 0%,rgba(247,198,74,.12),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  box-shadow:0 20px 58px rgba(0,0,0,.32);
}
.phv-footer-brand{
  display:flex;
  align-items:center;
  gap:18px;
}
.phv-footer-brand img{
  width:155px;
  max-height:58px;
  object-fit:contain;
  padding:7px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(247,198,74,.14);
}
.phv-footer-brand strong{
  display:block;
  color:var(--gold);
  font-size:22px;
  letter-spacing:.08em;
}
.phv-footer-brand p{
  max-width:620px;
  margin:7px 0 0;
  color:#d9c893;
  line-height:1.72;
}
.phv-footer-route{
  display:grid;
  gap:8px;
  justify-items:end;
}
.phv-footer-route span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.phv-footer-route a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:12px 18px;
  border-radius:12px;
  color:#1a0b00;
  font-weight:1000;
  background:linear-gradient(135deg,var(--gold),#ff9d1d);
}
.phv-footer-links{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:22px;
}
.phv-footer-links div{
  padding:18px;
  border-radius:16px;
  border:1px solid rgba(247,198,74,.12);
  background:rgba(255,255,255,.032);
}
.phv-footer-links h3{
  margin:0 0 12px;
  color:#fff;
  font-size:16px;
}
.phv-footer-links a{
  display:block;
  padding:7px 0;
  color:#e8d79f;
  font-size:14px;
}
.phv-footer-links a:hover{
  color:var(--gold2);
}
.phv-footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid rgba(247,198,74,.13);
  color:#ad9d70;
  font-size:13px;
}

@media(max-width:980px){
  .phv-brand-mark{
    width:145px;
  }
  .phv-footer-panel{
    grid-template-columns:1fr;
  }
  .phv-footer-route{
    justify-items:start;
  }
  .phv-footer-links{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:540px){
  .phv-brand-mark{
    width:136px;
    height:52px;
  }
  .phv-brand-copy{
    display:none;
  }
  .phv-footer-brand{
    align-items:flex-start;
    flex-direction:column;
  }
  .phv-footer-links{
    grid-template-columns:1fr;
  }
  .phv-footer-bottom{
    flex-direction:column;
  }
}
/* Header Logo Only */
.phv-top-simple .phv-nav-simple{
  height:78px;
  justify-content:space-between;
}
.phv-brand-only{
  min-width:auto;
}
.phv-top-simple .phv-menu,
.phv-top-simple .phv-burger,
.phv-brand-copy{
  display:none !important;
}
.phv-top-simple .phv-brand-mark{
  width:176px;
  height:60px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:
    radial-gradient(circle at 30% 10%,rgba(247,198,74,.16),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  border:1px solid rgba(247,198,74,.15);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
}
.phv-top-simple .phv-brand-mark img{
  width:156px;
  max-height:54px;
  object-fit:contain;
}
.phv-top-simple .phv-main-btn{
  margin-left:auto;
}

@media(max-width:540px){
  .phv-top-simple .phv-nav-simple{
    height:68px;
  }
  .phv-top-simple .phv-brand-mark{
    width:142px;
    height:50px;
  }
  .phv-top-simple .phv-brand-mark img{
    width:126px;
    max-height:46px;
  }
  .phv-top-simple .phv-main-btn{
    min-width:112px;
    height:44px;
    padding:9px 12px;
  }
  .phv-top-simple .phv-main-btn strong{
    font-size:12px;
  }
}