/* =========================================================
   xLoud Interactive Services, Inc. | v0.4.01
   Main Stylesheet
   Developer Notes:
   - Section comments are intentionally clear for future development.
   - Admin + client portal styles are included here to keep the build lightweight.
========================================================= */

/* // CSS Variables */
:root{
  --bg:#071018;
  --bg-2:#0b1722;
  --panel:#111d28;
  --panel-soft:rgba(255,255,255,.065);
  --text:#f4f8ff;
  --muted:#aab7c7;
  --line:rgba(255,255,255,.13);
  --cyan:#1fb6ff;
  --cyan-2:#67dcff;
  --blue:#238bff;
  --white:#ffffff;
  --danger:#ff6c6c;
  --success:#36d998;
  --radius:28px;
  --shadow:0 24px 80px rgba(0,0,0,.42);
  --font:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

/* // Reset + Base */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(circle at 15% 10%,rgba(31,182,255,.22),transparent 28%),
    radial-gradient(circle at 80% 20%,rgba(103,220,255,.10),transparent 30%),
    linear-gradient(135deg,var(--bg),#04070b 62%,#0a1724);
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(circle at center,#000,transparent 75%);
  z-index:-2;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
p{line-height:1.75;color:var(--muted)}
.container{width:min(1180px,92vw);margin:auto}

/* // Utilities */
.glass{
  background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.04));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.eyebrow{
  text-transform:uppercase;
  letter-spacing:.22em;
  color:var(--cyan-2);
  font-size:.78rem;
  font-weight:900;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid var(--line);
  border-radius:999px;
  padding:13px 18px;
  font-weight:900;
  color:var(--text);
  background:rgba(255,255,255,.07);
  transition:.25s ease;
  cursor:pointer;
}
.btn:hover{transform:translateY(-2px);border-color:rgba(103,220,255,.45);box-shadow:0 10px 30px rgba(31,182,255,.18)}
.btn-primary{background:linear-gradient(135deg,var(--cyan),var(--blue));border-color:transparent;color:#00111e}
.btn-danger{background:rgba(255,108,108,.14);border-color:rgba(255,108,108,.35);color:#ffd4d4}
.badge{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:.78rem;font-weight:800}
.section{padding:88px 0}
.section-head{max-width:760px;margin-bottom:34px}
.section-head h1,.section-head h2{margin:.25em 0;font-size:clamp(2rem,5vw,4.75rem);line-height:.95;letter-spacing:-.06em}
.section-head p{font-size:1.05rem}

/* // Header + Navigation */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(4,7,11,.62);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px);
}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px}
.brand-mark{width:56px;height:56px;border-radius:50%;object-fit:cover;background:#fff}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text strong{font-size:1.28rem;letter-spacing:-.04em}
.brand-text span{font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-top:7px}
.menu{display:flex;align-items:center;gap:18px;font-weight:800;color:var(--muted)}
.menu a:hover{color:var(--text)}
.mobile-toggle{display:none}

/* // Hero Section */
.hero{position:relative;overflow:hidden;padding:88px 0 40px}
.hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:42px;align-items:center}
.hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.86;letter-spacing:-.08em;margin:.16em 0}
.hero p{font-size:1.13rem}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}
.stat{padding:16px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.05)}
.stat b{display:block;font-size:1.2rem}
.stat span{color:var(--muted);font-size:.88rem}
.hero-art{border-radius:var(--radius);overflow:hidden;position:relative}
.hero-art img{width:100%;height:520px;object-fit:cover;filter:saturate(1.05) contrast(1.04)}

