/*
 * public/styles.css — Dalmia Computers site theme.
 *
 * Extracted verbatim from the homepage's own inline <style> block in
 * app/src/routes/dalmiaLaunchRoutes.cjs, which every server-rendered page already
 * references via <link rel="stylesheet" href="/styles.css"> — but that file never
 * existed in the tracked repo, so the live site was silently 404'ing on this request
 * (styling still worked only because it is duplicated inline on every page).
 *
 * This file restores the missing static asset with the exact, already-live theme
 * (no visual/behavioural change), so the link resolves (200) and can be cached by
 * the browser/CDN instead of every page re-downloading the same CSS inline.
 */
:root { --ice:#FDFEFF; --cyan:#00CFE8; --indigo:#20145f; --royal:#3824a7; --ink:#14213d; --muted:#5d6985; --line:#d8e8f4; --soft:#eefaff; --green:#0b8f63; }
* { box-sizing: border-box; }
body { margin:0; font-family: Inter, Segoe UI, Arial, sans-serif; color:var(--ink); background:linear-gradient(180deg,#FDFEFF 0%,#eefaff 48%,#fff 100%); }
a { color:inherit; text-decoration:none; }
.wrap { width:min(1280px, calc(100% - 32px)); margin:0 auto; }
.top { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:5; }
.nav { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.brand { display:flex; align-items:center; gap:12px; font-weight:900; letter-spacing:.2px; color:var(--indigo); }
.mark { width:44px; height:44px; border-radius:12px; background:linear-gradient(135deg,var(--indigo),var(--cyan)); display:grid; place-items:center; color:#fff; font-weight:900; box-shadow:0 12px 30px rgba(63,81,181,.22); }
.links { display:flex; gap:14px; flex-wrap:wrap; align-items:center; font-size:14px; color:#28385f; }
.call { background:var(--indigo); color:#fff; padding:11px 14px; border-radius:8px; font-weight:800; }
.hero { min-height:calc(100vh - 72px); padding:clamp(28px,4vw,72px) 0 26px; display:grid; align-content:center; overflow:hidden; background:radial-gradient(circle at 74% 14%, rgba(0,207,232,.24), transparent 31%), linear-gradient(135deg,#fbfdff 0%,#eef8ff 44%,#fff 100%); }
.hero .grid { align-items:center; }
.launch { display:inline-flex; border:1px solid rgba(0,207,232,.55); background:#fff; color:#18316f; padding:8px 12px; border-radius:999px; font-size:13px; font-weight:900; margin-bottom:18px; box-shadow:0 10px 28px rgba(0,207,232,.14); }
h1 { font-size:clamp(40px, 5.6vw, 84px); line-height:.98; margin:0 0 18px; letter-spacing:0; color:var(--indigo); }
h2 { font-size:clamp(24px, 3vw, 36px); margin:0 0 14px; color:#17295a; letter-spacing:0; }
h3 { margin:0 0 8px; color:#20346b; }
p { color:var(--muted); line-height:1.65; margin:0 0 14px; }
.grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.hero-copy { grid-column:span 7; min-width:0; }
.home-lead { font-size:clamp(17px,1.4vw,22px); max-width:820px; color:#34405a; }
.hero-card { grid-column:span 5; background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; }
.hero-visual { margin:0 auto 12px; border-radius:0; overflow:visible; border:0; background:transparent; aspect-ratio:1 / 1; max-width:560px; }
.hero-visual img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 28px 44px rgba(32,20,95,.22)); }
.hero-card-body { border:1px solid rgba(32,20,95,.14); border-left:5px solid var(--cyan); border-radius:8px; background:rgba(255,255,255,.92); padding:14px 16px; box-shadow:0 14px 38px rgba(32,20,95,.08); }
.actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:22px; }
.btn { border:0; cursor:pointer; display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:0 16px; border-radius:8px; font-weight:850; background:var(--indigo); color:#fff; box-shadow:0 10px 24px rgba(63,81,181,.18); }
.btn.whatsapp { background:linear-gradient(135deg,#0b8f63,#14c38e); }
.btn.call-btn { background:var(--royal); }
.btn.secondary { background:#fff; color:var(--indigo); border:1px solid var(--line); box-shadow:none; }
.home-trust-strip { margin-top:28px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; max-width:920px; }
.home-trust-strip span { min-height:58px; border:1px solid rgba(0,207,232,.28); background:rgba(255,255,255,.86); border-radius:8px; padding:12px; display:flex; align-items:center; color:#1f3569; font-size:13px; font-weight:900; }
.section { padding:32px 0; }
.card { background:#fff; border:1px solid var(--line); border-radius:8px; padding:20px; box-shadow:0 14px 34px rgba(41,67,123,.07); }
.tile { grid-column:span 4; min-height:142px; }
.two { grid-column:span 6; }
.full { grid-column:1 / -1; }
.badge { display:inline-flex; align-items:center; border-radius:999px; background:var(--soft); color:#24427d; border:1px solid var(--line); padding:6px 10px; font-size:12px; font-weight:850; margin:0 8px 8px 0; }
form { display:grid; gap:12px; }
label { font-size:13px; font-weight:850; color:#263b6b; }
input, select, textarea { width:100%; border:1px solid #cddfeb; background:#fff; border-radius:8px; min-height:44px; padding:10px 12px; font:inherit; color:#14213d; }
textarea { min-height:108px; resize:vertical; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.check { display:flex; gap:10px; align-items:flex-start; font-size:13px; color:#4e5e7f; }
.check input { width:auto; min-height:auto; margin-top:3px; }
.notice { border-left:4px solid var(--cyan); background:#f4fcff; padding:12px 14px; border-radius:8px; color:#31436d; }
.result { min-height:22px; font-weight:850; color:#1b6b45; }
.result.bad { color:#a83d3d; }
.gate03-hp { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; opacity:0; }
footer { margin-top:34px; padding:28px 0; border-top:1px solid var(--line); background:#fff; color:#53627d; }
.foot { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; }
@media (max-width: 860px) {
  .hero-copy, .hero-card, .tile, .two { grid-column:1 / -1; }
  .hero { min-height:auto; padding:18px 0 24px; }
  .hero-card { order:-1; }
  .hero-visual { width:min(82vw,320px); max-height:280px; }
  h1 { font-size:38px; }
  .home-trust-strip { grid-template-columns:1fr; }
  .btn { width:100%; }
  .nav { align-items:flex-start; flex-direction:column; padding:14px 0; }
  .links { width:100%; }
  .form-row { grid-template-columns:1fr; }
  .call { width:100%; justify-content:center; text-align:center; }
}
@media (min-width: 1600px) {
  .wrap { width:min(1760px, calc(100% - 72px)); }
  .hero { min-height:calc(100vh - 72px); }
  .hero-visual { max-width:650px; }
  .home-trust-strip span { min-height:64px; font-size:15px; }
}
