/*
Theme Name: DL BrokerOnly
Theme URI: https://danlangsellshomesteam.com/
Author: Dan Lang
Description: Broker-only WordPress theme optimized for Showcase IDX + Zoho lead magnets. Dual-logo header/footer, modern homepage, lighter blue palette, sticky header, and polished hover/mobile behavior.
Version: 1.5.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dl-brokeronly
Tags: custom-logo, custom-menu, featured-images, full-width-template, block-styles, accessibility-ready
*/

:root{
  --dl-maxw: 1200px;
  --dl-pad: 20px;

  --dl-text: #0f172a;
  --dl-muted: #475569;
  --dl-border: #e5e7eb;

   /* Gunmetal blue palette */
  --dl-dark: #1e2b36;          /* header background */
  --dl-dark-2: #243544;        /* topbar */
  --dl-hero-1: #2d4154;        /* hero gradient start */
  --dl-hero-2: #3f5f7e;        /* hero gradient end */

  --dl-accent: #3f5f7e;        /* primary buttons */
  --dl-accent-hover: #5d7893;  /* hover */

  --dl-gold: #c7a14a;          /* subtle gold accent */
  --dl-white: #ffffff;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color: var(--dl-text);
  background:#fff;
  line-height:1.55;
}
a{color:var(--dl-accent); text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%; height:auto}

.dl-container{max-width:var(--dl-maxw); margin:0 auto; padding: 0 var(--dl-pad)}

/* Top Bar */
.dl-topbar{
  background: var(--dl-dark-2);
  color: rgba(255,255,255,.92);
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.dl-topbar a{color:#fff}
.dl-topbar-inner{display:flex; gap:12px; align-items:center; justify-content:space-between; padding:10px 0}
.dl-topbar small{opacity:.95}

/* Header (sticky) */
.dl-header{
  position: sticky;
  top: 0;
  z-index: 999;
  background: var(--dl-dark);
  border-bottom: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(6px);
}
.dl-header-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:14px 0;
}
.dl-dual-logo{display:flex; align-items:center; gap:14px}
.dl-dual-logo img{display:block; max-height:44px; width:auto}
.dl-dual-logo .dl-brokerage-logo img{max-height:34px; opacity:.98}

/* Mobile menu toggle */
.dl-menu-toggle{
  display:none;
  background: transparent;
  border: 1px solid rgba(255,255,255,.25);
  color:#fff;
  padding: 10px 12px;
  border-radius: 12px;
  font-weight: 800;
}
.dl-nav{}
.dl-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap}
.dl-nav a{color:rgba(255,255,255,.95); font-weight:800}
.dl-nav a:hover{color:#fff; text-decoration:none}

@media (max-width: 960px){
  .dl-menu-toggle{display:inline-flex; align-items:center; gap:8px}
  .dl-nav{display:none; width:100%}
  .dl-nav.is-open{display:block}
  .dl-nav ul{flex-direction:column; gap:10px; padding:14px 0}
  .dl-header-inner{flex-wrap:wrap}
}

/* Main wrapper */
.dl-main{background:#fff}

/* Hero */
.dl-hero{
  background:
    radial-gradient(1000px 520px at 18% 10%, rgba(199,161,74,.16), transparent 55%),
    radial-gradient(920px 520px at 86% 20%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(135deg, var(--dl-hero-1), var(--dl-hero-2));
  color:#fff;
  padding: 58px 0 46px;
}
/* Premium hero overlay */
.dl-hero{
  position: relative;
}

.dl-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    rgba(10,25,45,.55),
    rgba(10,25,45,.35)
  );
  z-index:0;
}

.dl-hero > *{
  position:relative;
  z-index:1;
}
.dl-hero h1{margin:0 0 10px; font-size: clamp(30px, 4vw, 46px); line-height:1.12}
.dl-hero p{margin:0 0 18px; color:rgba(255,255,255,.90); font-size: 18px}

.dl-hero-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:14px}

/* Buttons */
.dl-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 11px 16px;
  border-radius: 12px;
  border:1px solid rgba(255,255,255,.14);
  background: var(--dl-accent);
  color:#fff;
  font-weight:900;
  transition: transform .12s ease, filter .12s ease, background-color .12s ease;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}
.dl-btn:hover{ text-decoration:none; transform: translateY(-1px); background: var(--dl-accent-hover); }
.dl-btn:active{ transform: translateY(0px); }
.dl-btn-secondary{
  background: transparent;
  border:1px solid rgba(255,255,255,.26);
  color:#fff;
  box-shadow:none;
}