/* // Brand Main Showcase Section */
.brand-main{
  position:relative;
  overflow:hidden;
  padding:36px 0 94px;
}
.brand-main::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(31,182,255,.18),transparent 34%);
  pointer-events:none;
  z-index:-1;
}
.brand-atmosphere{
  position:absolute;
  inset:-80px 0;
  z-index:-1;
  overflow:hidden;
  opacity:.9;
}
.bg-logo{
  position:absolute;
  width:min(460px,48vw);
  max-height:230px;
  object-fit:contain;
  opacity:.095;
  filter:grayscale(1) brightness(1.45) blur(.2px);
  animation:brandDrift 16s ease-in-out infinite alternate;
}
.bg-logo:nth-child(1){left:4%;top:2%;animation-delay:0s}
.bg-logo:nth-child(2){right:6%;top:16%;animation-delay:2s}
.bg-logo:nth-child(3){left:22%;bottom:4%;animation-delay:4s}
.bg-logo:nth-child(4){right:24%;bottom:0%;animation-delay:6s}
@keyframes brandDrift{
  from{transform:translate3d(-16px,-8px,0) rotate(-4deg) scale(1)}
  to{transform:translate3d(22px,14px,0) rotate(4deg) scale(1.08)}
}
.brand-stage{
  position:relative;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:36px;
  align-items:center;
  padding:38px;
  border-radius:var(--radius);
  overflow:hidden;
}
.featured-brand-card{
  position:relative;
  min-height:320px;
  border-radius:34px;
  display:grid;
  place-items:center;
  background:
    linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.04)),
    radial-gradient(circle at 50% 15%,rgba(103,220,255,.16),transparent 38%);
  border:1px solid rgba(255,255,255,.18);
  transform-style:preserve-3d;
  perspective:1000px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), 0 35px 90px rgba(0,0,0,.38);
}
.featured-brand-card::after{
  content:"";
  position:absolute;
  inset:-40% -70%;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.18) 49%,transparent 60%);
  transform:translateX(-40%) rotate(8deg);
  animation:sheen 4.6s ease-in-out infinite;
}
@keyframes sheen{0%,35%{transform:translateX(-45%) rotate(8deg)}65%,100%{transform:translateX(45%) rotate(8deg)}}
.reveal-orbit{
  position:absolute;
  width:70%;
  aspect-ratio:1;
  border:1px solid rgba(103,220,255,.12);
  border-radius:50%;
  animation:slowSpin 18s linear infinite;
}
.reveal-orbit::before,.reveal-orbit::after{
  content:"";
  position:absolute;
  width:8px;height:8px;border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 18px var(--cyan);
}
.reveal-orbit::before{top:12%;left:18%}
.reveal-orbit::after{right:10%;bottom:28%}
@keyframes slowSpin{to{transform:rotate(360deg)}}
.featured-logo-wrap{
  position:relative;
  z-index:2;
  width:min(420px,80%);
  min-height:190px;
  display:grid;
  place-items:center;
  animation:floatBrand 4s ease-in-out infinite;
}
@keyframes floatBrand{0%,100%{transform:translateY(0) rotateX(0deg) rotateY(-3deg)}50%{transform:translateY(-11px) rotateX(5deg) rotateY(5deg)}}
.featured-logo-wrap.flip-out{animation:movieFlip .72s ease-in-out forwards}
@keyframes movieFlip{
  0%{opacity:1;filter:blur(0);transform:translateY(0) rotateY(0deg) scale(1)}
  48%{opacity:.25;filter:blur(3px);transform:translateY(-6px) rotateY(42deg) scale(.96)}
  100%{opacity:1;filter:blur(0);transform:translateY(0) rotateY(-8deg) scale(1)}
}
.spark{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 18% 48%,rgba(103,220,255,.85),transparent 9%),
    radial-gradient(circle at 80% 38%,rgba(255,255,255,.75),transparent 7%),
    linear-gradient(90deg,transparent,rgba(103,220,255,.34),transparent);
  mix-blend-mode:screen;
}
.spark.active{animation:sparkFlash .62s ease-out}
@keyframes sparkFlash{
  0%{opacity:0;transform:scale(.92)}
  25%{opacity:1;transform:scale(1.05)}
  100%{opacity:0;transform:scale(1.16)}
}
#featuredLogo{max-width:100%;max-height:210px;object-fit:contain;filter:drop-shadow(0 24px 34px rgba(0,0,0,.45))}
.brand-current-name{margin-top:18px;text-align:center;font-weight:900;color:var(--muted);letter-spacing:.04em}
.logo-grid{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.logo-tile{
  min-height:104px;
  border-radius:22px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.055);
  padding:18px;
  display:grid;
  place-items:center;
  transition:.25s ease;
  position:relative;
}
.logo-tile img{
  max-height:68px;
  width:100%;
  object-fit:contain;
  filter:grayscale(1) brightness(1.35);
  opacity:.58;
  transition:.25s ease;
}
.logo-tile:hover{transform:translateY(-4px);border-color:rgba(103,220,255,.45)}
.logo-tile:hover img{filter:none;opacity:1;transform:scale(1.05)}
.ticker-wrap{margin-top:20px;overflow:hidden;border-block:1px solid var(--line);padding:18px 0}
.ticker{display:flex;gap:46px;width:max-content;animation:ticker 48s linear infinite}
.ticker:hover{animation-play-state:paused}
.ticker img{height:46px;max-width:180px;object-fit:contain;filter:grayscale(1) brightness(1.3);opacity:.55;transition:.25s}
.ticker a:hover img{filter:none;opacity:1;transform:scale(1.08)}
@keyframes ticker{to{transform:translateX(-50%)}}

/* // Services + Cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(255,255,255,.06);
}
.card .icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:rgba(31,182,255,.16);color:var(--cyan);font-weight:900}
.card h3{font-size:1.35rem}

/* // Partners */
.partners{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.partner{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.06)}
.partner img{width:100%;height:270px;object-fit:cover}
.partner-body{padding:20px}
.partner h3{margin:0 0 7px}
.role{color:var(--cyan-2);font-weight:900;font-size:.92rem}
.partner p{font-size:.94rem}

/* // Footer + Modals */
.footer{padding:32px 0;border-top:1px solid var(--line);color:var(--muted)}
.footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.footer nav{display:flex;gap:18px;flex-wrap:wrap}
.modal{position:fixed;inset:0;display:none;place-items:center;background:rgba(0,0,0,.62);z-index:100;padding:24px}
.modal.active{display:grid}
.modal-panel{width:min(760px,94vw);max-height:84vh;overflow:auto;border-radius:28px;padding:28px;background:#0e1822;border:1px solid var(--line);box-shadow:var(--shadow)}
.close-modal{float:right;background:rgba(255,255,255,.08);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:9px 14px}

/* // Forms */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1/-1}
label{font-weight:900;color:#e9f0fa}
input,select,textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.08);
  color:var(--text);
  padding:14px 16px;
  font:inherit;
  outline:none;
}
input:focus,select:focus,textarea:focus{border-color:rgba(103,220,255,.7);box-shadow:0 0 0 4px rgba(31,182,255,.1)}
textarea{min-height:140px;resize:vertical}
option{color:#111}
.form-card{padding:30px;border-radius:var(--radius)}

/* // Admin + Client Portal Layout */
.portal-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:280px 1fr;
}
.portal-sidebar{
  padding:24px;
  border-right:1px solid var(--line);
  background:rgba(4,7,11,.72);
  position:sticky;
  top:0;
  height:100vh;
}
.portal-main{padding:28px}
.portal-nav{display:grid;gap:10px;margin-top:26px}
.portal-nav a,.portal-nav button{
  width:100%;
  text-align:left;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid transparent;
  color:var(--muted);
  background:transparent;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}
