/* === CERTOR SINGLE HEADER TEMPLATE === */

header,
.site-header,
.topbar,
.main-header {
  height: 285px !important;
  min-height: 285px !important;
  background: #07131f !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: visible !important;
  position: relative !important;
  z-index: 9999 !important;
}

/* LOGO AREA */
header .logo,
.site-header .logo,
header .brand,
.site-header .brand,
header .site-logo,
.site-header .site-logo {
  width: 100% !important;
  height: 130px !important;
  padding-top: 34px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  position: relative !important;
  overflow: visible !important;
}

/* LOGO IMAGE */
header img,
.site-header img,
header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
img[alt*="Certor"],
img[src*="logo"],
img[src*="certor"] {
  width: 310px !important;
  max-width: 310px !important;
  height: auto !important;
  max-height: 100px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
}

/* NAV */
header nav,
.site-header nav,
header .navbar,
.site-header .navbar,
header .nav-links,
.site-header .nav-links,
header .main-nav,
.site-header .main-nav {
  width: min(1120px, calc(100% - 70px)) !important;
  margin: 38px auto 0 auto !important;
  padding: 16px 36px !important;
  border-radius: 30px !important;
  background: rgba(8,22,35,.92) !important;
  border: 1px solid rgba(255,255,255,.07) !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 42px !important;
  flex-wrap: nowrap !important;
}

/* CONTENT GAP ONLY */
header + main,
.site-header + main {
  margin-top: 72px !important;
}

/* === FIX: RESTORE HERO IMAGES, LOGO ONLY IN HEADER === */

/* Logo only */
header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img {
  width: 300px !important;
  max-width: 300px !important;
  height: auto !important;
  max-height: 95px !important;
  object-fit: contain !important;
}

/* Restore all content / hero images */
main img,
.hero img,
.hero-image,
.hero-visual img,
.hero-card img,
.hero-media img,
.visual-card img,
.research-card img,
.demo-card img,
.mvp-card img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Restore visual card sizes */
.hero-visual,
.hero-card,
.hero-media,
.visual-card,
.research-card,
.demo-card,
.mvp-card {
  min-height: 320px !important;
}

/* Portal / Research / Signals right image cards */
.hero-visual img,
.visual-card img,
.research-card img,
.demo-card img,
.mvp-card img {
  border-radius: 22px !important;
}

/* Demo image specific */
.demo-hero img,
.demo-card img {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 280px !important;
  object-fit: cover !important;
}

/* Prevent generic logo rules from shrinking content images */
main img[src*="certor"],
main img[src*="demo"],
main img[src*="research"],
main img[src*="signal"],
main img[src*="mvp"] {
  width: 100% !important;
  max-width: 100% !important;
  max-height: none !important;
}

/* === FORCE SAME LOGO SIZE ON ALL PAGES === */

header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
header img:first-of-type,
.site-header img:first-of-type {

  width: 320px !important;
  max-width: 320px !important;
  min-width: 320px !important;

  height: auto !important;
  max-height: 100px !important;

  display: block !important;
  margin: 0 auto !important;

  object-fit: contain !important;
}

/* Demo page override removal */
.demo-page header img,
.demo-hero header img,
body.demo header img {
  width: 320px !important;
  max-width: 320px !important;
}

/* === BIGGER GLOBAL LOGO === */

