/* Danmazge General Enterprises */
.dm-body{font-family:var(--fb);color:var(--text);background:var(--bg);line-height:1.7;margin:0;-webkit-font-smoothing:antialiased}
.dm-wrap{width:min(1080px,90vw);margin:0 auto}
h1,h2,h3{font-family:var(--fd);line-height:1.15;letter-spacing:-.02em}
img{max-width:100%}
.dm-eyebrow{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);margin-bottom:1rem}
.dm-muted{color:var(--muted)}

/* buttons */
.dm-btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.6rem;background:var(--primary);color:#fff;border:none;border-radius:999px;text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 30px -10px color-mix(in srgb,var(--primary) 70%,transparent)}
.dm-btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px -12px color-mix(in srgb,var(--primary) 80%,transparent)}
.dm-btn-ghost{background:transparent;color:var(--primary);border:1.5px solid color-mix(in srgb,var(--primary) 35%,transparent);box-shadow:none}
.dm-btn-ghost:hover{background:color-mix(in srgb,var(--primary) 8%,transparent)}
.dm-btn-sm{padding:.5rem 1.1rem;font-size:.85rem}

/* header */
.dm-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}
.dm-hinner{display:flex;align-items:center;gap:1rem;padding:.9rem 0;flex-wrap:wrap}
.dm-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text);font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.dm-brand small{display:block;font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.dm-logo{width:42px;height:42px;border-radius:12px;display:block;box-shadow:var(--shadow)}
.dm-nav{display:flex;align-items:center;gap:.35rem;margin-left:auto;flex-wrap:wrap}
.dm-navlink{padding:.5rem .95rem;border-radius:999px;text-decoration:none;color:var(--muted);font-weight:500;font-size:.92rem;transition:background .2s,color .2s}
.dm-navlink:hover,.dm-active{color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent)}
.dm-menu{display:none;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);background:var(--surface);padding:.35rem .7rem;border-radius:10px;font-size:1.1rem;cursor:pointer}

/* hero */
.dm-hero{padding:5rem 0 4.5rem;background:radial-gradient(1000px 460px at 6% -20%,color-mix(in srgb,var(--secondary) 20%,transparent),transparent 62%),linear-gradient(180deg,var(--surface),var(--bg))}
.dm-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3.5rem;align-items:center}
.dm-hero h1{font-size:clamp(2.1rem,4.4vw,3.3rem);margin:0 0 1.25rem}
.dm-hero p{font-size:1.1rem;color:var(--muted);max-width:40rem;margin:0}
.dm-hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}
.dm-glass{background:var(--surface);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:calc(var(--radius) + 6px);padding:1.85rem;box-shadow:var(--shadow)}
.dm-glass h3{margin:0 0 1.1rem;font-size:1.1rem}
.dm-checklist{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.dm-checklist li{display:flex;gap:.7rem;align-items:flex-start;color:var(--muted);font-size:.95rem;line-height:1.5}
.dm-checklist li::before{content:"";flex:none;width:20px;height:20px;margin-top:.2rem;border-radius:50%;background-image:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:inset 0 0 0 6px var(--surface)}

/* sections */
.dm-sec{padding:4.5rem 0}
.dm-sec-alt{background:var(--surface)}
.dm-sec-head{max-width:620px;margin-bottom:2.25rem}
.dm-sec-head h2{margin:0;font-size:clamp(1.6rem,3vw,2.2rem)}
.dm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}
.dm-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--text) 7%,transparent);border-radius:var(--radius);padding:1.6rem;transition:transform .25s,box-shadow .25s,border-color .25s}
.dm-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 30%,transparent)}
.dm-sec-alt .dm-card{background:var(--bg)}
.dm-card h3{margin:0 0 .5rem;font-size:1.08rem}
.dm-card p{margin:0;color:var(--muted);font-size:.95rem}
.dm-card a{color:var(--primary);text-decoration:none;font-weight:600}
.dm-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 12%,transparent);font-size:1.2rem;margin-bottom:1rem}

/* about */
.dm-asym{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.dm-asym h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 1rem}
.dm-asym p{color:var(--muted);margin:0}
.dm-panel{background:linear-gradient(160deg,var(--primary),var(--secondary));border-radius:calc(var(--radius) + 6px);padding:2rem;color:#fff;box-shadow:var(--shadow)}
.dm-panel h3{margin:0 0 1.25rem;font-size:1.1rem}
.dm-panel dl{margin:0;display:grid;gap:1.05rem}
.dm-panel dt{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.72}
.dm-panel dd{margin:.15rem 0 0;font-size:.98rem;line-height:1.45}

/* contact */
.dm-contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}

/* footer */
.dm-foot{background:var(--ink);color:#cbd5e1;padding:3.25rem 0 1.5rem}
.dm-foot-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2.5rem;padding-bottom:1.75rem;border-bottom:1px solid rgba(255,255,255,.1)}
.dm-foot strong{color:#fff;display:block;margin-bottom:.6rem}
.dm-foot p{margin:.35rem 0;font-size:.9rem;opacity:.75}
.dm-foot a{color:#fff;text-decoration:none;display:block;margin:.4rem 0;opacity:.8;font-size:.9rem}
.dm-foot a:hover{opacity:1}
.dm-copy{text-align:center;font-size:.82rem;opacity:.55;margin:1.5rem 0 0}

@media(max-width:900px){
  .dm-hero-grid,.dm-asym,.dm-foot-inner{grid-template-columns:1fr}
  .dm-hero-grid,.dm-asym{gap:2.5rem}
  .dm-menu{display:block;margin-left:auto}
  .dm-nav{display:none;width:100%;flex-direction:column;align-items:flex-start;padding-top:.5rem}
  .dm-nav.open{display:flex}
  .dm-nav .dm-btn-sm{margin-top:.5rem}
}