.portal-nav a:hover,.portal-nav button:hover,.portal-nav .active{color:var(--text);background:rgba(255,255,255,.07);border-color:var(--line)}
.portal-card{
  padding:24px;
  border-radius:24px;
  margin-bottom:20px;
}
.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.portal-grid.two{grid-template-columns:repeat(2,1fr)}
.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:720px}
td,th{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:#e9f0fa;background:rgba(255,255,255,.055)}
td{color:var(--muted)}
.admin-login-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(31,182,255,.2),transparent 26%),
    linear-gradient(135deg,#060b10,#0f2230);
}
.login-card{
  width:min(520px,94vw);
  padding:42px;
  border-radius:34px;
}
.login-card h1{font-size:clamp(2.2rem,6vw,4rem);line-height:.95;letter-spacing:-.06em}
.login-card .field{margin-bottom:14px}
.login-card input{font-size:1.05rem}
.status-dot{display:inline-flex;align-items:center;gap:8px}
.status-dot::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}
.template-preview{
  min-height:260px;
  background:#fff;
  color:#111;
  border-radius:18px;
  padding:24px;
  overflow:auto;
}
.template-preview *{color:inherit}

/* // Responsive */
@media(max-width:1020px){
  .hero-grid,.brand-stage{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .partners{grid-template-columns:repeat(2,1fr)}
  .logo-grid{grid-template-columns:repeat(2,1fr)}
  .portal-shell{grid-template-columns:1fr}
  .portal-sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}
  .portal-grid,.portal-grid.two{grid-template-columns:1fr}
}
@media(max-width:720px){
  .mobile-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.08);color:var(--text);padding:10px 14px}
  .menu{position:absolute;left:4vw;right:4vw;top:78px;display:none;flex-direction:column;align-items:stretch;padding:18px;border-radius:22px;background:#0d1822;border:1px solid var(--line)}
  .menu.open{display:flex}
  .hero{padding-top:54px}
  .stats,.form-grid,.partners,.logo-grid{grid-template-columns:1fr}
  .brand-stage{padding:24px}
  .featured-brand-card{min-height:250px}
  .hero-art img{height:360px}
  .login-card{padding:28px}
  table{font-size:.86rem}
}



/* =========================================================
   PATCH 01 | Brand Section + Login UI + Footer Refinements
   Developer Notes:
   - Corrects brand reveal layout, ticker behavior, login form alignment,
     SEO-friendly page footer spacing, and responsive mobile behavior.
========================================================= */

