/*
Theme Name: Angels & Dragons Cultural Agency
Author: Angels & Dragons
Version: 1.0.0
Description: Modern creator/social agency theme inspired by contemporary agency layouts (original implementation) with Angels & Dragons branding.
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: ad-cultural
Tags: custom-logo, custom-colors, custom-menu, one-column, block-styles
*/

:root{
  --bg:#07060a;
  --panel:rgba(10,8,14,.78);
  --border:rgba(214,177,94,.18);
  --text:#f5f1e8;
  --muted:rgba(245,241,232,.75);
  --gold:#d6b15e;
  --gold2:#f2d08a;
  --radius:22px;
  --shadow:0 22px 80px rgba(0,0,0,.55);
  --max:1180px;
}

*{box-sizing:border-box}
body{
  margin:0;
  color:var(--text);
  /* Let the animated flames plugin show through clearly */
  background: transparent;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.6;
}

/* Subtle theme tint overlay (kept light so flames remain visible) */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(1100px 700px at 70% 18%, rgba(214,177,94,.10), transparent 60%),
    radial-gradient(900px 650px at 20% 75%, rgba(214,177,94,.06), transparent 55%),
    linear-gradient(180deg, rgba(6,5,10,.35), rgba(10,7,16,.25) 60%, rgba(6,5,10,.35));
}
a{color:inherit}
.container{max-width:var(--max); margin:0 auto; padding:0 18px}
h1,h2,h3{
  font-family: ui-serif, Georgia, "Times New Roman", Times, serif;
  letter-spacing:.06em;
  text-transform: uppercase;
}
p{color:var(--muted)}

.skip-link{position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus{left:12px; top:12px; width:auto; height:auto; padding:10px 12px; z-index:999; background:#fff; color:#000; border-radius:12px}

.header{
  position:sticky; top:0; z-index:30;
  background: rgba(7,6,10,.55);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 0}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none}
.brand img{width:42px; height:42px; object-fit:contain; border-radius:12px; filter: drop-shadow(0 12px 26px rgba(0,0,0,.55))}
.brand .name{font-weight:900; letter-spacing:.18em; font-size:13px}
.brand .tag{font-size:12px; color:var(--muted)}
.nav ul{display:flex; gap:12px; list-style:none; margin:0; padding:0; flex-wrap:wrap}
.nav a{font-size:13px; text-decoration:none; padding:8px 10px; border-radius:999px; border:1px solid transparent; color:var(--muted)}
.nav a:hover{border-color:rgba(214,177,94,.28); background:rgba(214,177,94,.08); color:var(--text)}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:11px 14px;
  border-radius:999px;
  border:1px solid rgba(214,177,94,.30);
  background: rgba(214,177,94,.08);
  text-decoration:none;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
}
.btn.primary{
  background: linear-gradient(135deg, rgba(214,177,94,.95), rgba(242,208,138,.85));
  color:#1c140c;
}

.section{padding:64px 0}
.card{
  background: var(--panel);
  border:1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.hero{
  padding: 48px 0 0;
}
.hero-grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  align-items:stretch;
}
@media (max-width: 980px){ .hero-grid{grid-template-columns:1fr} }

.hero-copy{padding:26px}
.hero-kicker{
  display:inline-flex; gap:10px; align-items:center;
  padding:8px 12px; border-radius:999px;
  border:1px solid rgba(214,177,94,.25);
  background: rgba(214,177,94,.06);
  color: var(--muted);
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hero h1{margin:14px 0 10px; font-size: clamp(34px, 4.4vw, 62px); line-height:1.03}
.hero p{margin:0; max-width:62ch; font-size:16px}
.hero-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px}

.hero-media{padding:10px; display:flex; align-items:center; justify-content:center; overflow:hidden}
.hero-media .frame{
  width: min(560px, 100%);
  aspect-ratio: 1 / 1;
  border-radius: 22px;
  border:1px solid rgba(214,177,94,.20);
  background: transparent;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.hero-media img{max-width:100%; max-height:100%; object-fit:contain; display:block}

.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:14px}
@media (max-width: 980px){ .grid-2{grid-template-columns:1fr} }

