/*
Theme Name: WordPress AI Lab
Theme URI: https://www.optimizacionseo.com/
Author: WordPress AI Development Lab
Description: Tema ligero y responsive para agencia de consultoría SEO B2B.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: wordpress-ai-lab
License: GPL-2.0-or-later
*/
:root{--ink:#10212a;--muted:#586972;--paper:#f9fbf9;--white:#fff;--accent:#b8f36d;--teal:#1f554e;--line:#dce5dd;--radius:22px;--wrap:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #287c6b;outline-offset:4px}img{max-width:100%;height:auto}.container{width:min(calc(100% - 40px),var(--wrap));margin-inline:auto}.skip-link{position:absolute;top:-80px;left:12px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:12px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:99}.header-inner{display:flex;align-items:center;gap:24px;min-height:84px}.brand{font-size:1.17rem;font-weight:850;letter-spacing:-.045em;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--ink);color:var(--accent);margin-right:8px;font-size:1.1rem}.brand-dot{color:#408877}.site-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.nav-link{font-size:.91rem;font-weight:650}.nav-link:hover,.footer-links a:hover{color:#33806e}.nav-dropdown{position:relative}.dropdown-panel{display:none;position:absolute;top:100%;left:0;width:325px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #10212a18}.dropdown-panel a{display:block;padding:10px 12px;border-radius:8px;font-size:.88rem}.dropdown-panel a:hover{background:#eef5ee}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel,.nav-dropdown.is-open .dropdown-panel{display:block}.dropdown-toggle{border:0;background:transparent;padding:0 0 0 4px;cursor:pointer}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:13px 22px;border-radius:999px;font-weight:750;font-size:.92rem;transition:transform .2s,background .2s;border:1px solid transparent}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#14221e}.btn-primary:hover{background:#cef99a}.btn-outline{border-color:#9cad9d;background:transparent}.nav-cta{margin-left:2px}.mobile-toggle{display:none;border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:10px;cursor:pointer}.hero{background:#112922;color:#fff;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;right:-210px;top:-270px;width:780px;height:780px;border:1px solid #51736280;border-radius:50%;box-shadow:0 0 0 120px #274b391e,0 0 0 240px #274b3916;pointer-events:none}.hero-inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;min-height:590px;padding:90px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.14em;font-size:.73rem;font-weight:800}.eyebrow:before{content:"";display:block;width:24px;height:2px;background:currentColor}.hero .eyebrow{color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(3rem,5.3vw,5.6rem);font-weight:800;margin:22px 0}h2{font-size:clamp(2.1rem,4vw,3.6rem);margin:14px 0 18px}h3{font-size:1.3rem;margin-bottom:12px}.hero h1 em{font-style:normal;color:var(--accent)}.hero-lead{font-size:1.12rem;color:#c0d2c7;max-width:590px;margin-bottom:30px}.actions{display:flex;flex-wrap:wrap;gap:12px}.hero .btn-outline{color:#fff;border-color:#6f8b7b}.hero-visual{border:1px solid #62857370;background:#234638a6;border-radius:28px;padding:25px;box-shadow:0 25px 60px #061f1880;transform:rotate(2deg)}.visual-top{display:flex;justify-content:space-between;align-items:center;color:#d3e7d8;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #537364;padding-bottom:20px}.signal{display:flex;align-items:center;gap:8px;color:var(--accent)}.signal:before{content:"";width:8px;height:8px;background:var(--accent);border-radius:50%}.visual-title{font-size:2rem;line-height:1.22;font-weight:750;letter-spacing:-.04em;margin:30px 0 16px}.bar-set{display:grid;gap:12px}.bar-set span{height:13px;border-radius:20px;background:linear-gradient(90deg,#b8f36d 0 38%,#547666 38%)}.bar-set span:nth-child(2){background:linear-gradient(90deg,#b8f36d 0 65%,#547666 65%);width:87%}.bar-set span:nth-child(3){background:linear-gradient(90deg,#b8f36d 0 82%,#547666 82%);width:97%}.visual-note{color:#c2d4c9;font-size:.85rem;margin:25px 0 0}.section{padding:100px 0}.section-alt{background:#edf3ec}.section-header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.section-header p{max-width:480px;color:var(--muted)}.section-header h2{max-width:680px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;min-height:300px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 35px #10212a0c}.service-card .number{font-size:.8rem;font-weight:850;color:#367361;margin-bottom:38px}.service-card p{color:var(--muted);font-size:.95rem}.service-card .text-link{margin-top:auto;font-weight:750;color:#275c4c}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.statement{padding:46px;border-radius:26px;background:#17362f;color:#fff}.statement p{font-size:clamp(1.7rem,2.7vw,2.8rem);font-weight:750;line-height:1.24;letter-spacing:-.05em;margin:0}.statement strong{color:var(--accent)}.muted{color:var(--muted)}.tag-list{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.tag{border:1px solid #cbdace;border-radius:30px;padding:7px 13px;font-size:.82rem}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-grid article{border-top:1px solid #aabdaf;padding-top:22px}.process-grid b{color:#377764}.cta-section{background:var(--accent);padding:76px 0}.cta-section .container{display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-section h2{max-width:700px}.cta-section .btn{background:var(--ink);color:#fff}.site-footer{background:#112922;color:#ebf4ec;padding:65px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer-grid p,.site-footer small{color:#b7cabe}.footer-links{display:grid;gap:11px;font-size:.9rem}.footer-title{font-weight:800;margin:0 0 15px}.footer-bottom{border-top:1px solid #345346;margin-top:48px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.page-main{min-height:50vh;padding:95px 0}.page-main .entry-content{max-width:760px}.page-main h1{font-size:clamp(2.4rem,4.5vw,4rem)}.article-list{display:grid;gap:22px}.article-card{padding:28px;border:1px solid var(--line);background:#fff;border-radius:18px}.article-card h2{font-size:1.55rem}.article-card a{color:#245c4d}@media(max-width:960px){.mobile-toggle{display:block;margin-left:auto}.nav-cta{display:none}.site-nav{display:none;position:absolute;top:83px;left:0;right:0;background:#fff;padding:22px 20px 30px;border-bottom:1px solid var(--line);box-shadow:0 18px 35px #10212a14}.site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:17px}.nav-dropdown{width:100%}.dropdown-panel{position:static;display:block;border:0;box-shadow:none;padding:3px 0 0 14px;width:auto}.dropdown-panel a{font-size:.85rem}.dropdown-toggle{display:none}.hero-inner{grid-template-columns:1fr;gap:34px;padding:75px 0}.hero-visual{max-width:520px;transform:none}.service-grid{grid-template-columns:repeat(2,1fr)}.split{gap:35px}}@media(max-width:640px){.container{width:min(calc(100% - 32px),var(--wrap))}.header-inner{min-height:72px}.site-nav{top:71px}.hero-inner{min-height:0;padding:64px 0}.hero h1{font-size:clamp(2.75rem,11vw,4rem)}.hero-lead{font-size:1rem}.section{padding:67px 0}.section-header{display:block}.service-grid,.split,.process-grid,.footer-grid{grid-template-columns:1fr}.service-card{min-height:240px}.service-card .number{margin-bottom:22px}.statement{padding:29px}.cta-section .container{display:block}.footer-grid{gap:35px}.page-main{padding:60px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Individual SEO service landings: preserve the visual system across templates. */
.service-hero-inner{min-height:520px}
.service-aside{transform:none;max-width:100%}
.service-aside .eyebrow{color:var(--accent)}
.service-aside .visual-title{overflow-wrap:anywhere}
.service-aside .visual-note{color:#d3e7d8;line-height:1.65;margin-bottom:0}
@media(max-width:960px){.service-hero-inner{min-height:0}}

/* Team, project portfolio and editorial design. */
.text-accent{color:#43886d}
.about-highlight{transform:none}.about-highlight .eyebrow{color:var(--accent)}.about-highlight p:last-child{color:#d0e1d5}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.team-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:36px;min-width:0}
.team-card h3{margin:14px 0}.team-card p:last-child{margin-bottom:0}
.team-initials{display:grid;place-items:center;width:68px;height:68px;background:#163e32;color:var(--accent);border-radius:19px;font-size:1.3rem;font-weight:800;letter-spacing:-.04em}
.section-action{margin:30px 0 0}
.cases-hero{padding:96px 0}.cases-hero h1{max-width:940px}.cases-hero .hero-lead{max-width:740px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.case-card{background:#fff;border:1px solid var(--line);border-radius:25px;padding:40px;min-width:0}
.case-card h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:28px 0}
.case-card p:last-child{margin-bottom:0}
.case-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#377764}
.blog-intro{padding:105px 0 92px}.blog-intro h1{max-width:930px}.blog-intro .hero-lead{color:var(--muted);max-width:720px}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.blog-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:22px;min-width:0}
.blog-card-image{display:block;aspect-ratio:16/10;overflow:hidden}
.blog-card-image img{width:100%;height:100%;object-fit:cover}
.blog-card-content{padding:27px}
.blog-card h3{font-size:1.4rem;line-height:1.25}.blog-card h3 a:hover{color:#36755f}
.blog-card-content>p:not(.blog-meta){color:var(--muted)}
.blog-meta,.article-byline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#52665d;font-size:.83rem}
.blog-empty{border:1px solid var(--line);border-radius:23px;background:#fff;padding:45px;max-width:760px}
.article-header{padding:75px 0 80px}.article-shell{max-width:790px}.article-header .eyebrow{margin-top:35px}.article-header h1{font-size:clamp(2.5rem,5vw,4.7rem)}
.article-description{font-size:1.22rem;color:var(--muted);line-height:1.7}.article-featured{padding-top:45px}.article-featured img{display:block;width:100%;height:auto;border-radius:20px}
.article-body{padding-top:60px;padding-bottom:110px}.article-body .entry-content{font-size:1.075rem;line-height:1.85;overflow-wrap:anywhere}
.article-body .entry-content h2{font-size:clamp(1.75rem,3vw,2.5rem);margin-top:2em}
.article-body .entry-content h3{margin-top:1.6em}
.article-body .entry-content a{text-decoration:underline;text-underline-offset:3px;color:#216b53}
.article-body .entry-content img{height:auto;border-radius:12px}
.article-body .entry-content pre,.article-body .entry-content table{max-width:100%;overflow-x:auto}
.article-body .entry-content blockquote{border-left:4px solid var(--accent);padding-left:22px;margin-left:0;color:#34584a}
.article-footer{border-top:1px solid var(--line);padding-top:25px;margin-top:45px}
@media(max-width:960px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.team-grid,.case-grid,.blog-grid{grid-template-columns:1fr}.team-card,.case-card{padding:25px}.cases-hero,.blog-intro{padding:65px 0}.article-header{padding:60px 0}.article-body{padding-top:35px;padding-bottom:70px}}

/* B2B contact conversion page. */
.contact-hero{background:#112922;color:#fff;padding:94px 0 100px}
.contact-hero .eyebrow{color:var(--accent)}
.contact-hero h1{max-width:1000px}
.contact-hero p{color:#c0d2c7;font-size:1.17rem;max-width:730px}
.contact-hero .text-accent{color:var(--accent)}
.contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:80px}
.contact-intro h2{font-size:clamp(2rem,3.4vw,3.25rem)}
.contact-points{margin-top:42px;display:grid;gap:23px}
.contact-points>div{border-top:1px solid var(--line);padding-top:17px}
.contact-points strong{display:block;color:#225b49}
.contact-points p{margin:6px 0 0;color:var(--muted)}
.contact-card{padding:38px;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:0 18px 48px #1129220b}
.contact-notice{border:1px solid #b5ccbc;background:#f0f7ef;border-radius:16px;padding:25px}
.contact-notice strong{font-size:1.1rem}
.contact-notice p{color:var(--muted);margin:10px 0 0}
.contact-form{display:grid;gap:19px}
.contact-field{display:grid;gap:7px}
.contact-field label,.contact-consent label{font-weight:650;font-size:.93rem}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid #b4c5b9;border-radius:12px;padding:13px 15px;background:#fff;color:var(--ink);min-height:48px}
.contact-field textarea{resize:vertical}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:3px solid #b8f36d;outline-offset:1px}
.contact-consent{display:flex;align-items:flex-start;gap:10px;font-size:.9rem}
.contact-consent input{margin-top:6px;accent-color:#216b53}
.contact-consent a{text-decoration:underline;text-underline-offset:3px}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-submit{width:100%;cursor:pointer}
.contact-note{font-size:.8rem;color:var(--muted);margin:0}
.contact-feedback{padding:14px 18px;border-radius:11px;background:#e1f4dc}
.contact-feedback-error{background:#ffe8e3}
@media(max-width:960px){.contact-grid{grid-template-columns:1fr;gap:36px}}
@media(max-width:640px){.contact-hero{padding:65px 0}.contact-card{padding:24px}}

/* Contact Form 7 integration for the authenticated launch test. */
.contact-card .wpcf7{margin-top:24px}
.contact-card .wpcf7 form>div.contact-form{display:grid;gap:18px}
.contact-card .wpcf7 label{display:block;font-weight:650;font-size:.93rem}
.contact-card .wpcf7 input:not([type="checkbox"]):not([type="submit"]),.contact-card .wpcf7 select,.contact-card .wpcf7 textarea{display:block;width:100%;margin-top:7px;border:1px solid #b4c5b9;border-radius:12px;padding:13px 15px;background:#fff;color:var(--ink);min-height:48px}
.contact-card .wpcf7 textarea{resize:vertical}
.contact-card .wpcf7 .wpcf7-acceptance label{font-size:.9rem;font-weight:500}
.contact-card .wpcf7 .wpcf7-acceptance input{accent-color:#216b53}
.contact-card .wpcf7 input[type="submit"]{cursor:pointer;width:100%}
.contact-card .wpcf7 .wpcf7-not-valid-tip{font-size:.82rem}
.contact-card .wpcf7 .wpcf7-response-output{margin:15px 0 0;padding:14px;border-radius:12px}

/* Legal content: single accessible layout, no personal data in theme files. */
.legal-hero{background:#112922;color:#fff;padding:66px 0 74px}
.legal-hero-inner{max-width:1160px}
.legal-breadcrumb{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#c4d8c9;font-size:.82rem;margin-bottom:45px}
.legal-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.legal-hero .eyebrow{color:var(--accent)}
.legal-hero h1{font-size:clamp(2.65rem,5vw,5rem);max-width:900px;margin:16px 0 18px}
.legal-description{color:#c3d5cb;font-size:clamp(1rem,1.7vw,1.23rem);max-width:690px;line-height:1.7;margin:0}
.legal-layout{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:clamp(28px,5vw,85px);align-items:start;padding-top:72px;padding-bottom:110px}
.legal-sidebar{display:grid;gap:20px;position:sticky;top:112px}
.legal-navigation,.legal-help{border:1px solid var(--line);background:#fff;border-radius:19px;padding:24px}
.legal-sidebar-title{font-weight:800;font-size:.87rem;letter-spacing:.025em;margin-bottom:16px}
.legal-navigation ul{margin:0;padding:0;list-style:none;display:grid;gap:5px}
.legal-navigation li a{display:block;padding:11px 13px;border-radius:9px;color:#36514a;font-size:.9rem}
.legal-navigation li a:hover{background:#edf5ed;color:#1a5843}
.legal-navigation li a[aria-current="page"]{background:#e9f5e2;color:#19533f;font-weight:800;border-left:3px solid #26705a}
.legal-help p:not(.legal-sidebar-title){font-size:.88rem;color:var(--muted)}
.legal-help a{font-size:.88rem;font-weight:750;color:#205f4c;text-decoration:underline;text-underline-offset:3px}
.legal-document{min-width:0;background:#fff;border:1px solid var(--line);border-radius:23px;padding:clamp(26px,4.5vw,64px);box-shadow:0 15px 40px #11292208}
.legal-document-heading{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:30px}
.legal-kicker{display:block;font-size:.71rem;letter-spacing:.13em;text-transform:uppercase;font-weight:850;color:#2e745c;margin-bottom:9px}
.legal-document-heading p{color:var(--muted);font-size:.92rem;margin:0}
.legal-prose{max-width:76ch;overflow-wrap:anywhere;font-size:1.025rem;line-height:1.85}
.legal-prose>*:first-child{margin-top:0}
.legal-prose h2{font-size:clamp(1.5rem,2.7vw,2.1rem);letter-spacing:-.04em;line-height:1.27;margin:2.1em 0 .65em;padding-top:.4em}
.legal-prose h3{font-size:1.18rem;letter-spacing:-.02em;margin:1.8em 0 .6em}
.legal-prose p,.legal-prose ul,.legal-prose ol{margin-bottom:1.25em}
.legal-prose ul,.legal-prose ol{padding-left:1.5em}
.legal-prose li{margin-bottom:.4em}
.legal-prose a{color:#145e47;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.legal-prose a:hover{color:#0c3f30}
.legal-prose strong{font-weight:760}
.legal-prose blockquote{margin:1.6em 0;border-left:4px solid #a3dd73;background:#f4f8f2;padding:20px 25px;border-radius:0 12px 12px 0}
.legal-prose .wp-block-table{overflow-x:auto}
.legal-prose table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;font-size:.92rem}
.legal-prose th,.legal-prose td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}
.legal-prose th{background:#eff5ee}
.legal-prose :focus-visible{outline:3px solid #216b53;outline-offset:4px}
@media(max-width:850px){.legal-layout{grid-template-columns:1fr;gap:28px;padding-top:45px;padding-bottom:75px}.legal-sidebar{position:static;grid-template-columns:1fr 1fr}.legal-hero{padding:50px 0 55px}.legal-breadcrumb{margin-bottom:34px}}
@media(max-width:600px){.legal-sidebar{grid-template-columns:1fr}.legal-navigation,.legal-help{padding:20px}.legal-document{padding:23px}.legal-layout{padding-top:30px;padding-bottom:55px}.legal-prose{font-size:1rem}.legal-hero h1{font-size:clamp(2.3rem,10vw,3.2rem)}}

/* Launch refinement: wide legal reading surface, compact breadcrumbs, legible CF7 feedback. */
.breadcrumb-strip{background:#f0f5ee;border-bottom:1px solid var(--line)}
.site-breadcrumbs ol{margin:0;padding:13px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;list-style:none;font-size:.82rem;color:#3f6355}
.site-breadcrumbs li:not(:last-child)::after{content:"/";margin-left:8px;color:#8aa49a}
.site-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.site-breadcrumbs [aria-current="page"]{color:#1b3f31;font-weight:720}
.legal-layout.legal-layout-simple{display:block;max-width:1000px;padding-top:50px;padding-bottom:90px}
.legal-layout-simple .legal-document{width:100%;padding:clamp(26px,4.5vw,65px)}
.legal-layout-simple .legal-prose{max-width:100%;font-size:1.035rem;line-height:1.84}
.legal-layout-simple .legal-prose p,.legal-layout-simple .legal-prose li{max-width:80ch}
.legal-bottom-links{border-top:1px solid var(--line);padding-top:25px;margin-top:42px}
.legal-bottom-links p{font-weight:800;margin-bottom:10px}
.legal-bottom-links ul{display:flex;flex-wrap:wrap;gap:11px;list-style:none;margin:0;padding:0}
.legal-bottom-links a{display:inline-flex;padding:9px 14px;border:1px solid #c8dbcd;border-radius:30px;color:#1c644f;font-size:.9rem}
.legal-bottom-links a:hover{background:#f0f8ed}
.legal-hero h1{color:#fff;letter-spacing:-.045em;overflow-wrap:break-word}
.legal-hero{padding:76px 0}
.contact-card .wpcf7 .wpcf7-response-output{font-size:.97rem;line-height:1.65;font-weight:650;border-width:1px!important;padding:17px 19px!important;border-radius:12px;color:#143f30;background:#e9f7eb}
.contact-card .wpcf7 form.invalid .wpcf7-response-output,.contact-card .wpcf7 form.failed .wpcf7-response-output,.contact-card .wpcf7 form.spam .wpcf7-response-output{background:#fff2e8;color:#813d16;border-color:#d9ab8c!important}
.contact-card .wpcf7 form.sent .wpcf7-response-output{background:#e2f4e8;color:#16482c;border-color:#83bb99!important}
.contact-card .wpcf7 .wpcf7-not-valid-tip{color:#9a2c24;font-size:.87rem;font-weight:650;margin-top:7px}
.contact-card .wpcf7 .wpcf7-not-valid{border-color:#b2352a!important;box-shadow:0 0 0 1px #b2352a22}
.contact-card .wpcf7 .wpcf7-spinner{vertical-align:middle}
@media(max-width:640px){.legal-layout.legal-layout-simple{padding-top:25px;padding-bottom:60px}.legal-layout-simple .legal-document{padding:24px 19px;border-radius:17px}.legal-hero{padding:52px 0}.site-breadcrumbs ol{font-size:.78rem}.contact-card .wpcf7 .wpcf7-response-output{padding:13px 15px!important}}

/* Legal identification: no bullets, intentional alignment and label emphasis. */
.legal-prose ul.legal-identity-list{list-style:none;padding-left:0;margin:22px 0 30px;display:grid;gap:10px}
.legal-prose .legal-identity-list>li{list-style:none;margin:0;padding:0}
.legal-prose .legal-identity-list>li::marker{content:""}
.legal-prose .legal-identity-list p{margin:7px 0 0;line-height:1.65}
.legal-prose .legal-identity-list strong{font-weight:800;color:#163c31}

/* Compact first-layer information next to the public lead form. */
.contact-card .contact-first-layer{border:1px solid #cfdfd1;background:#f5faf2;border-radius:12px;padding:15px 17px;font-size:.86rem;line-height:1.65;color:#254738}
.contact-card .contact-first-layer strong{color:#143e2f}
.contact-card .contact-first-layer a{color:#14583f;text-decoration:underline;text-underline-offset:3px}

/* Mobile Safari: explicitly set the hamburger button text/icon color. */
.mobile-toggle{color:var(--ink);-webkit-text-fill-color:currentColor;-webkit-appearance:none;appearance:none}

/* Long-form editorial elements: semantic markup, no extra JavaScript. */
.article-body .entry-content .article-lead{font-size:clamp(1.16rem,2vw,1.38rem);line-height:1.7;color:#244839;font-weight:530}
.article-body .entry-content h2[id]{scroll-margin-top:120px}
.article-toc{background:#f0f6ef;border:1px solid #d5e4d5;border-radius:20px;padding:clamp(22px,4vw,34px);margin:36px 0 46px}
.article-body .entry-content .article-toc-title{font-size:1.12rem;font-weight:820;color:#193d30;margin:0 0 14px}
.article-toc ol{margin:0;display:grid;gap:9px;padding-left:1.35em}
.article-body .entry-content .article-toc a{color:#205942;text-decoration:none}
.article-body .entry-content .article-toc a:hover{text-decoration:underline}
.article-body .entry-content ul,.article-body .entry-content ol{padding-left:1.45em;margin-bottom:25px}
.article-body .entry-content li{margin-bottom:10px}
.article-body .entry-content code{background:#edf4ef;border-radius:5px;padding:.08em .28em;font-size:.92em}
.article-checklist{border:1px solid #d5e4d5;border-radius:18px;padding:20px 26px;background:#f9fcf8;margin:28px 0}
.article-checklist ul{list-style:none;padding:0!important;margin:0!important}
.article-checklist li{position:relative;padding-left:31px;margin:0 0 12px}
.article-checklist li:last-child{margin:0}
.article-checklist li::before{content:"✓";position:absolute;left:0;top:0;color:#236b50;font-weight:900}
.article-cta{background:#15372c;color:white;border-radius:22px;padding:clamp(24px,5vw,42px);margin:45px 0}
.article-body .entry-content .article-cta h2{color:white;font-size:clamp(1.5rem,3vw,2.2rem);margin:0 0 14px}
.article-cta p{color:#d1e6d6}
.article-body .entry-content .article-cta .btn{color:#14221e;text-decoration:none;max-width:100%;white-space:normal;text-align:center}
.article-readtime{font-weight:700}
@media(max-width:640px){.article-toc{margin:26px 0 35px;padding:21px}.article-checklist{padding:18px}.article-cta{margin:32px 0}.article-body .entry-content{font-size:1.02rem}.article-header h1{overflow-wrap:anywhere}}

/* Stretch the semantic heading link over the card, without nested anchors or JS. */
.card-clickable{position:relative;isolation:isolate;cursor:pointer}
.card-clickable .card-primary-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.card-clickable:focus-within{outline:3px solid #287c6b;outline-offset:4px}
.card-clickable .card-primary-link:focus-visible{outline:none}
.card-clickable:hover .card-primary-link,.card-clickable:focus-within .card-primary-link{color:#216b53;text-decoration:underline;text-underline-offset:4px}
@media(prefers-reduced-motion:reduce){.card-clickable{transition:none}}

/* Identidad coherente: mismo isotipo SVG del favicon en cabecera y pie. */
.site-header .brand,.site-footer .brand{display:inline-flex;align-items:center;gap:0}
.site-header .brand-mark,.site-footer .brand-mark{display:block;width:32px;height:32px;object-fit:contain;flex:none;margin-right:8px;border-radius:10px}
.site-footer .brand{color:#ebf4ec}
.site-footer .brand-dot{color:#b8f36d}
.site-footer .brand:hover,.site-header .brand:hover{text-decoration:none}

/* Service landing depth: progressive enhancement, semantic sections, native FAQ. */
.service-depth-lead{font-size:clamp(1.1rem,2vw,1.35rem);max-width:860px;color:var(--muted);line-height:1.75;margin-bottom:36px}
.service-depth h3{font-size:1.45rem;margin:0 0 22px}
.service-depth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-depth-item{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.service-depth-item h4{font-size:1.14rem;line-height:1.3;margin:0 0 12px;letter-spacing:-.025em}
.service-depth-item p{color:var(--muted);margin:0}
.service-method-list{counter-reset:service-step;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;list-style:none;padding:0;margin:34px 0 0}
.service-method-list li{position:relative;counter-increment:service-step;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 28px 26px 78px}
.service-method-list li:before{content:counter(service-step,decimal-leading-zero);position:absolute;top:29px;left:26px;color:var(--teal);font-weight:850}
.service-method-list h3{font-size:1.22rem;margin:0 0 10px}
.service-method-list p{color:var(--muted);margin:0}
.service-depth-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:clamp(24px,5vw,80px);align-items:start}
.service-depth-columns>div>p{max-width:740px;color:var(--muted)}
.service-checklist{padding-left:22px;margin:24px 0 0}
.service-checklist li{margin-bottom:16px;padding-left:6px}
.service-depth-aside{padding:28px;border-radius:var(--radius);background:#edf5ed;border:1px solid var(--line)}
.service-depth-aside h3{font-size:1.15rem;margin:0 0 10px}
.service-depth-aside p{color:var(--muted)}
.service-depth-aside p:last-child{margin-bottom:0}
.service-faq-list{max-width:920px;display:grid;gap:12px;margin-top:26px}
.service-faq-list details{background:#fff;border:1px solid var(--line);border-radius:15px;padding:0 22px}
.service-faq-list summary{cursor:pointer;padding:20px 0;font-weight:750;line-height:1.45}
.service-faq-list summary:focus-visible{outline:3px solid #287c6b;outline-offset:3px}
.service-faq-list details[open] summary{margin-bottom:6px}
.service-faq-list details p{padding-bottom:20px;color:var(--muted);margin-bottom:0}
@media(max-width:800px){.service-depth-grid,.service-method-list{grid-template-columns:1fr}.service-depth-columns{grid-template-columns:1fr}}
@media(max-width:480px){.service-depth-item,.service-depth-aside{padding:20px}.service-method-list li{padding:24px 20px 24px 64px}.service-method-list li:before{left:18px;top:25px}.service-faq-list details{padding:0 16px}}

/* Research-informed SEO audit landing: accessible evidence and scope grids. */
.service-audit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}
.service-audit-grid .service-depth-item:last-child:nth-child(odd){grid-column:1/-1}
.service-audit-grid .service-depth-item h3{font-size:1.27rem;margin:0 0 16px}
.service-audit-grid .service-depth-item p{margin-bottom:12px}
.service-audit-example{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.service-audit-example>div{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.service-audit-example h3{font-size:1.24rem}
.service-audit-example p{margin:0;color:var(--muted)}
.service-audit-table-wrap{overflow-x:auto;max-width:100%;margin:28px 0 32px}
.service-audit-table{border-collapse:collapse;width:100%;min-width:620px;text-align:left}
.service-audit-table th,.service-audit-table td{border-bottom:1px solid var(--line);padding:18px 16px;vertical-align:top}
.service-audit-table thead th{background:#edf5ed}
.service-audit-table tbody th{font-weight:750}
@media(max-width:800px){.service-audit-grid,.service-audit-example{grid-template-columns:1fr}.service-audit-grid .service-depth-item:last-child:nth-child(odd){grid-column:auto}}

/* Compact table of contents for the long technical audit landing. */
.audit-jump-nav{background:#eef5ed;border-bottom:1px solid var(--line)}
.audit-jump-nav .container{display:flex;flex-wrap:wrap;gap:10px 23px;align-items:center;padding-block:18px}
.audit-jump-label{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;font-weight:800;color:var(--teal);margin-right:6px}
.audit-jump-nav a{font-size:.9rem;font-weight:650;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px}
.audit-jump-nav a:hover,.audit-jump-nav a:focus-visible{text-decoration-color:currentColor}
@media(max-width:550px){.audit-jump-nav .container{gap:10px 16px}.audit-jump-label{width:100%}}

/* Secondary editorial navigation below related resources: clear, restrained CTA. */
.service-related-more{margin:28px 0 0}
.service-related-more a{display:inline-flex;align-items:center;gap:10px;width:fit-content;padding:9px 0;color:#17664e;font-size:.98rem;font-weight:750;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;transition:color .15s ease}
.service-related-more a::after{content:"↗";display:inline-block;font-size:1.1em;text-decoration:none;transition:transform .15s ease}
.service-related-more a:hover{color:#104d3c;text-decoration-thickness:2px}
.service-related-more a:hover::after{transform:translate(2px,-2px)}
.service-related-more a:focus-visible{outline:3px solid #287c6b;outline-offset:5px;border-radius:2px}
@media(prefers-reduced-motion:reduce){.service-related-more a,.service-related-more a::after{transition:none}}

/* Migration page: a clear timeline instead of repeated generic process grids. */
.migration-timeline{display:grid;gap:22px;margin-top:34px}
.migration-phase{display:grid;grid-template-columns:62px minmax(0,1fr);gap:22px;align-items:start;padding:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.migration-phase-number{display:grid;place-items:center;width:52px;height:52px;background:#edf5ed;color:var(--teal);font-weight:850;border-radius:14px}
.migration-phase h3{margin:0 0 12px;font-size:1.38rem}
.migration-phase p{color:var(--muted);max-width:820px}
.migration-phase .service-checklist{margin-top:16px}
.migration-source-note{margin:30px 0 0;color:var(--muted);font-size:.94rem}
.migration-source-note a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.migration-phase{grid-template-columns:1fr;padding:22px;gap:14px}.migration-phase-number{width:44px;height:44px}}