/* // Brand Section Patch */
.brand-main{
  padding:88px 0;
}
.brand-stage{
  grid-template-columns:0.82fr 1.18fr;
  gap:34px;
  align-items:center;
  padding:36px;
  margin-bottom:22px;
}
.brand-copy h2{
  font-size:clamp(2rem,4.8vw,4.4rem);
  line-height:.96;
  letter-spacing:-.06em;
  margin:.18em 0;
}
.brand-visual-card{
  position:relative;
  min-height:420px;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  background:#0b121a;
  box-shadow:0 28px 80px rgba(0,0,0,.42);
}
.brand-visual-card > img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
  opacity:.78;
  filter:saturate(1.08) contrast(1.08);
}
.brand-visual-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 68% 42%,rgba(31,182,255,.16),transparent 30%),
    linear-gradient(90deg,rgba(4,7,11,.70),rgba(4,7,11,.08) 44%,rgba(4,7,11,.50));
  pointer-events:none;
}
.brand-reveal-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  display:grid;
  place-items:center;
  padding:34px;
}
.brand-reveal-overlay .featured-logo-wrap{
  width:min(340px,62%);
  min-height:160px;
  display:grid;
  place-items:center;
  border-radius:28px;
  padding:22px;
  background:rgba(4,7,11,.34);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
}
.brand-reveal-overlay #featuredLogo{
  max-height:150px;
  max-width:100%;
  object-fit:contain;
  filter:drop-shadow(0 20px 35px rgba(0,0,0,.65));
}
.brand-reveal-overlay .brand-current-name{
  position:absolute;
  left:28px;
  bottom:22px;
  right:28px;
  margin:0;
  padding:12px 16px;
  text-align:left;
  border-radius:18px;
  background:rgba(4,7,11,.54);
  border:1px solid rgba(255,255,255,.10);
  color:#f4f8ff;
  backdrop-filter:blur(10px);
}
.brand-logo-area{
  margin-top:22px;
}
.logo-grid{
  margin-top:22px;
}
.logo-tile{
  overflow:hidden;
}
.logo-tile::after{
  content:attr(title);
  position:absolute;
  left:12px;
  right:12px;
  bottom:10px;
  text-align:center;
  font-size:.72rem;
  color:var(--muted);
  opacity:.72;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.logo-tile img{
  margin-bottom:16px;
}
.ticker-wrap{
  background:rgba(255,255,255,.035);
  border-radius:24px;
  border:1px solid var(--line);
  border-block:1px solid var(--line);
  padding:16px;
}
.ticker img{
  min-width:80px;
}

/* // Login Page Patch */
.admin-login-page{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(18px,4vw,48px);
  background:
    radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(31,182,255,.22),transparent 24%),
    radial-gradient(circle at 18% 12%,rgba(103,220,255,.12),transparent 22%),
    linear-gradient(135deg,#05090e 0%,#0a1420 58%,#0c2233 100%);
}
.admin-login-page main{
  width:100%;
  display:grid;
  place-items:center;
}
.login-card{
  width:min(520px,94vw);
  padding:clamp(28px,5vw,46px);
  border-radius:36px;
  position:relative;
  overflow:hidden;
}
.login-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,.14),transparent 30%),
    radial-gradient(circle at 20% 0%,rgba(103,220,255,.20),transparent 28%);
}
.login-card > *{
  position:relative;
  z-index:1;
}
.login-card h1{
  font-size:clamp(2.35rem,6vw,4.2rem);
  line-height:.92;
  letter-spacing:-.07em;
  margin:.22em 0 .45em;
}
.login-card .field{
  display:flex;
  flex-direction:column;
  gap:9px;
  margin-bottom:16px;
}
.login-card label{
  font-size:.84rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#bdd0df;
}
.login-card input{
  min-height:56px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:1.05rem;
  padding:0 17px;
}
.login-card input::placeholder{
  color:rgba(230,240,255,.42);
}
.login-card .btn{
  width:100%;
  min-height:56px;
  margin-top:8px;
  font-size:1rem;
}
.login-footer{
  position:fixed;
  left:0;
  right:0;
  bottom:16px;
  display:flex;
  justify-content:center;
  z-index:2;
  padding:0 18px;
}
.login-footer-inner{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  justify-content:center;
  font-size:.85rem;
  color:var(--muted);
  padding:10px 14px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(4,7,11,.50);
  backdrop-filter:blur(14px);
}
.login-footer a:hover{color:#fff}

/* // Global Footer / Legal Patch */
.page-footer{
  padding:28px 0;
  border-top:1px solid var(--line);
  color:var(--muted);
  margin-top:44px;
}
.page-footer .container{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}
.page-footer nav{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
}
.page-footer a:hover{color:#fff}

/* // Portal responsive polish */
.portal-main .page-footer{
  margin-top:26px;
}
.portal-main .page-footer .container{
  width:100%;
}
.portal-sidebar .brand-mark{
  flex:0 0 auto;
}

/* // Responsive patch */
@media(max-width:1020px){
  .brand-stage{
    grid-template-columns:1fr;
  }
  .brand-visual-card,
  .brand-visual-card > img{
    min-height:360px;
  }
}
@media(max-width:720px){
  .brand-main{
    padding:56px 0;
  }
  .brand-stage{
    padding:22px;
  }
  .brand-visual-card,
  .brand-visual-card > img{
    min-height:310px;
  }
  .brand-reveal-overlay .featured-logo-wrap{
    width:78%;
    min-height:120px;
  }
  .brand-reveal-overlay #featuredLogo{
    max-height:105px;
  }
  .brand-reveal-overlay .brand-current-name{
    left:14px;
    right:14px;
    bottom:14px;
    font-size:.82rem;
  }
  .login-footer{
    position:static;
    padding:18px;
  }
  .login-footer-inner{
    border-radius:22px;
  }
}



/* =========================================================
   v0.4.02 Fresh Install Patch
   Developer Notes:
   - Swaps the homepage windows:
     1) Hero right window now carries the rotating brand/logo reveal.
     2) Brand section right window is now the static hero/team image.
   - Fixes ticker logo rendering and keeps images visible with clean fallback behavior.
========================================================= */

/* // Hero Brand Reveal Window */
.hero-brand-window{
  position:relative;
  min-height:520px;
  border-radius:var(--radius);
  overflow:hidden;
}
.hero-brand-window > img{
  width:100%;
  height:520px;
  object-fit:cover;
  filter:saturate(1.08) contrast(1.08);
  opacity:.82;
}
.hero-brand-window::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 52% 44%,rgba(31,182,255,.16),transparent 32%),
    linear-gradient(90deg,rgba(4,7,11,.42),rgba(4,7,11,.10),rgba(4,7,11,.45));
  pointer-events:none;
  z-index:1;
}
.hero-brand-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  display:grid;
  place-items:center;
  padding:32px;
}
.hero-brand-overlay .featured-logo-wrap{
  width:min(340px,62%);
  min-height:168px;
  display:grid;
  place-items:center;
  padding:22px;
  border-radius:28px;
  background:rgba(4,7,11,.34);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 26px 70px rgba(0,0,0,.44);
  backdrop-filter:blur(10px);
}
.hero-brand-overlay #featuredLogo{
  max-width:100%;
  max-height:148px;
  object-fit:contain;
  filter:drop-shadow(0 22px 35px rgba(0,0,0,.65));
}
.hero-brand-overlay .brand-current-name{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  margin:0;
  padding:12px 16px;
  text-align:left;
  border-radius:18px;
  color:#f4f8ff;
  background:rgba(4,7,11,.58);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(12px);
}
.hero-brand-overlay .spark{
  z-index:0;
}

/* // Static Brand Window */
.static-brand-window{
  min-height:420px;
}
.static-brand-window > img{
  min-height:420px;
  height:100%;
  width:100%;
  object-fit:cover;
  opacity:.88;
}
.static-brand-window::after{
  background:
    radial-gradient(circle at 50% 38%,rgba(31,182,255,.12),transparent 34%),
    linear-gradient(90deg,rgba(4,7,11,.30),rgba(4,7,11,.06),rgba(4,7,11,.34));
}