header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
header img:first-of-type,
.site-header img:first-of-type {

  width: 380px !important;
  max-width: 380px !important;
  min-width: 380px !important;

  height: auto !important;
  max-height: 120px !important;

  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

/* more breathing room for bigger logo */
header,
.site-header,
.topbar,
.main-header {
  min-height: 310px !important;
  height: 310px !important;
}

/* nav slightly lower */
nav,
.navbar,
.nav-links,
.main-nav {
  margin-top: 48px !important;
}

/* === EXTRA LARGE CENTER LOGO === */

header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
header img:first-of-type,
.site-header img:first-of-type {

  width: 460px !important;
  max-width: 460px !important;
  min-width: 460px !important;

  height: auto !important;
  max-height: 145px !important;

  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

/* taller header for bigger logo */
header,
.site-header,
.topbar,
.main-header {
  min-height: 340px !important;
  height: 340px !important;
}

/* nav lower */
nav,
.navbar,
.nav-links,
.main-nav {
  margin-top: 58px !important;
}

/* === BIGGER LOGO ONLY (NO NAV MOVE) === */

header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
header img:first-of-type,
.site-header img:first-of-type {

  width: 540px !important;
  max-width: 540px !important;
  min-width: 540px !important;

  height: auto !important;
  max-height: 165px !important;

  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

/* === FINAL VISUAL BALANCE TUNING === */

/* Bigger logo only */
header .logo img,
.site-header .logo img,
header .brand img,
.site-header .brand img,
header .site-logo img,
.site-header .site-logo img,
header img:first-of-type,
.site-header img:first-of-type {

  width: 620px !important;
  max-width: 620px !important;
  min-width: 620px !important;

  max-height: 180px !important;
}

/* Softer nav */
nav,
.navbar,
.nav-links,
.main-nav {
  border: 1px solid rgba(255,255,255,.05) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.18) !important;
}

/* Slightly larger right visuals */
.hero-visual,
.hero-card,
.visual-card,
.demo-card,
.research-card,
.mvp-card {
  transform: scale(1.06) !important;
  transform-origin: center center !important;
}

/* === CONTACT PAGE: HIDE WHITE TITLE === */
.contact h1,
.contact-hero h1,
.contact-page h1,
body:has(.contact-hero) h1 {
  display: none !important;
}

/* === RESEARCH PAPER CARD REFINED === */

.paper-section {
  max-width: 860px !important;
  margin: 48px auto 90px auto !important;
  padding: 34px 38px !important;
  border-radius: 24px !important;

  background: rgba(7,18,30,.78) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
}

.paper-section h2 {
  font-size: 30px !important;
  margin-bottom: 14px !important;
}

.paper-section p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  max-width: 760px !important;
}

.paper-section a {
  padding: 12px 22px !important;
  border-radius: 14px !important;
  font-size: 15px !important;
}
.demo-mini-btn{
background:rgba(15,28,46,.92);
border:1px solid rgba(255,255,255,.10);
color:#dfe7f5;
padding:10px 14px;
border-radius:12px;
font-size:13px;
font-weight:700;
cursor:pointer;
transition:.2s ease;
}

.demo-mini-btn:hover{
border-color:#79ff65;
color:#79ff65;
transform:translateY(-1px);
}

.demo-mini-btn{
background:rgba(15,28,46,.92);
border:1px solid rgba(255,255,255,.08);
color:#dfe7f5;
padding:8px 12px;
border-radius:10px;
font-size:12px;
font-weight:700;
cursor:pointer;
transition:.18s ease;
min-width:auto;
}

.demo-mini-btn:hover{
border-color:#79ff65;
color:#79ff65;
}

.demo-action-btn{
padding:12px 18px !important;
font-size:14px !important;
border-radius:14px !important;
}

.demo-grid-buttons{
display:flex;
flex-wrap:wrap;
gap:10px;
align-items:center;
margin-top:18px;
}
/* === DEMO BUTTONS PROFESSIONAL SIZE === */
.demo-mini-btn,
.demo-hero button,
.demo-hero .btn,
.demo-hero a.btn {
  padding: 8px 12px !important;
  font-size: 12px !important;
  border-radius: 10px !important;
  min-height: auto !important;
  line-height: 1.2 !important;
}

.demo-hero button {
  margin: 4px !important;
}
/* smaller secondary demo buttons */

button.secondary-demo-btn,
.demo-secondary-btn {
  padding: 10px 14px !important;
  font-size: 12px !important;
  border-radius: 12px !important;
  opacity: .92;
}
