:root{--purple:#3b1d7a;--purple-d:#2a1259;--teal:#3fb8ad;--teal-d:#2a9a90;--bg:#f5f6fa;--ink:#1d1538;--muted:#4a4560;--radius:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{line-height:1.2;margin:0}

.btn{display:inline-block;padding:.7rem 1.4rem;border-radius:10px;font-weight:600;text-decoration:none;border:2px solid transparent;cursor:pointer;font:inherit;font-weight:600}
.btn-teal{background:var(--teal);color:#fff}.btn-teal:hover{background:var(--teal-d)}
.btn-purple{background:var(--purple);color:#fff}.btn-purple:hover{background:var(--purple-d)}
.btn-outline{border-color:var(--teal);color:var(--purple);background:#fff}
.btn:disabled{opacity:.6;cursor:wait}

.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.5rem clamp(1rem,6vw,8rem);background:#fff;box-shadow:0 4px 18px rgba(59,29,122,.12);border-radius:0 0 24px 24px}
.brand img{height:90px;width:auto;transition:height .25s}
.nav{transition:padding .25s,box-shadow .25s}
.nav.scrolled{padding-top:.25rem;padding-bottom:.25rem;box-shadow:0 6px 22px rgba(59,29,122,.2)}
.nav.scrolled .brand img{height:62px}
.nav nav{display:flex;align-items:center;gap:1.8rem}
.nav nav a:not(.btn){text-decoration:none;font-weight:600;padding:.3rem 0;border-bottom:3px solid transparent}
.nav nav a:not(.btn):hover,.nav nav a[aria-current=page]{border-color:var(--teal)}
.nav-toggle,.burger{display:none}

.hero{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;padding:3rem clamp(1rem,6vw,8rem)}
.hero h1{font-size:clamp(1.8rem,4vw,2.8rem);color:var(--purple);font-weight:700}
.actions{display:flex;gap:1rem;flex-wrap:wrap;margin:2rem 0 1rem}
.badges{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;font-size:.9rem;font-weight:500}
.badges li::before{content:"• ";color:var(--teal)}
.hero-img img,.hero-ph{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius);box-shadow:0 12px 30px rgba(59,29,122,.25)}
.hero-ph{display:grid;place-items:center;background:linear-gradient(135deg,#e7e2f7,#d8f2ef)}
.hero-ph img{width:40%;aspect-ratio:auto;box-shadow:none;border-radius:0}

.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1.2rem;padding:0 clamp(1rem,6vw,8rem) 2.5rem}
.card{background:#fff;border-radius:14px;padding:1.4rem 1rem;text-align:center;box-shadow:0 6px 18px rgba(59,29,122,.15)}
.card h3{font-size:1rem;margin:.7rem 0 .3rem}.card p{margin:0;font-size:.85rem;color:var(--muted)}
.ico{display:inline-grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--purple);color:#fff}
.card:nth-child(even) .ico{background:var(--teal)}

.coverage{background:var(--teal);text-align:center;padding:.9rem 1rem;color:#fff}
.coverage h2{font-size:clamp(1.1rem,3vw,1.7rem);text-shadow:0 2px 4px rgba(0,0,0,.25)}

.block{padding:3rem clamp(1rem,6vw,8rem)}
.block>h2{text-align:center;color:var(--purple);font-size:1.8rem;margin-bottom:1.5rem}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.2rem}
.panel{background:#fff;border-radius:14px;padding:1.4rem;margin:0;box-shadow:0 6px 18px rgba(59,29,122,.12)}
.panel h3{color:var(--purple);margin-bottom:.4rem}.panel p{margin:0;color:var(--muted)}
.panel footer{margin-top:.8rem;font-weight:600;font-size:.9rem}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}
.gallery figcaption{font-size:.85rem;color:var(--muted);margin-top:.3rem}

.quote{max-width:760px;margin:0 auto}
.lead{text-align:center;margin:0 0 1.5rem;color:var(--muted)}
#quote-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#fff;padding:1.5rem;border-radius:var(--radius);box-shadow:0 6px 18px rgba(59,29,122,.12)}
#quote-form label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.9rem}
#quote-form input,#quote-form select,#quote-form textarea{font:inherit;padding:.65rem;border:1.5px solid #cfc9e3;border-radius:8px;background:#fff}
#quote-form input:focus,#quote-form select:focus,#quote-form textarea:focus{outline:2px solid var(--teal);border-color:var(--teal)}
.full{grid-column:1/-1}
.hp{position:absolute;left:-9999px;opacity:0}
#quote-msg{margin:0;text-align:center;font-weight:600;min-height:1.4em}
#quote-msg.ok{color:#14796f}#quote-msg.err{color:#b3261e}

.footer{background:var(--purple);color:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:2.5rem clamp(1rem,6vw,8rem) 1.5rem}
.footer h4{margin:0 0 .6rem;font-size:1.05rem}
.footer p{margin:.2rem 0;font-size:.9rem}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}
.flogo{background:#fff;border-radius:14px;padding:6px;height:108px;width:auto;margin-bottom:.5rem}
.copy{grid-column:1/-1;text-align:center;font-size:.8rem!important;opacity:.85;margin-top:1rem!important}

.to-top{position:fixed;right:1rem;bottom:4.6rem;z-index:20;width:46px;height:46px;border-radius:50%;border:0;background:var(--purple);color:#fff;font-size:1.4rem;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.to-top:hover{background:var(--purple-d)}
.to-top[hidden]{display:none}
.wa{position:fixed;right:1rem;bottom:1rem;z-index:20;background:#25d366;color:#fff;font-weight:600;padding:.7rem 1.1rem;border-radius:999px;text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,.25)}

@media(max-width:820px){
  .hero{grid-template-columns:1fr;padding-top:2rem}
  .brand img{height:68px}
  .nav.scrolled .brand img{height:54px}
  .footer{grid-template-columns:1fr}
  #quote-form{grid-template-columns:1fr}
  .burger{display:block;cursor:pointer;padding:.8rem}
  .burger span,.burger span::before,.burger span::after{display:block;width:24px;height:3px;background:var(--purple);border-radius:2px;position:relative;content:""}
  .burger span::before{position:absolute;top:-8px}.burger span::after{position:absolute;top:8px}
  .nav nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;padding:1rem;gap:.8rem;box-shadow:0 10px 20px rgba(0,0,0,.12)}
  .nav-toggle:checked~nav{display:flex}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.prose{max-width:820px;margin:0 auto;text-align:center;font-size:1.05rem;color:var(--muted)}
.prose p{margin:0 0 1rem}
.about{padding-bottom:1rem}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto}
.svc{background:#fff;border-radius:var(--radius);padding:1.8rem;box-shadow:0 6px 18px rgba(59,29,122,.15);border-top:5px solid var(--teal);display:flex;flex-direction:column;gap:.6rem}
.svc:nth-child(even){border-top-color:var(--purple)}
.svc h3{color:var(--purple);font-size:1.25rem}
.svc .sub{color:var(--teal-d);font-weight:600;margin:0}
.svc p{margin:0;color:var(--muted)}
.svc .note{font-size:.88rem;font-style:italic;border-left:3px solid var(--teal);padding-left:.8rem}
.svc .btn{align-self:flex-start;margin-top:auto}
.cov-text{text-align:center;padding:1.8rem 1rem 0;max-width:760px;margin:0 auto;color:var(--muted)}
.cov-text p{margin:.2rem 0}
.cov-text .comunas{color:var(--purple);font-weight:700;font-size:1.3rem}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:1rem;max-width:1100px;margin:0 auto}
.ccard{background:#fff;border-radius:14px;padding:1.2rem;text-decoration:none;box-shadow:0 6px 18px rgba(59,29,122,.12);display:flex;flex-direction:column;gap:.2rem;overflow-wrap:anywhere}
.ccard b{color:var(--teal-d);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}
a.ccard:hover{outline:2px solid var(--teal)}
.footer .credit{grid-column:1/-1;text-align:center;font-size:.8rem!important;opacity:.85;margin:0!important}
.footer .credit a{font-weight:600;text-decoration:underline}

.cta-band{background:#fff;text-align:center;padding:2.2rem 1rem;margin-top:1rem}
.cta-band p{margin:0 auto 1rem;max-width:620px;color:var(--muted)}
main>.cov:first-child .coverage{margin-top:2rem}

/* ===== Capa visual (sin alterar la estructura de la maqueta) ===== */
:root{--purple-l:#5a35b0;--teal-l:#55d0c4;--shadow:0 10px 30px rgba(59,29,122,.16)}
body{background:radial-gradient(900px 500px at 100% 0,rgba(63,184,173,.10),transparent 60%),radial-gradient(800px 500px at 0 35%,rgba(90,53,176,.07),transparent 60%),var(--bg)}

/* Encabezado */
.nav{background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px)}
.nav .btn-teal{background:linear-gradient(135deg,var(--teal-l),var(--teal-d));box-shadow:0 6px 16px rgba(42,154,144,.35);transition:transform .2s,box-shadow .2s}
.nav .btn-teal:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(42,154,144,.45)}

/* Botones */
.btn{transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn-teal{background:linear-gradient(135deg,var(--teal-l),var(--teal-d));box-shadow:0 6px 16px rgba(42,154,144,.3)}
.btn-purple{background:linear-gradient(135deg,var(--purple-l),var(--purple));box-shadow:0 6px 16px rgba(59,29,122,.3)}
.btn-outline:hover{background:#f1fbfa}

/* Portada */
.hero{position:relative;isolation:isolate;padding-top:3.5rem;padding-bottom:4rem}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(520px 320px at 88% 18%,rgba(63,184,173,.28),transparent 70%),radial-gradient(460px 300px at 4% 90%,rgba(90,53,176,.16),transparent 70%)}
.hero::after{content:"";position:absolute;z-index:-1;width:150px;height:150px;left:42%;top:8%;border-radius:50%;border:2px dashed rgba(63,184,173,.45)}
.hero h1{background:linear-gradient(95deg,var(--purple-d),var(--purple-l));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(2rem,4.4vw,3.2rem)}
.badges li{background:#fff;border-radius:999px;padding:.25rem .8rem;box-shadow:0 2px 8px rgba(59,29,122,.1);font-size:.82rem}
.badges li::before{content:"✓ ";color:var(--teal-d);font-weight:700}
.hero-img{position:relative}
.hero-img::before{content:"";position:absolute;inset:20px -20px -20px 20px;border-radius:22px;background:linear-gradient(135deg,var(--teal),var(--purple-l));opacity:.9}
.hero-img::after{content:"";position:absolute;width:90px;height:90px;right:-34px;top:-30px;border-radius:50%;background:radial-gradient(circle,var(--teal-l) 2px,transparent 3px) 0 0/14px 14px;opacity:.7}
.hero-img img,.hero-ph{position:relative;z-index:1;border-radius:22px;box-shadow:0 24px 50px rgba(59,29,122,.3)}
.chip{position:absolute;z-index:2;left:-16px;bottom:34px;display:flex;align-items:center;gap:.5rem;background:#fff;border-radius:999px;padding:.55rem 1rem;font-weight:600;font-size:.85rem;box-shadow:var(--shadow);color:var(--purple)}
.chip i{width:10px;height:10px;border-radius:50%;background:#25d366;box-shadow:0 0 0 4px rgba(37,211,102,.25);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(37,211,102,0)}}

/* Tarjetas */
.features{margin-top:-1.2rem;position:relative;z-index:2}
.card{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;box-shadow:var(--shadow)}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--purple-l),var(--teal))}
.card:hover{transform:translateY(-8px);box-shadow:0 18px 38px rgba(59,29,122,.24)}
.ico{background:linear-gradient(135deg,var(--purple-l),var(--purple));box-shadow:0 0 0 7px rgba(90,53,176,.12)}
.card:nth-child(even) .ico{background:linear-gradient(135deg,var(--teal-l),var(--teal-d));box-shadow:0 0 0 7px rgba(63,184,173,.18)}
.ico.sm{width:52px;height:52px;flex:none}

/* Títulos de sección */
.block>h2::after,.page-head h1::after{content:"";display:block;width:76px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--teal),var(--purple-l));margin:.7rem auto 0}
.block>h2{font-size:clamp(1.6rem,3vw,2.1rem)}
.about{position:relative}
.prose{background:#fff;border-radius:22px;padding:2rem clamp(1.2rem,4vw,3rem);box-shadow:var(--shadow);position:relative}
.prose::before{content:"“";position:absolute;left:1.2rem;top:-.4rem;font:700 5rem/1 Georgia,serif;color:var(--teal);opacity:.35}

/* Servicios */
.svc{position:relative;transition:transform .25s,box-shadow .25s;padding-top:2rem}
.svc:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(59,29,122,.22)}
.svc .ico{margin-bottom:.2rem}
.svc:nth-child(even) .ico{background:linear-gradient(135deg,var(--teal-l),var(--teal-d))}
.svc:nth-child(odd) .ico{background:linear-gradient(135deg,var(--purple-l),var(--purple))}

/* Cobertura */
.coverage{background:linear-gradient(100deg,var(--teal-d),var(--teal) 50%,var(--teal-d));position:relative;overflow:hidden;padding:1.1rem 1rem}
.coverage::before,.coverage::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.1)}
.coverage::before{left:-60px;top:-120px}.coverage::after{right:-50px;bottom:-130px}
.coverage h2{position:relative;display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap}
.cov-text{background:#fff;border-radius:18px;box-shadow:var(--shadow);margin-top:1.8rem;padding:1.6rem 1.4rem}

/* Formulario */
#quote-form{position:relative;overflow:hidden;border-radius:22px;box-shadow:0 18px 44px rgba(59,29,122,.2);padding:2rem}
#quote-form::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--purple-l),var(--teal))}

/* Contacto */
.ccard{align-items:flex-start;gap:.35rem;padding:1.4rem;transition:transform .25s,box-shadow .25s}
a.ccard:hover,.ccard:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(59,29,122,.2);outline:0}
.ccard .ico{width:46px;height:46px;margin-bottom:.4rem}
.ccard:nth-child(even) .ico{background:linear-gradient(135deg,var(--teal-l),var(--teal-d))}

/* Banda de título (páginas interiores) */
.page-head{position:relative;overflow:hidden;text-align:center;color:#fff;padding:3.4rem 1rem 4rem;background:linear-gradient(120deg,var(--purple-d),var(--purple-l) 55%,var(--teal))}
.page-head::before,.page-head::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}
.page-head::before{width:300px;height:300px;left:-80px;top:-150px}.page-head::after{width:240px;height:240px;right:-60px;bottom:-140px}
.page-head h1{position:relative;font-size:clamp(2rem,5vw,3rem)}
.page-head h1::after{background:#fff;opacity:.85}
.page-head p{position:relative;margin:.9rem 0 0;opacity:.92;font-size:1.05rem}
.inner main>section:nth-child(2).block>h2:first-child{display:none}
.inner main>.page-head+section.block{padding-top:3rem}
.cta-band{background:linear-gradient(135deg,#fff,#eef9f8);border-top:1px solid rgba(63,184,173,.25)}

/* Pie con onda */
.footer{position:relative;margin-top:70px;background:linear-gradient(160deg,var(--purple),var(--purple-d));padding-top:3rem}
.footer::before{content:"";position:absolute;left:0;right:0;top:-59px;height:60px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'><path fill='%233b1d7a' d='M0 34C240 74 480 0 720 30s480 34 720-12V60H0z'/></svg>") bottom/100% 100% no-repeat}
.footer h4{display:inline-block;border-bottom:3px solid var(--teal);padding-bottom:.25rem;margin-bottom:.8rem}

/* Botones flotantes */
.wa{background:linear-gradient(135deg,#34e07a,#1fb85a)}
.to-top{background:linear-gradient(135deg,var(--purple-l),var(--purple))}

/* Aparición al hacer scroll */
.rv{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
.card.rv.in:hover,.svc.rv.in:hover,.ccard.rv.in:hover{transform:translateY(-8px)}

@media(max-width:820px){
  .hero-img::before{inset:14px -8px -14px 8px}
  .hero-img::after{display:none}
  .chip{left:8px;bottom:22px}
  .hero::after{display:none}
  .features{margin-top:0}
}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.chip i{animation:none}}

/* Inicio limpio: banda de cobertura como enlace y CTA centrado */
a.coverage{display:block;color:#fff;text-decoration:none;transition:filter .2s}
a.coverage:hover{filter:brightness(1.07)}
.cta-band .actions{justify-content:center;margin:0}
.home .cta-band{margin-top:0}

/* Barra legal del pie */
.legal{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:.6rem 1.5rem;flex-wrap:wrap;margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.18)}
.legal .copy{margin:0!important;grid-column:auto;font-size:.8rem!important;opacity:.8}
.legal .credit{margin:0!important;grid-column:auto;font-size:.8rem!important;letter-spacing:.04em;opacity:1;color:rgba(255,255,255,.75)}
.legal .credit a{color:#fff;font-weight:700;text-decoration:none;border-bottom:2px solid var(--teal-l);padding-bottom:1px;transition:color .2s,border-color .2s}
.legal .credit a:hover{color:var(--teal-l)}
@media(max-width:820px){.legal{justify-content:center;text-align:center;flex-direction:column}}
.footer{padding-bottom:5.5rem}
.contact-grid{max-width:1180px}
.ccard span{font-size:.88rem}

.ccard{padding:1.2rem 1rem}
.ccard span{font-size:.84rem;overflow-wrap:break-word}
@media(min-width:1100px){.contact .ccard:nth-child(2) span{white-space:nowrap}}

/* Bienvenida con logo grande */
.about-grid{display:grid;grid-template-columns:minmax(230px,380px) 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center;max-width:1100px;margin:0 auto}
.about-logo{background:#fff;border-radius:28px;padding:clamp(1rem,2.5vw,2rem);box-shadow:0 18px 44px rgba(59,29,122,.2);position:relative}
.about-logo::before{content:"";position:absolute;inset:14px -14px -14px 14px;border-radius:28px;background:linear-gradient(135deg,var(--teal),var(--purple-l));z-index:-1;opacity:.85}
.about-logo img{display:block;width:100%;height:auto;aspect-ratio:1731/2000}
.about-body h2{text-align:left;color:var(--purple);font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:1.1rem}
.about-body h2::after{content:"";display:block;width:76px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--teal),var(--purple-l));margin:.7rem 0 0}
.about-body .prose{text-align:left;max-width:none}
.about-body .prose::before{display:none}
@media(max-width:820px){
  .about-grid{grid-template-columns:1fr;justify-items:center}
  .about-logo{width:min(78vw,320px)}
  .about-logo::before{inset:10px -10px -10px 10px}
  .about-body{width:100%}
  .about-body h2{text-align:center}
  .about-body h2::after{margin:.7rem auto 0}
  .about-body .prose{text-align:center}
}
.block.about{padding-bottom:3.5rem}

/* Textos justificados (párrafos largos) */
.prose p,.about-body .prose,.svc p:not(.sub):not(.note){text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}
@media(max-width:820px){.about-body .prose{text-align:justify}}

/* Página 404 */
.nf{text-align:center;padding-top:3.5rem;padding-bottom:4rem;position:relative}
.nf-code{margin:0;font-weight:700;line-height:1;font-size:clamp(5.5rem,22vw,11rem);letter-spacing:-.04em;background:linear-gradient(120deg,var(--purple-l),var(--teal));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 12px 22px rgba(59,29,122,.18))}
.nf h1{color:var(--purple);font-size:clamp(1.6rem,4vw,2.4rem);margin:.2rem 0 .8rem}
.nf .lead{max-width:560px;margin:0 auto 1.6rem}
.nf .actions{justify-content:center;margin:0 0 2.6rem}
.nf-links{max-width:1000px}
.nf-links .ccard{text-align:left}

/* 404: invitación a los servicios */
.nf .actions{margin:0 0 1.6rem}
.nf-services{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;max-width:900px;margin:0 auto 2rem}
.nf-svc{display:flex;align-items:center;gap:1rem;text-align:left;text-decoration:none;background:#fff;border-radius:16px;padding:1.1rem 1.2rem;box-shadow:var(--shadow);border-left:5px solid var(--teal);transition:transform .25s,box-shadow .25s}
.nf-svc:nth-child(even){border-left-color:var(--purple-l)}
.nf-svc:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(59,29,122,.22)}
.nf-svc-t{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}
.nf-svc-t b{color:var(--purple);font-size:1.02rem}
.nf-svc-t small{color:var(--muted);font-size:.8rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nf-go{color:var(--teal-d);font-size:1.4rem;font-weight:700;transition:transform .2s}
.nf-svc:hover .nf-go{transform:translateX(5px)}
.nf-more{margin:0;color:var(--muted);font-size:.92rem}
.nf-more a{color:var(--purple);font-weight:600}

/* Turnstile */
.cf-turnstile{display:flex;justify-content:center;min-height:65px}