/* // Logo Ticker Hardening */
.ticker{
  align-items:center;
}
.ticker a{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  min-width:160px;
  height:68px;
  padding:8px 14px;
}
.ticker img{
  display:block;
  width:auto;
  height:auto;
  max-height:54px;
  max-width:170px;
  object-fit:contain;
}
.logo-tile{
  min-height:118px;
}
.logo-tile img{
  display:block;
  max-width:100%;
  max-height:72px;
  object-fit:contain;
}

/* // Prevent duplicated reveal styling in brand section */
.brand-visual-card .featured-logo-wrap:not(.hero-brand-overlay .featured-logo-wrap){
  position:relative;
}

/* // Mobile Hero Reveal */
@media(max-width:1020px){
  .hero-brand-window,
  .hero-brand-window > img{
    min-height:420px;
    height:420px;
  }
}
@media(max-width:720px){
  .hero-brand-window,
  .hero-brand-window > img{
    min-height:340px;
    height:340px;
  }
  .hero-brand-overlay{
    padding:18px;
  }
  .hero-brand-overlay .featured-logo-wrap{
    width:78%;
    min-height:130px;
  }
  .hero-brand-overlay #featuredLogo{
    max-height:104px;
  }
  .hero-brand-overlay .brand-current-name{
    left:14px;
    right:14px;
    bottom:14px;
    font-size:.82rem;
  }
  .ticker a{
    min-width:136px;
  }
}



/* =========================================================
   v0.4.02 Patch 01
   Requested Updates:
   - Hero headline changed to "Moving brands forward."
   - Hero logo reveal background made abstract/light mode.
   - Removed animated background logos; checkerboard/grid style remains.
   - Ticker hidden by default; admin can show/hide it.
   - Our Brand section moved above Brand Experience in markup.
   - Centered visible brand/company names.
========================================================= */

/* // Remove logo objects from website backgrounds */
.brand-atmosphere,
.bg-logo{
  display:none !important;
}

/* // Hero headline adjustment */
.hero h1{
  max-width:720px;
}

/* // Abstract light-mode logo reveal window */
.hero-brand-window{
  background:
    radial-gradient(circle at 20% 12%,rgba(255,255,255,.95),rgba(255,255,255,.28) 28%,transparent 42%),
    radial-gradient(circle at 76% 25%,rgba(105,220,255,.42),transparent 36%),
    linear-gradient(135deg,#eefaff,#c9eefd 38%,#effbff 70%,#bde8ff);
  overflow:hidden;
}
.hero-brand-window > img{
  display:none !important;
}
.abstract-brand-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 80%,rgba(31,182,255,.18),transparent 28%),
    radial-gradient(circle at 78% 20%,rgba(255,255,255,.82),transparent 24%),
    linear-gradient(135deg,rgba(255,255,255,.70),rgba(206,241,255,.68));
}
.abstract-brand-bg::before,
.abstract-brand-bg::after{
  content:"";
  position:absolute;
  width:125%;
  height:125%;
  left:-12%;
  top:-12%;
  background:
    conic-gradient(from 30deg at 50% 50%,
      transparent 0deg,
      rgba(31,182,255,.18) 54deg,
      rgba(255,255,255,.70) 95deg,
      transparent 142deg,
      rgba(0,90,170,.10) 218deg,
      transparent 360deg);
  border-radius:42%;
  filter:blur(2px);
  animation:abstractTurn 18s linear infinite;
}
.abstract-brand-bg::after{
  width:95%;
  height:95%;
  left:16%;
  top:6%;
  opacity:.62;
  animation-duration:24s;
  animation-direction:reverse;
}
@keyframes abstractTurn{
  to{transform:rotate(360deg)}
}
.hero-brand-window::after{
  background:
    linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.05)),
    radial-gradient(circle at 50% 45%,rgba(31,182,255,.13),transparent 40%);
}
.hero-brand-overlay .featured-logo-wrap{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(14,70,105,.12);
  box-shadow:
    0 24px 70px rgba(0,73,130,.18),
    inset 0 0 0 1px rgba(255,255,255,.75);
}
.hero-brand-overlay .brand-current-name{
  text-align:center;
  justify-content:center;
  color:#08314c;
  font-weight:900;
  background:rgba(255,255,255,.76);
  border-color:rgba(14,70,105,.12);
}

/* // Center company/brand names everywhere they visibly appear */
.brand-current-name,
.logo-tile::after{
  text-align:center !important;
}
.logo-tile{
  justify-items:center;
}
.logo-tile::after{
  left:16px;
  right:16px;
}

/* // Ticker default hidden; Admin toggle can show it */
.ticker-wrap.is-hidden,
.ticker-wrap[data-visible="false"]{
  display:none !important;
}
.ticker-wrap[data-visible="true"]{
  display:block !important;
}

/* // Our Brand section moved up; make it feel like a premium bridge section */
#our-brand{
  padding-top:48px;
  padding-bottom:72px;
}

/* // Responsive polish */
@media(max-width:720px){
  .hero h1{
    font-size:clamp(3rem,14vw,5.5rem);
  }
  .hero-brand-overlay .brand-current-name{
    text-align:center;
  }
}



/* =========================================================
   v0.4.02 Patch 02
   Requested Updates:
   - Ticker default OFF and connected to Admin > Site Settings.
   - Removed inner card/flip look from hero brand reveal.
   - Logo reveal now uses simple fade in/fade out.
   - Enlarged reveal logos to better fill the bordered hero window.
   - Removed Keen-Water, WeScan, and iCourt App from hero reveal only via JS.
   - Centered logo names in tiles.
   - Larger/bolder client/admin login field text and placeholders.
   - Removed border/background styling behind footers.
========================================================= */