.big-claim{font-size:22px; color: var(--gold2); margin:0 0 10px}
.stat-row{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
@media (max-width: 980px){ .stat-row{grid-template-columns:1fr} }
.stat{padding:18px}
.stat .num{font-size:28px; font-weight:900; color:var(--gold2); letter-spacing:.06em}
.stat .lbl{color:var(--muted); font-size:13px; margin-top:6px}

.tab-buttons{display:flex; gap:10px; flex-wrap:wrap}
.tab-buttons button{
  border:1px solid rgba(214,177,94,.25);
  background: rgba(214,177,94,.06);
  color: var(--text);
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:12px;
}
.tab-buttons button.active{
  background: linear-gradient(135deg, rgba(214,177,94,.95), rgba(242,208,138,.85));
  color:#1c140c;
}
.tab-panel{padding:18px}
ul.clean{margin:0; padding-left:18px; color:var(--muted)}
ul.clean li{margin:6px 0}

.logo-wall{display:grid; grid-template-columns:repeat(6,1fr); gap:10px; align-items:center}
@media (max-width: 980px){ .logo-wall{grid-template-columns:repeat(3,1fr)} }
.logo{
  height:56px;
  border-radius:16px;
  border:1px dashed rgba(255,255,255,.14);
  display:flex; align-items:center; justify-content:center;
  color: rgba(245,241,232,.55);
  background: rgba(255,255,255,.03);
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:11px;
}

.quote{padding:18px}
.quote .who{margin-top:10px; color:rgba(245,241,232,.62); font-size:13px}

.footer{
  border-top:1px solid rgba(255,255,255,.10);
  padding: 22px 0;
  margin-top: 40px;
  color: rgba(245,241,232,.65);
  font-size: 13px;
  position:relative;
}
.footer .y4h{
  position:fixed;
  right:14px;
  bottom:14px;
  z-index:9999;
  opacity:.92;
}
.y4h a{display:block; border-radius:12px; overflow:hidden; }
.y4h img{
  display:block;
  width:120px;
  height:auto;
  max-width:22vw;
  border-radius:12px;
  box-shadow: 0 10px 24px rgba(0,0,0,.45);
}
@media (max-width:480px){
  .y4h img{ width:92px; }
}
.footer .y4h img{width:34px; height:auto; opacity:.75}

/* Clickable partner logo tiles */
.logo-link{ text-decoration:none; }
.logo-link:hover{ border-color: rgba(214,177,94,.35); background: rgba(214,177,94,.08); color: var(--text); }

/* ===== OUR NETWORK REFINEMENTS (FORCED ON) ===== */
.network-heading{
  text-align:center;
  font-size:28px;
  margin-bottom:18px;
  letter-spacing:.12em;
  color:var(--gold2);
}

.logo-wall{
  gap:16px !important;
}

.logo-link{
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.logo-link:hover{
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 18px 40px rgba(214,177,94,.35);
  border-color: rgba(214,177,94,.55);
}

.logo-link img{
  transition: filter .35s ease;
}

.logo-link:hover img{
  filter: drop-shadow(0 0 18px rgba(214,177,94,.85));
}

@media (max-width:768px){
  .logo-wall{
    grid-template-columns:repeat(2,1fr) !important;
  }
}


/* === FLAMES VISIBILITY FIX (NETWORK SECTION) === */
/* Make the flames plugin clearly visible behind the Brands/Network section */
#brands, #brands::before, #brands::after {
  background: transparent !important;
}

/* Reduce overlay strength on the Brands card so flames show through */
#brands .card {
  background: rgba(12, 10, 18, 0.55) !important;
  backdrop-filter: blur(1px) !important;
}

/* Ensure heading area stays transparent */
#brands h2,
#brands .network-heading {
  background: transparent !important;
}

/* If the Network Fix plugin injects a duplicate heading, hide it (theme controls heading) */
#brands .adn-network-heading {
  display: none !important;
}

/* TikTok Apply button */
.tiktok-apply{
  position:fixed;
  right:14px;
  bottom:80px;
  z-index:9999;
}
.tiktok-apply .apply-btn{
  display:inline-block;
  padding:10px 14px;
  border-radius:14px;
  background: linear-gradient(135deg,#ff0050,#00f2ea);
  color:#000;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(0,0,0,.45);
}
.tiktok-apply .apply-btn:hover{
  transform:translateY(-2px);
}


  justify-items: center;
}
#manifesto .grid-2 > .card{
  width: 100%;
  max-width: 560px;
}


/* =====================================================
   FIXES: Y4H footer logo size + equal manifesto boxes
   ===================================================== */

/* Keep Y4H logo IN the footer (not fixed). Make it smaller. */
.footer .y4h{
  position: static !important;
  margin-left: auto;
}
.footer .y4h img{
  width: 70px !important;     /* half of previous desktop size */
  height: auto !important;
  max-width: 100% !important;
  opacity: 0.92;
}
@media (max-width: 767px){
  .footer .y4h img{
    width: 45px !important;   /* half of previous mobile size */
  }
}

/* Make the first two manifesto boxes equal height/size */
#manifesto .grid-2{
  align-items: stretch;
}
#manifesto .grid-2 > .card{
  width: 100%;
  max-width: 560px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
#manifesto .grid-2 > .card > *{
  flex: 0 0 auto;
}


/* =====================================================
   ADJUSTMENTS: move Y4H to footer right + stack hero cards
   ===================================================== */

/* Ensure footer layout allows right alignment */
.footer .container{
  align-items: center !important;
}
.footer a.y4h{
  display: inline-flex;
  align-items: center;
  margin-left: auto !important;   /* push to the far right */
  order: 9999;
}
.footer a.y4h img{
  width: 70px !important;
  height: auto !important;
  max-width: 100% !important;
}
@media (max-width: 767px){
  .footer a.y4h img{ width: 45px !important; }
}

