/* Isolated ad-destination sites — tokens from the LRW design system (frontend-design skill). Standalone file. */
:root { --navy:#0a0f2e; --navy-2:#0d1b5e; --blue:#1a3de4; --blue-hover:#1230c0; --cyan:#00d4ff; --orange:#ff5c1a;
  --orange-hover:#e5500f; --whatsapp:#25d366; --whatsapp-hover:#1ebc57; --white:#ffffff; --off:#f0f4ff; --gray:#6b7a99;
  --navy-gray:#4a5570; --light-gray:#e8edf8; --border:rgba(26,61,228,.12); --card-shadow:0 4px 24px rgba(10,15,46,.08); --radius:14px; }
* { box-sizing:border-box; } html { -webkit-text-size-adjust:100%; }
body { margin:0; background:var(--white); color:var(--navy); font-family:'Nunito',system-ui,sans-serif; font-size:16px; line-height:1.6; }
h1,h2,h3,.brand,.btn,label { font-family:'Outfit',system-ui,sans-serif; }
h1,h2,h3 { margin:0 0 12px; line-height:1.2; color:var(--navy); }
h1 { font-size:clamp(1.9rem,4.6vw,2.8rem); font-weight:900; } h2 { font-size:clamp(1.45rem,3.2vw,2rem); font-weight:800; } h3 { font-size:1.08rem; font-weight:800; }
p { margin:0 0 12px; color:var(--navy-gray); } a { color:var(--blue); } a:hover { color:var(--blue-hover); }
.container { width:100%; max-width:1160px; margin:0 auto; padding:0 16px; }
.topbar { background:var(--blue); color:var(--white); text-align:center; font-weight:700; font-size:.9rem; padding:8px 16px; }
.site-header { background:var(--navy); position:sticky; top:0; z-index:10; }
.site-header .container { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; }
.brand { color:var(--white); text-decoration:none; font-weight:900; font-size:1.2rem; } .brand span { color:var(--cyan); }
.site-nav { display:flex; gap:18px; flex-wrap:wrap; } .site-nav a { color:rgba(255,255,255,.85); text-decoration:none; font-weight:700; font-size:.95rem; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color:var(--cyan); }
.btn { display:inline-flex; align-items:center; gap:8px; padding:13px 22px; border-radius:999px; font-weight:800; font-size:1rem; text-decoration:none; border:0; cursor:pointer; }
.btn-orange { background:var(--orange); color:var(--white); } .btn-orange:hover { background:var(--orange-hover); color:var(--white); }
.btn-blue { background:var(--blue); color:var(--white); } .btn-blue:hover { background:var(--blue-hover); color:var(--white); }
.btn-whatsapp { background:var(--whatsapp); color:var(--white); } .btn-whatsapp:hover { background:var(--whatsapp-hover); color:var(--white); }
.btn-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.hero { background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%); padding:56px 0 48px; }
.hero h1 { color:var(--white); } .hero p { color:rgba(255,255,255,.85); font-size:1.06rem; max-width:760px; } .hero .eyebrow { color:var(--cyan); }
.hero a:not(.btn) { color:var(--cyan); }
.hero-points { list-style:none; margin:16px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px 18px; }
.hero-points li { color:rgba(255,255,255,.85); font-weight:600; } .hero-points i { color:var(--cyan); margin-right:6px; }
.crumbs { font-size:.9rem; margin-bottom:10px; color:rgba(255,255,255,.75); } .crumbs a { color:var(--cyan); text-decoration:none; }
.section { padding:52px 0; background:var(--white); } .section.alt { background:var(--off); }
.eyebrow { display:inline-block; font-family:'Outfit',system-ui,sans-serif; font-weight:800; font-size:.8rem; letter-spacing:1.2px; text-transform:uppercase; color:var(--blue); margin-bottom:8px; }
.section-title { max-width:780px; margin:0 0 26px; }
.grid { display:grid; gap:16px; } .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); } .grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); } .grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.card { background:var(--white); border:1px solid var(--border); border-radius:var(--radius); padding:20px; box-shadow:var(--card-shadow); }
a.card { text-decoration:none; display:block; } a.card:hover { border-color:rgba(26,61,228,.3); }
.card h3 i { color:var(--blue); margin-right:8px; } .card p { font-size:.95rem; margin:0; } .card .meta { display:block; color:var(--blue); font-weight:800; font-size:.9rem; margin-bottom:6px; }
.step-no { display:inline-flex; width:34px; height:34px; border-radius:50%; background:var(--blue); color:var(--white); align-items:center; justify-content:center; font-family:'Outfit',sans-serif; font-weight:900; margin-bottom:10px; }
ul.ticks { list-style:none; margin:0; padding:0; display:grid; gap:8px; } ul.ticks li { color:var(--navy-gray); padding-left:26px; position:relative; } ul.ticks li i { position:absolute; left:0; top:5px; color:var(--blue); }
.faq { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.faq details { background:var(--white); border:1px solid var(--border); border-radius:var(--radius); padding:16px 20px; }
.faq summary { cursor:pointer; font-family:'Outfit',sans-serif; font-weight:800; color:var(--navy); list-style:none; } .faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:'+'; float:right; color:var(--blue); font-weight:900; } .faq details[open] summary::after { content:'−'; } .faq details p { margin:10px 0 0; }
.cta-band { background:var(--navy); padding:44px 0; } .cta-band h2 { color:var(--white); } .cta-band p { color:rgba(255,255,255,.85); }
.site-footer { background:var(--navy); border-top:1px solid rgba(255,255,255,.12); padding:28px 0 90px; }
.site-footer p, .site-footer a { color:rgba(255,255,255,.75); font-size:.92rem; } .site-footer a:hover { color:var(--cyan); }
.footer-links { display:flex; flex-wrap:wrap; gap:8px 18px; margin-bottom:10px; }
.prose { max-width:820px; } .prose h2 { margin-top:26px; font-size:1.3rem; } .prose ul { color:var(--navy-gray); padding-left:20px; }
form.lead { display:grid; gap:14px; max-width:760px; }
form.lead .row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
form.lead label { display:block; font-weight:800; font-size:.92rem; color:var(--navy); margin-bottom:4px; }
form.lead input, form.lead select, form.lead textarea { width:100%; padding:12px 14px; border:1px solid var(--light-gray); border-radius:10px; font:inherit; color:var(--navy); background:var(--white); }
form.lead input:focus, form.lead select:focus, form.lead textarea:focus { outline:2px solid var(--blue); border-color:var(--blue); }
form.lead .checks { display:flex; flex-wrap:wrap; gap:8px 18px; } form.lead .checks label { font-family:'Nunito',sans-serif; font-weight:600; display:inline-flex; gap:6px; align-items:center; }
form.lead .checks input { width:auto; }
.form-msg { font-weight:700; margin:0; } .form-msg.ok { color:#11804a; } .form-msg.err { color:#b42318; }
.small { font-size:.88rem; color:var(--navy-gray); }
table.specs { width:100%; border-collapse:collapse; background:var(--white); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; }
table.specs th, table.specs td { text-align:left; padding:10px 14px; border-bottom:1px solid var(--light-gray); vertical-align:top; }
table.specs th { width:34%; color:var(--navy); font-family:'Outfit',sans-serif; font-weight:800; background:var(--off); } table.specs td { color:var(--navy-gray); }
.price { font-family:'Outfit',sans-serif; font-weight:900; font-size:1.8rem; color:var(--navy); margin:0 0 4px; }
.chips { display:flex; flex-wrap:wrap; gap:8px; } .chips a { display:inline-block; padding:8px 14px; border-radius:999px; background:var(--white); border:1px solid var(--border); text-decoration:none; font-weight:700; color:var(--blue); }
ul.plist { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 18px; } ul.plist a { font-weight:700; text-decoration:none; } ul.plist span { color:var(--navy-gray); font-size:.9rem; }
.float-cta { display:none; }
@media (max-width:1000px) { .grid-4, .grid-3 { grid-template-columns:repeat(2,minmax(0,1fr)); } .grid-4 > :last-child:nth-child(odd), .grid-3 > :last-child:nth-child(odd) { grid-column:1 / -1; } }
@media (max-width:640px) { .grid-2, .grid-3, .grid-4, ul.plist, form.lead .row { grid-template-columns:1fr; } .site-nav { gap:12px; } .site-nav a.hide-sm { display:none; }
  .hero { padding:40px 0 36px; }
  .float-cta { display:flex; position:fixed; left:0; right:0; bottom:0; gap:8px; padding:10px 12px; background:var(--white); box-shadow:0 -4px 16px rgba(10,15,46,.12); z-index:20; }
  .float-cta .btn { flex:1; justify-content:center; padding:12px; } }