/* // Remove card-within-card feel from hero reveal */
.hero-brand-overlay{
  padding:clamp(22px,4vw,42px);
}
.hero-brand-overlay .featured-logo-wrap{
  width:min(86%, 560px);
  min-height:260px;
  padding:0;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  border-radius:0 !important;
}
.hero-brand-overlay #featuredLogo{
  max-width:100%;
  max-height:250px;
  object-fit:contain;
  filter:drop-shadow(0 26px 38px rgba(0,48,92,.20));
}
.hero-brand-overlay .brand-current-name{
  left:50%;
  right:auto;
  bottom:28px;
  transform:translateX(-50%);
  width:min(86%, 520px);
  text-align:center !important;
  color:#08314c;
  font-size:1.05rem;
  font-weight:950;
  letter-spacing:.01em;
  background:rgba(255,255,255,.62);
  border:0 !important;
  box-shadow:none !important;
}

/* // Fade reveal instead of flip */
.featured-logo-wrap{
  transition:opacity .58s ease, transform .58s ease, filter .58s ease;
}
.featured-logo-wrap.fade-out{
  opacity:0;
  transform:translateY(10px) scale(.975);
  filter:blur(3px);
}
.featured-logo-wrap.fade-in{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}
.brand-current-name{
  transition:opacity .45s ease, transform .45s ease;
}
.brand-current-name.fade-out{
  opacity:0;
}
.brand-current-name.fade-in{
  opacity:1;
}

/* // Disable old flip animation */
.featured-logo-wrap.flip-out,
.brand-card-inner.flipping{
  animation:none !important;
  transform:none !important;
}

/* // Keep ticker default OFF unless admin explicitly enables it */
.ticker-wrap,
.ticker-wrap.is-hidden,
.ticker-wrap[data-visible="false"]{
  display:none !important;
}
.ticker-wrap[data-visible="true"]{
  display:block !important;
}

/* // Center tile names under each icon */
.logo-tile::after{
  left:10px;
  right:10px;
  bottom:12px;
  text-align:center !important;
  display:block;
  margin:auto;
  white-space:normal;
  line-height:1.2;
  max-height:2.4em;
}
.logo-tile{
  align-items:center;
  justify-items:center;
  text-align:center;
}
.logo-tile img{
  margin-left:auto;
  margin-right:auto;
}

/* // Bigger and bolder login field text + placeholder hints */
.login-card input{
  min-height:64px;
  font-size:1.38rem !important;
  font-weight:800;
  letter-spacing:-.015em;
}
.login-card input::placeholder{
  font-size:1.22rem;
  font-weight:850;
  color:rgba(230,240,255,.58);
}

/* // Remove border/background behind footer areas */
.page-footer{
  border-top:0 !important;
  background:transparent !important;
}
.login-footer-inner{
  border:0 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  box-shadow:none !important;
}

/* // Mobile adjustments */
@media(max-width:720px){
  .hero-brand-overlay .featured-logo-wrap{
    width:88%;
    min-height:190px;
  }
  .hero-brand-overlay #featuredLogo{
    max-height:185px;
  }
  .hero-brand-overlay .brand-current-name{
    bottom:18px;
    width:90%;
    font-size:.95rem;
  }
  .login-card input{
    font-size:1.15rem !important;
  }
  .login-card input::placeholder{
    font-size:1.02rem;
  }
}



/* =========================================================
   v0.4.02 Patch 03
   Requested Coding Update:
   - Hard-removes hero card/flip/spark treatment.
   - Hero reveal is plain large logos fading in/out.
   - Keen-Water, WeScan, and iCourt removed from hero reveal only via JS.
   - Brand name is centered under the active hero logo.
========================================================= */

/* // Kill all spark / flash / light burst visuals */
.spark,
.spark.active,
.reveal-orbit,
.reveal-orbit::before,
.reveal-orbit::after{
  display:none !important;
  opacity:0 !important;
  animation:none !important;
}

/* // Plain hero logo reveal: no business-card background, no inner card */
.hero-brand-overlay{
  padding:clamp(18px,3.5vw,38px) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
}

.hero-brand-overlay .featured-logo-wrap,
.hero-brand-overlay .plain-logo-reveal,
.featured-logo-wrap.plain-logo-reveal{
  width:min(92%, 720px) !important;
  min-height:320px !important;
  padding:0 !important;
  margin:0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  border-radius:0 !important;
  outline:0 !important;
}

.hero-brand-overlay #featuredLogo{
  width:100% !important;
  height:auto !important;
  max-width:680px !important;
  max-height:310px !important;
  object-fit:contain !important;
  margin:0 auto !important;
  filter:drop-shadow(0 28px 34px rgba(0,48,92,.18)) !important;
}

/* // Center the active company name under the logo */
.hero-brand-overlay .brand-current-name,
#featuredName{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:min(92%, 680px) !important;
  margin:0 auto !important;
  padding:0 !important;
  text-align:center !important;
  display:block !important;
  color:#08314c !important;
  font-size:clamp(1.08rem,2vw,1.55rem) !important;
  line-height:1.2 !important;
  font-weight:950 !important;
  letter-spacing:-.015em !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}

/* // Fade only. No flip. No rotating card. */
.featured-logo-wrap,
.hero-brand-overlay .brand-current-name{
  transition:opacity .65s ease, transform .65s ease, filter .65s ease !important;
}

.featured-logo-wrap.is-fading-out,
.brand-current-name.is-fading-out{
  opacity:0 !important;
  transform:translateY(8px) scale(.985) !important;
  filter:blur(2px) !important;
}

