@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--red:#bd2035;--red-dark:#a5192d;--ink:#202027;--ink2:#33343b;--muted:#696971;--line:#e5e4e7;--soft:#f7f7f8;--white:#fff;--shadow:0 18px 48px rgba(21,22,29,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}button,input,textarea,select{font:inherit}a{text-decoration:none;color:inherit}button{cursor:pointer}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:3px}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.icon{width:28px;height:28px;flex:none}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.13;letter-spacing:-.045em}h1{font-size:clamp(2.75rem,5.4vw,5.25rem);margin:16px 0 22px}h2{font-size:clamp(2.1rem,3.7vw,3.35rem);margin:13px 0 18px}h3{font-size:1.2rem;margin:0 0 10px}p{margin-top:0}p.lead{font-size:1.08rem;line-height:1.85;color:var(--muted)}.muted{color:var(--muted)}.eyebrow{font-size:.72rem;letter-spacing:.18em;font-weight:800;color:var(--red);text-transform:uppercase}.eyebrow:before{content:'';display:inline-block;background:var(--red);width:17px;height:2px;vertical-align:middle;margin-right:9px}.section{padding:95px 0}.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:34px}.section-head h2{margin-bottom:0}.section-head .summary{max-width:360px;margin:0;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:13px 20px;min-height:51px;border:1px solid transparent;border-radius:10px;font-weight:800;font-size:.88rem;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark)}.btn-dark{background:var(--ink);color:#fff}.btn-outline{border-color:#d7d6da;background:transparent;color:var(--ink)}.btn-white{background:#fff;color:var(--ink)}
.topbar{background:var(--ink);color:#d9d9df;font-size:.75rem}.topbar-inner{min-height:35px;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar-inner .mini{display:flex;gap:16px;flex-wrap:wrap;justify-content:flex-end}.topbar a:hover{color:#fff}.site-header{position:sticky;top:0;z-index:40;background:#ffffffed;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.head-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:87px}.brand{display:flex;align-items:center}.brand img{width:149px;max-height:79px;object-fit:contain}.nav{display:flex;align-items:center;gap:25px}.nav>a,.nav-details>summary{font-weight:800;font-size:.89rem;color:#3c3b42;list-style:none;display:flex;align-items:center;gap:4px;cursor:pointer}.nav>a:hover,.nav-details>summary:hover,.nav a[aria-current="page"]{color:var(--red)}.nav-details{position:relative}.nav-details>summary::-webkit-details-marker{display:none}.nav-details summary .icon{width:16px;height:16px}.dropdown{position:absolute;right:-110px;top:calc(100% + 25px);min-width:290px;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;display:grid;gap:2px}.dropdown a{padding:10px 12px;font-weight:700;font-size:.84rem;border-radius:8px}.dropdown a:hover{background:#fbf1f3;color:var(--red)}.nav-cta{background:var(--ink);color:#fff!important;padding:11px 18px;border-radius:9px}.mobile-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;width:45px;height:45px;font-size:23px}
.hero{padding:33px 0 50px}.hero-frame{background:#212128;color:#fff;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1.02fr .98fr;min-height:535px}.hero-copy{padding:77px 64px 65px}.hero .eyebrow{color:#fc909c}.hero h1{max-width:625px}.hero h1 em{font-style:normal;color:#f17484}.hero p{max-width:490px;color:#dcdae1;font-size:1.07rem;line-height:1.8;margin-bottom:30px}.hero-image{position:relative;overflow:hidden}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:58% center;filter:saturate(.83) contrast(1.05)}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(33,33,40,.16),transparent 50%)}.hero-image-caption{position:absolute;bottom:23px;right:24px;background:#14151ac9;color:#fff;padding:7px 12px;border-radius:6px;font-size:.69rem;letter-spacing:.08em;font-weight:800;z-index:1}.metrics{border-bottom:1px solid var(--line);padding:19px 0 22px}.metrics-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.metric{display:flex;align-items:center;gap:13px;font-size:.85rem;font-weight:800}.metric .icon{color:var(--red)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.service-card{border:1px solid var(--line);background:#fff;padding:28px 28px 25px;border-radius:15px;min-height:260px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#e6c4ca}.icon-tile{width:58px;height:58px;border-radius:13px;background:#fff0f2;border:1px solid #f5dfe3;color:var(--red);display:grid;place-items:center;margin-bottom:21px}.service-card h3{font-size:1.16rem}.service-card p{font-size:.89rem;color:var(--muted);line-height:1.7;margin-bottom:22px}.service-card .more{font-size:.82rem;font-weight:800;color:#ab2436;margin-top:auto}.service-card .more span{margin-left:7px}.image-feature{display:grid;grid-template-columns:1fr 1.03fr;gap:58px;align-items:center}.image-feature img{border-radius:16px;height:390px;width:100%;object-fit:cover}.feature-copy{max-width:500px}.feature-list{margin:20px 0 28px;padding:0;list-style:none}.feature-list li{padding:7px 0;font-weight:700;font-size:.89rem}.feature-list li:before{content:'✓';color:var(--red);margin-right:12px}
.project-teaser{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.teaser{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.teaser img{height:215px;width:100%;object-fit:cover}.teaser>div{padding:19px 21px}.teaser span{font-size:.71rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--red)}.teaser h3{font-size:1.1rem;margin:7px 0 0}.cta{background:#222229;color:#fff;padding:62px 0}.cta-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:8px 0 9px}.cta p{color:#d3d2d8;margin:0;max-width:620px}.cta .eyebrow{color:#ec8290}
.page-hero{background:#24242c;color:#fff;padding:70px 0 72px}.page-hero .eyebrow{color:#e87989}.page-hero h1{font-size:clamp(2.45rem,4.7vw,4.25rem);margin:14px 0 13px}.page-hero p{max-width:650px;color:#dddae0;font-size:1.05rem;line-height:1.85}.breadcrumbs{color:#b9b6be;font-size:.79rem;font-weight:700;margin-bottom:22px}.breadcrumbs a:hover{color:#fff}.inner-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:56px;align-items:start}.inner-grid h2{margin-top:14px}.inner-grid>figure{margin:0}.inner-grid>figure img{width:100%;height:415px;object-fit:cover;border-radius:16px}.inner-grid figcaption{font-size:.75rem;color:var(--muted);padding-top:9px}.capabilities{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.capability{border:1px solid var(--line);border-radius:14px;padding:24px;background:#fff}.capability small{font-size:.72rem;color:var(--red);font-weight:800;letter-spacing:.12em}.capability h3{margin:11px 0 8px}.capability p{font-size:.87rem;color:var(--muted);margin-bottom:0}.deliverables{padding:25px 31px;border-left:3px solid var(--red);background:#fff;border-radius:0 11px 11px 0;margin-top:28px}.deliverables strong{font-family:Manrope;display:block;margin-bottom:5px}.deliverables p{margin:0;color:var(--muted)}.mini-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mini-projects figure{border:1px solid var(--line);margin:0;border-radius:13px;overflow:hidden;background:#fff}.mini-projects img{height:210px;width:100%;object-fit:cover}.mini-projects figcaption{font-size:.86rem;font-weight:800;padding:13px 17px}
.portfolio-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.chip{border:1px solid #dfdfe2;background:#fff;padding:10px 15px;border-radius:28px;font-weight:800;font-size:.81rem}.chip.active,.chip:hover{background:var(--ink);border-color:var(--ink);color:#fff}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.project-card{border:1px solid var(--line);border-radius:13px;text-align:left;padding:0;background:#fff;overflow:hidden;transition:transform .2s}.project-card:hover{transform:translateY(-3px)}.project-card img{height:175px;width:100%;object-fit:cover}.project-card .copy{padding:13px 15px 16px;display:block}.project-card small{font-size:.7rem;text-transform:uppercase;font-weight:800;color:var(--red);display:block;margin-bottom:5px}.project-card strong{font-size:.9rem;line-height:1.35;display:block}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.comparison figure{margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.comparison img{height:290px;width:100%;object-fit:contain;background:#f3f4f5}.comparison figcaption{padding:16px 20px;font-weight:800}
.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.about-point{padding:24px;border:1px solid var(--line);background:#fff;border-radius:13px}.about-point .icon{color:var(--red);margin-bottom:15px}.about-point p{font-size:.88rem;color:var(--muted);margin-bottom:0}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.equipment{background:#fff;border:1px solid var(--line);border-radius:13px;padding:24px}.equipment h3{margin-bottom:9px}.equipment p{color:var(--muted);font-size:.88rem;margin:0}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px}.contact-aside h2{margin-bottom:22px}.contact-aside p{color:var(--muted)}.contact-way{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-size:.9rem;font-weight:800}.contact-way .icon{color:var(--red)}.contact-way small{display:block;color:var(--muted);font-size:.77rem;font-weight:500}.contact-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:var(--shadow)}.contact-form h3{font-size:1.35rem}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:15px}.field label{display:block;font-weight:800;font-size:.79rem;margin-bottom:7px}.field input,.field select,.field textarea{display:block;width:100%;padding:12px 14px;border:1px solid #dddde2;border-radius:9px;background:#fbfbfc;color:var(--ink)}.field textarea{resize:vertical;min-height:132px}.form-note{font-size:.77rem;color:var(--muted);margin-top:12px}.footer{background:#17171e;color:#dddde2;padding:48px 0 34px}.footer-grid{display:grid;grid-template-columns:1.4fr .75fr .8fr;gap:30px}.footer img{width:145px;height:auto;object-fit:contain;background:#fff;border-radius:9px;padding:8px}.footer p{color:#aba9b1;font-size:.82rem;max-width:340px;margin:15px 0}.footer h4{margin:5px 0 17px;color:#fff;font-size:.84rem}.footer a{display:block;margin:8px 0;color:#d1cfd8;font-size:.82rem}.footer a:hover{color:#fff}.copyright{border-top:1px solid #36343d;margin-top:32px;padding-top:20px;color:#9997a2;font-size:.74rem}
.chat-launcher{position:fixed;bottom:22px;right:23px;z-index:65;display:flex;gap:10px;align-items:center;background:var(--red);color:#fff;border:0;box-shadow:0 12px 35px #0003;padding:14px 17px;border-radius:40px;font-size:.84rem;font-weight:800}.chat-launcher svg{width:19px;height:19px}.chat-panel{position:fixed;bottom:82px;right:22px;width:min(395px,calc(100vw - 26px));max-height:calc(100dvh - 110px);height:535px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);z-index:70;border-radius:17px;box-shadow:0 20px 80px #0004;overflow:hidden}.chat-head{background:var(--ink);padding:17px 18px;color:#fff;display:flex;justify-content:space-between;align-items:center}.chat-head strong{display:block}.chat-head small{color:#dad8df}.chat-head button{background:none;border:0;color:#fff;font-size:20px}.chat-feed{padding:17px;flex:1;overflow:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#fafafa}.bubble{padding:10px 13px;border-radius:12px;font-size:.81rem;max-width:92%;white-space:pre-line}.bubble.bot{background:#fff;border:1px solid #e8e8ed}.bubble.user{background:#f8e3e7;align-self:flex-end}.chat-chips{display:flex;gap:6px;padding:10px 12px;overflow:auto;border-top:1px solid var(--line)}.chat-chips button{border:1px solid #e5ced2;background:#fff7f8;padding:6px 10px;white-space:nowrap;border-radius:20px;font-size:.72rem}.chat-form{display:flex;gap:5px;padding:10px;border-top:1px solid var(--line)}.chat-form input{min-width:0;flex:1;border:1px solid #dedde3;padding:10px;border-radius:8px;font-size:.83rem}.chat-form button{background:var(--red);color:#fff;border:0;border-radius:8px;padding:0 13px}.chat-actions{display:flex;gap:8px;padding:0 10px 10px}.chat-actions button{flex:1;background:var(--ink);color:#fff;border:0;border-radius:8px;padding:10px 5px;font-size:.76rem;font-weight:800}.toast{position:fixed;bottom:20px;left:20px;background:var(--ink);color:#fff;z-index:200;border-radius:9px;padding:14px 18px;max-width:380px;font-size:.81rem}.lightbox{width:min(920px,calc(100% - 30px));max-height:88vh;border:0;border-radius:14px;padding:10px;box-shadow:0 20px 80px #0006}.lightbox::backdrop{background:#121217d9}.lightbox img{object-fit:contain;max-height:72vh;margin:auto}.lightbox .lb-foot{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px}.lightbox button{background:#282831;color:#fff;border:0;border-radius:8px;padding:7px 12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:1000px){.nav{gap:14px}.nav>a,.nav-details>summary{font-size:.81rem}.hero-copy{padding:60px 40px}.cards{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.topbar-inner{display:none}.topbar{height:5px}.head-inner{min-height:72px}.brand img{width:135px}.mobile-toggle{display:block}.nav{display:none;position:absolute;top:73px;left:0;right:0;background:#fff;align-items:stretch;padding:18px 24px 23px;border-bottom:1px solid var(--line);box-shadow:0 15px 30px #0001}.nav.open{display:flex;flex-direction:column;gap:20px}.nav-details{width:100%}.dropdown{position:static;box-shadow:none;margin-top:10px;min-width:0}.hero{padding-top:18px}.hero-frame{display:flex;flex-direction:column}.hero-copy{padding:55px 35px 40px}.hero-image{height:350px}.hero-image img{object-position:55% 48%}.metrics-row{grid-template-columns:1fr;gap:15px}.section,.page-hero{padding:65px 0}.image-feature,.inner-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.image-feature img,.inner-grid>figure img{height:305px}.section-head{display:block}.section-head .summary{margin-top:15px}.capabilities,.comparison{grid-template-columns:1fr}.project-teaser,.mini-projects,.about-points,.equipment-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.cta-wrap{display:block}.cta .btn{margin-top:24px}}
@media(max-width:520px){.container{width:calc(100% - 30px)}.hero-copy{padding:42px 23px 31px}.hero h1{font-size:2.65rem}.hero p{font-size:.96rem}.hero-image{height:250px}.actions .btn{width:100%}.cards,.project-teaser,.mini-projects,.about-points,.equipment-grid,.fields,.footer-grid{grid-template-columns:1fr}.section{padding:62px 0}.portfolio-grid{gap:9px}.project-card img{height:135px}.project-card strong{font-size:.8rem}.contact-form{padding:21px}.chat-launcher{bottom:12px;right:12px}.chat-panel{right:9px;bottom:71px;width:calc(100vw - 18px)}.cta h2{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Identidad comercial V7: servicios principales + tecnología transversal */
.tech-section{padding-top:8px;background:#f8f7f8}.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tech-grid a{background:#fff;border:1px solid #e6e4e8;border-radius:13px;padding:24px;display:flex;flex-direction:column;gap:10px;min-height:190px;transition:border-color .2s,transform .2s}.tech-grid a:hover{border-color:#c92b40;transform:translateY(-3px)}.tech-symbol{width:47px;height:47px;display:grid;place-items:center;background:#fff1f3;border-radius:13px;font-size:27px;color:#af1c2c}.tech-grid strong{font-size:1.03rem}.tech-grid span:last-child{font-size:.86rem;color:var(--muted);line-height:1.6}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.case-card{border:1px solid #e3e0e4;border-radius:14px;padding:26px;background:#fff}.case-card>span{font-size:.7rem;color:var(--red);letter-spacing:.1em;font-weight:800}.case-card h3{margin:14px 0 10px;font-size:1.25rem}.case-card p{font-size:.86rem;color:var(--muted);line-height:1.7}.case-card small{font-weight:800;color:#42404a}.case-section{background:#f8f7f8}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:248px}.service-card h3{font-size:1.26rem}@media(max-width:760px){.tech-grid,.case-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.cards,.tech-grid,.case-grid{grid-template-columns:1fr}.service-card{min-height:auto}}

/* V8: orientación guiada, sobria y adaptable */
.adviser-feature{background:#fff;border-top:1px solid var(--line)}
.assist-feature-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:65px}
.assist-feature-grid p{max-width:580px}.assist-mini{border:1px solid var(--line);background:var(--soft);padding:32px;border-radius:17px}
.assist-mini h3{margin-bottom:16px}.assist-mini>div{padding:15px 0;border-top:1px solid #dddde1}.assist-mini strong{display:block;font-size:.91rem}.assist-mini span{display:block;font-size:.84rem;color:var(--muted);margin-top:3px}
.advisor-heading{background:linear-gradient(135deg,#f9f9fa 0%,#f7edf0 100%);border-bottom:1px solid #e6e4e7;padding-bottom:63px}
.advisor-heading h1{max-width:770px}.advisor-heading p{max-width:750px}.advisor-highlights{display:flex;gap:10px;flex-wrap:wrap;margin-top:33px}
.advisor-highlights span{font-size:.76rem;color:#5b4b50;font-weight:800;background:#fff;padding:9px 12px;border:1px solid #eddee2;border-radius:50px}
.wizard-section{background:#faf9fa;padding:62px 0 110px}
.wizard-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.wizard-main{min-width:0;background:#fff;border:1px solid #e9e6e9;border-radius:20px;padding:35px;box-shadow:0 18px 55px #1f1f2510}
.wizard-main h2{font-size:clamp(1.7rem,3vw,2.45rem);margin:24px 0 10px}
.wizard-help{color:var(--muted);font-size:.94rem;margin-bottom:28px;line-height:1.75;max-width:660px}
.advisor-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.advisor-progress span{padding:10px 8px;text-align:center;background:#f5f4f5;border:1px solid #e9e8eb;color:#7d7980;font-size:.71rem;font-weight:800;border-radius:9px;line-height:1.35}
.advisor-progress span.now{background:#fff0f2;color:#ad1e30;border-color:#edc8d0}.advisor-progress span.done{background:#28272c;color:#fff;border-color:#28272c}
.advisor-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.advisor-option{display:flex;flex-direction:column;gap:8px;text-align:left;border:1px solid #e1dfe3;border-radius:14px;background:#fff;padding:21px;min-height:155px;transition:.17s}
.advisor-option:hover,.advisor-option.selected{border-color:var(--red);background:#fff9fa;transform:translateY(-2px)}
.advisor-option strong{font-size:1.04rem;font-family:Manrope,sans-serif}.advisor-option small{color:#77717a;font-size:.78rem;line-height:1.6}
.advisor-fields .fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.advisor-fields .field{margin-bottom:3px}.advisor-fields .field input,.advisor-fields .field select{min-height:48px}
.advisor-buttons{display:flex;justify-content:space-between;gap:13px;flex-wrap:wrap;margin-top:25px}
.guide-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.guide-card{padding:23px 21px;border-radius:13px;border:1px solid #e3e1e4;background:#faf9fa}
.guide-card h3{font-size:1.03rem}.guide-card ul,.guide-card ol{margin:15px 0 0;padding-left:20px;font-size:.83rem;line-height:1.7;color:#57575d}
.guide-card ul{list-style:none;padding:0}.guide-card li{margin:10px 0;line-height:1.52}.guide-card ul li{display:flex;gap:10px;align-items:flex-start}.guide-card ul input{accent-color:var(--red);margin-top:4px;flex:none}
.guide-caution{margin-top:18px;border-left:3px solid #a52033;background:#fff5f6;border-radius:0 8px 8px 0;padding:15px 19px;font-size:.87rem;color:#5c3b41}
.guide-sources{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:17px;font-size:.79rem}.guide-sources a{color:#a52033;text-decoration:underline;text-underline-offset:3px}
.advisor-summary{white-space:pre-wrap;overflow-wrap:anywhere;background:#f9f8f9;border:1px solid #e5e2e6;border-radius:12px;font:500 .86rem/1.65 'DM Sans',sans-serif;padding:23px;color:#45434c}
#advisorSubmitForm{border:0;padding:8px 0 0;box-shadow:none}
.advisor-consent{display:flex;align-items:flex-start;gap:10px;font-size:.81rem;color:#5d5960;padding:12px 0 20px}.advisor-consent input{margin-top:5px;accent-color:var(--red)}
.advisor-send{display:flex;flex-wrap:wrap;gap:9px}.advisor-send button{min-height:45px;font-size:.76rem;padding:10px 12px}
.wizard-aside{position:sticky;top:100px}.wizard-aside-card{border:1px solid #e7e3e7;border-radius:15px;padding:26px;background:#fff}.wizard-aside-card h3{margin:14px 0}.wizard-aside-card>p{font-size:.87rem;color:var(--muted);line-height:1.72}.aside-line{padding:14px 0;border-top:1px solid var(--line)}.aside-line strong{display:block;font-size:.82rem}.aside-line span{color:var(--muted);display:block;font-size:.8rem;margin-top:4px}
.guided-cta{padding:21px;background:#fff4f5;border:1px solid #f3d5db;border-radius:13px;margin-bottom:24px}.guided-cta strong{font-size:1rem}.guided-cta p{font-size:.84rem;margin:8px 0 14px}
.smart-panel{height:min(645px,calc(100dvh - 110px));width:min(428px,calc(100vw - 26px))}.smart-panel .chat-feed{padding:16px;gap:9px}.smart-chat-bottom{border-top:1px solid #ebe9eb;background:#fff}
.smart-shortcuts{display:flex;gap:6px;padding:11px 11px 0;flex-wrap:wrap}.smart-shortcuts button{background:#f7e6e9;border:1px solid #f1d4da;border-radius:16px;font-size:.69rem;padding:7px 9px;color:#922333;font-weight:800}
.smart-chat-actions{padding:0 12px 10px;text-align:center}.smart-chat-actions a{font-size:.75rem;color:#9c1c2d;font-weight:800;text-decoration:underline}
.smart-choices{display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%}.smart-choices button{border:1px solid #d9c7cc;background:#fff;border-radius:8px;padding:10px;text-align:left;font-size:.77rem;font-weight:800;color:#3a3036}
.smart-choices button:hover,.smart-answer button:hover{border-color:var(--red)}
.smart-answer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;width:100%}.smart-answer input,.smart-answer select{min-width:0;max-width:100%;padding:10px;border:1px solid #d9d5da;border-radius:8px;font-size:.79rem;background:#fff}.smart-answer button,.smart-result-actions button,.smart-result-actions a{padding:9px 10px;background:#24242a;color:#fff;border:0;border-radius:8px;font-size:.72rem;font-weight:800}.smart-result-actions{display:flex;flex-wrap:wrap;gap:7px}.smart-result-actions a{background:#b61f34}
@media(max-width:1000px){.wizard-wrap{grid-template-columns:minmax(0,1fr) 240px;gap:16px}.wizard-main{padding:25px}.assist-feature-grid{gap:32px}}
@media(max-width:760px){.wizard-wrap,.assist-feature-grid{grid-template-columns:1fr}.wizard-aside{position:static}.advisor-heading{padding-bottom:45px}.wizard-section{padding:35px 0 70px}.wizard-aside-card{padding:22px}.advisor-progress{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.wizard-main{padding:18px}.advisor-options,.advisor-fields .fields,.guide-columns{grid-template-columns:1fr}.advisor-option{min-height:auto;padding:17px}.advisor-heading .container{width:calc(100% - 34px)}.advisor-buttons .btn{flex:1}.advisor-progress span{font-size:.68rem}.advisor-send button{flex-grow:1}.smart-panel{bottom:69px;right:9px;width:calc(100vw - 18px)}.smart-choices{grid-template-columns:1fr 1fr}}
/* La página de orientación usa un encabezado claro, no el encabezado oscuro de las especialidades */
.advisor-heading,.advisor-heading h1,.advisor-heading p,.advisor-heading .breadcrumbs,.advisor-heading .breadcrumbs a{color:#26242b}
.advisor-heading .eyebrow{color:var(--red)}

/* V9 — Fotografía de portada, equipamiento y contactabilidad */
.hero-image img{object-position:41% center;filter:saturate(.9) contrast(1.035)}
.image-feature img{object-position:center 54%}
@media(max-width:760px){.hero-image img{object-position:41% 50%}}
/* Mantener el rótulo de la imagen visible junto al asistente flotante */
.hero-image-caption{right:auto;left:22px;max-width:calc(100% - 48px)}


/* V10 — Imágenes organizadas por especialidad, sin títulos redundantes */
.gallery-nav{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:52px}
.gallery-nav a{border:1px solid #e1dee2;background:#fff;padding:10px 16px;border-radius:25px;font-weight:800;font-size:.81rem;color:#3c3b43;transition:border-color .2s,background .2s}
.gallery-nav a:hover,.gallery-nav a:focus-visible{border-color:var(--red);background:#fff0f2;color:var(--red)}
.gallery-group{scroll-margin-top:122px;margin-bottom:67px}
.gallery-group:last-child{margin-bottom:0}
.gallery-group-head{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-bottom:21px;margin-bottom:19px;border-bottom:1px solid var(--line)}
.gallery-group-head h2{margin:12px 0 0;font-size:clamp(1.8rem,2.7vw,2.5rem)}
.gallery-group-head .summary{max-width:430px;margin-bottom:5px;color:var(--muted)}
.gallery-tiles{gap:13px}
.gallery-tiles .project-card{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:13px;background:#f4f5f7}
.gallery-tiles .project-card img{display:block;width:100%;height:100%;object-fit:contain;background:#f4f5f7;padding:8px;transition:transform .35s ease}
.gallery-tiles .project-card:hover img{transform:scale(1.02)}
.gallery-tiles .gallery-zoom{position:absolute;top:11px;right:11px;width:31px;height:31px;display:grid;place-items:center;color:#fff;background:#1d1c26c9;border-radius:50%;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;font-weight:900}
.gallery-tiles .project-card:hover .gallery-zoom,.gallery-tiles .project-card:focus-visible .gallery-zoom{opacity:1;transform:translateY(0)}
.mini-projects figure{overflow:hidden}
.mini-projects figure img{display:block}
@media(max-width:760px){.gallery-nav{margin-bottom:39px}.gallery-group{margin-bottom:51px}.gallery-group-head{display:block}.gallery-group-head .summary{margin-top:12px}}
@media(max-width:520px){.gallery-nav{gap:7px}.gallery-nav a{font-size:.75rem;padding:9px 12px}.gallery-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-tiles .project-card{aspect-ratio:3/4}.gallery-tiles .gallery-zoom{opacity:.9;transform:none;width:25px;height:25px;top:7px;right:7px}}
@media(prefers-reduced-motion:reduce){.gallery-tiles .project-card img,.gallery-tiles .gallery-zoom{transition:none}}


/* V10.3: evita colisión entre insignias de hosting y asistente flotante. */
.chat-launcher { left: 22px; right: auto; bottom: 22px; }
.chat-panel, .smart-panel { left: 22px; right: auto; bottom: 82px; }
/* Netlify puede poner una insignia fija en la esquina inferior derecha. */
.cta-wrap { padding-bottom: 20px; }
@media (max-width: 760px) {
  .chat-launcher { left: 12px; right: auto; bottom: 86px; }
  .chat-panel, .smart-panel {
    left: 9px; right: auto;
    bottom: 147px;
    width: min(428px, calc(100vw - 18px));
    max-height: calc(100dvh - 165px);
    height: min(535px, calc(100dvh - 165px));
  }
  .smart-panel { height: min(645px, calc(100dvh - 165px)); }
  .cta { padding-bottom: 110px; }
  .cta-wrap { align-items: start; }
  .cta-wrap .btn { margin-right: auto; }
}
@media (max-width: 420px) {
  .chat-launcher { bottom: 88px; }
  .chat-panel, .smart-panel { bottom: 151px; max-height: calc(100dvh - 169px); height: min(645px, calc(100dvh - 169px)); }
}