/* Sections */
.dl-section{padding: 46px 0}
.dl-section-title{margin:0 0 16px; font-size: 26px}

/* Cards */
.dl-card{
  border:1px solid var(--dl-border);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow: 0 10px 30px rgba(2,6,23,.08);
  transition: transform .14s ease, box-shadow .14s ease;
}
.dl-card:hover{
  transform: translateY(-6px) scale(1.01);
  box-shadow:0 22px 60px rgba(2,6,23,.18);
}
.dl-card-body{padding:18px}
.dl-card h3{margin:0 0 8px}
.dl-card p{margin:0; color:var(--dl-muted)}
.dl-card .dl-card-actions{margin-top:14px}

.dl-grid-3{display:grid; grid-template-columns: repeat(3, 1fr); gap:18px}
@media (max-width: 900px){ .dl-grid-3{grid-template-columns:1fr} }
.dl-card img{
	.dl-card img{
  transition: transform .35s ease;
}

.dl-card:hover img{
  transform: scale(1.05);
}
  width:100%;
  height:220px;
  object-fit:cover;
  object-position: top;
  display:block;
}
}.dl-card img[alt="About Dan"]{
  height:260px;
  object-fit:cover;
}
/* Market tiles */
.dl-market-grid{display:grid; grid-template-columns: repeat(3, 1fr); gap:14px}
@media (max-width: 900px){ .dl-market-grid{grid-template-columns:1fr} }

.dl-tile{
  position:relative; border-radius:18px; overflow:hidden;
  min-height: 170px;
  background: #0b1220;
  box-shadow: 0 18px 46px rgba(2,6,23,.14);
  transform: translateY(0);
  transition: transform .16s ease, box-shadow .16s ease;
}
.dl-tile:hover{
  transform: translateY(-2px);
  box-shadow: 0 22px 56px rgba(2,6,23,.18);
}
.dl-tile img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.05)}
.dl-tile:after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.56));
}
.dl-tile-label{
  position:absolute; left:16px; bottom:14px; z-index:2;
  color:#fff; font-weight:950; letter-spacing:.2px;
  text-shadow: 0 2px 12px rgba(0,0,0,.55);
  font-size: 18px;
}
.dl-tile a{position:absolute; inset:0; z-index:3; text-indent:-9999px}

/* Banners */
.dl-banner{
  position:relative; border-radius:20px; overflow:hidden;
  min-height: 320px;
  background: #0b1220;
  box-shadow: 0 18px 48px rgba(2,6,23,.16);
}
.dl-banner img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.05)}
.dl-banner:after{content:""; position:absolute; inset:0; background: linear-gradient(90deg, rgba(0,0,0,.55), rgba(0,0,0,.18));}
.dl-banner-content{
  position:absolute; inset:0;
  display:flex; align-items:center;
  padding: 28px;
  color:#fff; z-index:2;
}
.dl-banner-content h2{margin:0 0 10px; font-size: clamp(26px, 3.2vw, 40px); line-height:1.1}
.dl-banner-content p{margin:0 0 14px; color:rgba(255,255,255,.88); max-width: 560px}

/* Footer */
.dl-footer{background:var(--dl-dark); color:rgba(255,255,255,.90); padding: 28px 0; margin-top: 46px}
.dl-footer a{color:rgba(255,255,255,.92)}
.dl-footer a:hover{color:#fff; text-decoration:none}
.dl-footer-grid{display:grid; grid-template-columns: 1.2fr 1fr 1fr; gap:18px}
@media (max-width: 900px){ .dl-footer-grid{grid-template-columns:1fr} }
.dl-footer-logos{display:flex; align-items:center; gap:14px; flex-wrap:wrap}
.dl-footer-logos img{max-height:40px; width:auto}
.dl-small{font-size: 13px; opacity:.94}
.dl-divider{height:1px; background: rgba(255,255,255,.12); margin: 14px 0}

/* Post/content */
.dl-post{padding:22px 0}
.dl-post h1{margin-top:0}
.dl-meta{color:var(--dl-muted); font-size: 14px}
.dl-form input, .dl-form textarea{
  width:100%; padding:10px; border:1px solid var(--dl-border); border-radius:12px;
}
.dl-form label{font-weight:900; font-size:14px}
.dl-form .dl-row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
@media (max-width: 700px){ .dl-form .dl-row{grid-template-columns:1fr} }

button[data-dl-copy]{cursor:pointer}
/* Partner Logo Fix */
.dl-partners-section .dl-card img{
width:100%;
height:160px;
object-fit:contain;
padding:20px;
background:#fff;
}