.featured-logo-wrap.is-fading-in,
.brand-current-name.is-fading-in{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  filter:blur(0) !important;
}

.featured-logo-wrap.flip-out,
.brand-card-inner.flipping,
.brand-card,
.brand-card-inner{
  animation:none !important;
  transform:none !important;
}

/* // Center every visible logo-label in brand blocks */
.logo-tile{
  text-align:center !important;
  justify-items:center !important;
  align-items:center !important;
}

.logo-tile img{
  margin-left:auto !important;
  margin-right:auto !important;
}

.logo-tile::after{
  text-align:center !important;
  left:8px !important;
  right:8px !important;
  margin:0 auto !important;
  display:block !important;
  width:auto !important;
  white-space:normal !important;
  line-height:1.18 !important;
}

/* // Hero reveal responsive sizing */
@media(max-width:1020px){
  .hero-brand-overlay .featured-logo-wrap,
  .hero-brand-overlay .plain-logo-reveal{
    min-height:260px !important;
  }
  .hero-brand-overlay #featuredLogo{
    max-height:250px !important;
  }
}

@media(max-width:720px){
  .hero-brand-overlay .featured-logo-wrap,
  .hero-brand-overlay .plain-logo-reveal{
    width:94% !important;
    min-height:210px !important;
  }
  .hero-brand-overlay #featuredLogo{
    max-height:200px !important;
  }
}



/* =========================================================
   v0.4.02 Patch 04
   Requested Coding Update:
   - Fade in / fade out ONLY.
   - No floating, no scaling, no blur, no translate, no flip, no spark.
   - Keeps the abstract background.
========================================================= */

/* // Absolute kill switch for every extra logo motion effect */
.hero-brand-overlay .featured-logo-wrap,
.hero-brand-overlay .plain-logo-reveal,
.featured-logo-wrap.plain-logo-reveal,
#featuredLogoWrap,
#featuredLogo,
#featuredName{
  animation:none !important;
  transform:none !important;
  filter:none !important;
}

/* // Fade only: opacity changes, nothing else */
.featured-logo-wrap,
.hero-brand-overlay .featured-logo-wrap,
.hero-brand-overlay .plain-logo-reveal,
.brand-current-name,
#featuredName{
  transition:opacity .75s ease-in-out !important;
}

.featured-logo-wrap.is-fading-out,
.brand-current-name.is-fading-out,
#featuredName.is-fading-out{
  opacity:0 !important;
  transform:none !important;
  filter:none !important;
}

.featured-logo-wrap.is-fading-in,
.brand-current-name.is-fading-in,
#featuredName.is-fading-in{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
}

/* // Remove any inherited hero logo float behavior */
@keyframes floatBrand{
  from{transform:none}
  to{transform:none}
}
@keyframes movieFlip{
  from{opacity:1;transform:none;filter:none}
  to{opacity:1;transform:none;filter:none}
}

/* // Keep logo visually strong without motion effects */
.hero-brand-overlay #featuredLogo{
  filter:none !important;
}

/* // Keep active title clean and slightly more refined */
.hero-brand-overlay .brand-current-name,
#featuredName{
  font-size:clamp(1rem,1.55vw,1.25rem) !important;
  line-height:1.25 !important;
  letter-spacing:.01em !important;
}



/* =========================================================
   v0.4.02 Patch 05
   Requested Coding Update:
   - Removed phone/email from the Start Here CTA section.
   - Split the CTA support text into two intentional lines.
   - Reduced footer scale by roughly 35%.
========================================================= */

.cta-lines{
  display:flex;
  flex-direction:column;
  gap:2px;
  max-width:780px;
}

.cta-lines span{
  display:block;
}

/* // Footer about 35% smaller */
.footer{
  padding:21px 0 !important;
  font-size:.78rem !important;
}

.footer-grid{
  gap:13px !important;
}

.footer nav{
  gap:12px !important;
}

.page-footer{
  padding:18px 0 !important;
  font-size:.78rem !important;
  margin-top:28px !important;
}

.page-footer .container{
  gap:10px !important;
}

.page-footer nav{
  gap:11px !important;
}

@media(max-width:720px){
  .footer,
  .page-footer{
    font-size:.75rem !important;
  }
}



/* =========================================================
   v0.4.02 Patch 06
   Logo reveal lock:
   - Fade in / fade out ONLY.
   - No floating, bouncing, sliding, scaling, blur, transform, or inherited motion.
========================================================= */

.hero-brand-overlay,
.hero-brand-overlay *,
#featuredLogoWrap,
#featuredLogo,
#featuredName,
.plain-logo-reveal{
  animation-name:none !important;
  animation-duration:0s !important;
  animation-delay:0s !important;
  animation-iteration-count:1 !important;
  transform:none !important;
  translate:none !important;
  rotate:none !important;
  scale:none !important;
  filter:none !important;
}

#featuredLogoWrap,
#featuredName{
  transition-property:opacity !important;
  transition-duration:.85s !important;
  transition-timing-function:ease-in-out !important;
}

#featuredLogo{
  transition:none !important;
}

#featuredLogoWrap.is-fading-out,
#featuredLogoWrap.is-fading-in,
#featuredName.is-fading-out,
#featuredName.is-fading-in,
.featured-logo-wrap.is-fading-out,
.featured-logo-wrap.is-fading-in,
.brand-current-name.is-fading-out,
.brand-current-name.is-fading-in{
  transform:none !important;
  translate:none !important;
  rotate:none !important;
  scale:none !important;
  filter:none !important;
}