/* Stack the first two hero boxes (text + image) for a clean, even layout */
.home .hero-grid{
  grid-template-columns: 1fr !important;
}
.home .hero-grid > .card{
  width: 100%;
}


/* Hero: show artwork inside the top hero card */
.hero-inline-img{
  margin-top: 14px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(214,177,94,.22);
  background: rgba(0,0,0,.18);
}
.hero-inline-img img{
  display:block;
  width:100%;
  height:auto;
}

/* Footer: keep Y4H on the right */
.footer .footer-links{
  width: 100%;
  justify-content: flex-end !important;
}
.footer .footer-links .y4h{
  margin-left: 12px !important;
}


/* ===============================
   HOTFIX: hero art sizing + remove floating apply + footer logo right
   =============================== */

/* If any floating apply bubble exists, hide it */
.apply-fab, .fab-apply, .floating-apply, .ad-apply-float, .apply-bubble{
  display:none !important;
}

/* Hero image (angel & dragon) should never blow up */
.hero-art img,
.hero .hero-art img,
.hero-card .hero-art img,
.hero-figure img,
.hero-media img{
  width: 100% !important;
  height: auto !important;
  max-height: 420px;
  object-fit: contain !important;
  display:block;
  margin: 0 auto;
}

/* On smaller screens, reduce further */
@media (max-width: 900px){
  .hero-art img,
  .hero .hero-art img,
  .hero-card .hero-art img,
  .hero-figure img,
  .hero-media img{
    max-height: 320px;
  }
}

/* Force footer layout to right-align Y4H logo */
.footer,
.site-footer{
  position: relative;
}
.footer .footer-inner,
.site-footer .footer-inner,
.footer .footer-row,
.site-footer .footer-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}
.footer .y4h,
.site-footer .y4h{
  margin-left: auto !important;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}


/* ===== HERO ART SIZE (reduce) ===== */
.hero-media img,
.hero-art img,
.hero-figure img,
.hero-card img,
.hero .card img {
  max-height: 300px !important;
}
@media (max-width: 900px){
  .hero-media img,
  .hero-art img,
  .hero-figure img,
  .hero-card img,
  .hero .card img {
    max-height: 240px !important;
  }
}
@media (max-width: 520px){
  .hero-media img,
  .hero-art img,
  .hero-figure img,
  .hero-card img,
  .hero .card img {
    max-height: 200px !important;
  }
}


/* ===== REMOVE FLOATING APPLY PILL ===== */
a.apply, .apply, .apply-pill, .apply-fab, .fab-apply, .floating-apply, .apply-bubble {
  display:none !important;
}
/* if it's inside a floating dock */
.floating-dock, .floating-actions, .corner-actions {
  gap: 8px;
}
.floating-dock .apply,
.floating-actions .apply,
.corner-actions .apply {
  display:none !important;
}


/* =====================================================
   HERO LAYOUT (match reference screenshot)
   ===================================================== */
.hero{
  padding-top: 26px;
}
.hero .hero-shell{
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 18px;
}
.hero .hero-card{
  border-radius: 26px;
  background: rgba(18,16,22,.68);
  border: 1px solid rgba(214,177,94,.28);
  box-shadow: 0 26px 80px rgba(0,0,0,.55);
  overflow: hidden;
}
.hero .hero-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px 6px;
}
.hero .hero-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius: 999px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
  color: rgba(245,241,232,.88);
  letter-spacing:.12em;
  text-transform: uppercase;
  font-weight: 800;
  font-size: 11px;
}
.hero .hero-actions{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content:flex-end;
}
.hero .hero-body{
  padding: 8px 18px 18px;
  text-align:center;
}
.hero .hero-title{
  font-family: ui-serif, Georgia, "Times New Roman", Times, serif;
  font-weight: 1000;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(245,241,232,.98);
  font-size: clamp(28px, 3.3vw, 54px);
  line-height: 1.05;
  margin: 10px 0 10px;
}
.hero .hero-sub{
  max-width: 820px;
  margin: 0 auto 18px;
  color: rgba(245,241,232,.80);
  font-size: 15px;
  line-height: 1.55;
}
.hero .hero-media{
  margin-top: 10px;
  border-radius: 22px;
  background: rgba(0,0,0,.22);
  border: 1px solid rgba(255,255,255,.08);
  padding: 16px 14px 10px;
}
/* Make flames show through more */
.page-wrap::before{
  opacity: .42 !important;
}
.hero .btn{
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 12px;
}
@media (max-width: 600px){
  .hero .hero-top{ padding: 14px 14px 6px; }
  .hero .hero-body{ padding: 8px 14px 14px; }
  .hero .hero-title{ font-size: 28px; }
}


/* ===== HERO BUTTONS ABOVE (top-right) + IMAGE NOT SQUASHED ===== */
.hero .hero-top{
  align-items: flex-start;
}
.hero .hero-actions{
  margin-left: auto;
  margin-top: 2px;
}
.hero .hero-inline-img{
  display:flex;
  justify-content:center;
  align-items:center;
}
.hero .hero-inline-img img{
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