/* Neutralize older keyframes if cached CSS still references them */
@keyframes floatBrand{0%,100%{transform:none}}
@keyframes abstractTurn{0%,100%{transform:none}}
@keyframes movieFlip{0%,100%{transform:none;filter:none}}
@keyframes pulseGlow{0%,100%{transform:none;filter:none}}



/* =========================================================
   v0.4.02 Patch 07
   Brand/service labels:
   - Adds service descriptions under fading homepage brand names.
   - Adds service descriptions under each logo grid item.
   - Keeps logo reveal fade-only with no movement effects.
========================================================= */

.hero-brand-overlay .brand-current-description,
#featuredDescription{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:min(92%, 680px) !important;
  margin:-10px auto 0 !important;
  padding:0 !important;
  text-align:center !important;
  display:block !important;
  color:#24536f !important;
  font-size:clamp(.82rem,1.18vw,1rem) !important;
  line-height:1.25 !important;
  font-weight:850 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  transition:opacity .85s ease-in-out !important;
  animation:none !important;
  filter:none !important;
}

#featuredDescription.is-fading-out,
#featuredDescription.is-fading-in{
  transform:none !important;
  filter:none !important;
}

/* // Logo grid labels */
.logo-tile::after{
  content:none !important;
}

.logo-tile{
  gap:5px !important;
  padding-bottom:16px !important;
}

.logo-title,
.logo-description{
  display:block;
  width:100%;
  text-align:center;
  margin:0 auto;
}

.logo-title{
  color:var(--text);
  font-weight:900;
  font-size:.82rem;
  line-height:1.15;
}

.logo-description{
  color:var(--muted);
  font-size:.68rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
  opacity:.78;
}

@media(max-width:720px){
  .hero-brand-overlay .brand-current-description,
  #featuredDescription{
    font-size:.74rem !important;
    margin-top:-6px !important;
  }
}



/* =========================================================
   v0.4.02 Patch 08
   Brand description typography:
   - Descriptions are no longer bold.
   - Descriptions are no longer all caps.
   - Description text moved down about 50px.
========================================================= */

.hero-brand-overlay .brand-current-description,
#featuredDescription{
  margin-top:40px !important;
  font-weight:400 !important;
  text-transform:none !important;
  letter-spacing:.01em !important;
}

.logo-description{
  font-weight:400 !important;
  text-transform:none !important;
  letter-spacing:.01em !important;
  margin-top:50px !important;
}

/* Keep brand names/title unaffected */
.logo-title,
#featuredName{
  font-weight:900 !important;
}



/* =========================================================
   v0.4.02 Patch 09
   Brand title spacing:
   - Moves the brand title/name down about 50px.
========================================================= */

.hero-brand-overlay .brand-current-name,
#featuredName{
  margin-top:50px !important;
}

.logo-title{
  margin-top:50px !important;
}



/* =========================================================
   v0.4.02 Patch 10
   Brand reveal spacing correction:
   - Logo returns to the center of the reveal window.
   - Title and description sit close together under the logo.
   - No movement effects. Fade only remains.
========================================================= */

/* // Keep the reveal content centered as a clean vertical stack */
.hero-brand-overlay{
  justify-content:center !important;
  align-items:center !important;
  gap:0 !important;
}

/* // Logo stays centered; previous margin shifts are neutralized */
.hero-brand-overlay .featured-logo-wrap,
.hero-brand-overlay .plain-logo-reveal,
#featuredLogoWrap{
  margin:0 auto !important;
  min-height:260px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  transform:none !important;
  translate:none !important;
  animation:none !important;
}

.hero-brand-overlay #featuredLogo,
#featuredLogo{
  margin:0 auto !important;
  transform:none !important;
  translate:none !important;
  animation:none !important;
}

/* // Put title + description back near each other under the centered logo */
.hero-brand-overlay .brand-current-name,
#featuredName{
  margin:18px auto 0 !important;
  padding:0 !important;
  transform:none !important;
  translate:none !important;
  animation:none !important;
}

.hero-brand-overlay .brand-current-description,
#featuredDescription{
  margin:6px auto 0 !important;
  padding:0 !important;
  transform:none !important;
  translate:none !important;
  animation:none !important;
}

/* // Undo prior grid label spacing push-down */
.logo-title{
  margin-top:8px !important;
}

.logo-description{
  margin-top:4px !important;
}

/* // Fade only. No other motion. */
#featuredLogoWrap,
#featuredName,
#featuredDescription{
  transition-property:opacity !important;
  transition-duration:.85s !important;
  transition-timing-function:ease-in-out !important;
  transform:none !important;
  translate:none !important;
  rotate:none !important;
  scale:none !important;
  filter:none !important;
}

@media(max-width:720px){
  .hero-brand-overlay .featured-logo-wrap,
  .hero-brand-overlay .plain-logo-reveal,
  #featuredLogoWrap{
    min-height:210px !important;
  }

  .hero-brand-overlay .brand-current-name,
  #featuredName{
    margin-top:14px !important;
  }

  .hero-brand-overlay .brand-current-description,
  #featuredDescription{
    margin-top:5px !important;
  }
}



/* =========================================================
   v0.4.02 Patch 11
   Lower logo grid correction:
   - Descriptions are removed from the lower Brand Experience logo grid.
   - Description remains active only in the top fading logo reveal.
========================================================= */

.logo-grid .logo-description{
  display:none !important;
}

.logo-grid .logo-title{
  margin-top:8px !important;
}
