
.hero-footnote{font-size:12px!important;margin-top:22px!important;color:#b5c8cf!important}.intro-copy h1{font-size:clamp(43px,4.8vw,69px)}.brand-photo,.brand-photo img{border-radius:20px}.brand-photo{box-shadow:none}.cards{display:block;border-top:1px solid var(--line)}.card{display:grid;grid-template-columns:40px 1fr 1.2fr 150px;gap:25px;min-height:0;background:none;border:0;border-bottom:1px solid var(--line);padding:28px 0;align-items:center}.card h3{margin:0}.card p{max-width:none}.card-link{padding:0;margin:0}.price-grid{display:block;border-top:1px solid #b9c9c1}.price-card,.price-card.featured{display:grid;grid-template-columns:150px 140px 1fr 140px;gap:15px 25px;min-height:0;border:0;border-bottom:1px solid #b9c9c1;background:none;color:var(--ink);padding:30px 0;align-items:center}.price-type{grid-column:1/-1}.price-card h3{margin:0;grid-column:1;grid-row:2}.price-card strong,.price-card .price-from+strong{grid-column:2;grid-row:2;font-size:30px;white-space:nowrap}.price-card .price-from{grid-column:2;grid-row:1;margin:0;font-size:11px}.price-card p,.price-card.featured p{grid-column:3;grid-row:2;color:#52695f;max-width:none;margin:0}.price-card small{grid-column:3;grid-row:3;margin:0}.price-card a{grid-column:4;grid-row:2}.featured .price-type{color:#4a847c}.faq-grid{display:block;border-top:1px solid var(--line)}.faq details{background:none;border:0;border-bottom:1px solid var(--line);padding:22px 0}.demo-context{max-width:800px;font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:30px}.demo-filters{display:flex;flex-wrap:wrap;gap:10px 22px;border-bottom:1px solid var(--line);padding-bottom:16px}.demo-filters button{background:none;border:0;border-bottom:2px solid transparent;padding:10px 0;font:700 13px Arial;color:#52695f;cursor:pointer;min-height:44px}.demo-filters button[aria-pressed=true]{border-color:#286c6b;color:#14253b}.demo-count{font-size:12px;color:var(--muted);margin:18px 0 0}.demo-row{display:grid;grid-template-columns:1fr 1.2fr 130px;gap:35px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}.demo-row[hidden]{display:none}.demo-sector{font-size:11px;color:#55877d}.demo-row h3{font:normal 29px Georgia,serif;margin:9px 0 0;letter-spacing:-.035em}.demo-row p{font-size:14px;line-height:1.7;color:var(--muted)}.demo-row a{font-size:13px;font-weight:bold;text-decoration:underline;text-underline-offset:5px;padding:14px 0}.business-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.business-options button{display:block;position:relative;width:100%;border:0;border-top:1px solid #bccdc3;background:none;text-align:left;padding:25px 28px 25px 0;font:normal 26px Georgia,serif;cursor:pointer;color:var(--ink)}.business-options button:last-child{border-bottom:1px solid #bccdc3}.business-options small{display:block;font:12px Arial;margin-bottom:10px;color:#55877d}.business-options span{position:absolute;right:0;top:38px}.business-options button[aria-pressed=true]{color:#286c6b}.business-detail h3{font:normal 34px/1.2 Georgia,serif;margin:0 0 20px}.business-detail p{line-height:1.7;color:#52695f;font-size:15px}.business-detail label{display:block;font-size:13px;font-weight:bold;margin:18px 0}.business-detail input,.business-detail textarea{display:block;width:100%;padding:12px 0;border:0;border-bottom:1px solid #8fa79b;background:transparent;font:16px Arial;color:var(--ink);border-radius:0;margin-top:6px}.business-detail button{border:0;cursor:pointer;min-height:50px;margin-top:12px}.business-detail .form-note{font-size:12px}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #daaa58;outline-offset:4px}.nav-links{gap:20px}.portrait{border-radius:20px}
@media(max-width:850px){.business-layout{gap:35px}.price-card,.price-card.featured{grid-template-columns:120px 130px 1fr}.price-card a{grid-column:3;grid-row:4}.card{grid-template-columns:30px 1fr 1.2fr}.card-link{grid-column:2}.demo-row{gap:20px}.nav-links{gap:14px}}
@media(max-width:650px){.card{grid-template-columns:28px 1fr;gap:14px}.card p,.card-link{grid-column:2}.price-card,.price-card.featured{grid-template-columns:1fr 1fr;gap:16px}.price-card p,.price-card.featured p{grid-column:1/-1;grid-row:3}.price-card small{grid-column:1/-1;grid-row:4}.price-card a{grid-column:1/-1;grid-row:5}.demo-row{grid-template-columns:1fr;gap:5px}.demo-row p{margin:8px 0}.demo-row a{justify-self:start}.business-layout{grid-template-columns:1fr}.business-detail button{width:100%;white-space:normal;text-align:center}.brand-photo,.brand-photo img{border-radius:18px}.demo-filters{gap:4px 17px}}

.business-examples{margin:1.8rem 0 2rem;padding:1.5rem 0;border-top:1px solid #819e954f;border-bottom:1px solid #819e954f}
#business-demo-links{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;margin:1rem 0}
#business-demo-links a{display:inline-flex;align-items:center;min-height:48px;font-weight:700;color:inherit;text-underline-offset:5px;max-width:100%;overflow-wrap:anywhere}
#business-demo-links a:hover{color:#54877d}
#business-demo-links a:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Galería editorial: imágenes y texto sobre el fondo de la página. */
.demo-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 36px;margin-top:30px}
.demo-list .demo-row{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 0 24px;border:0;min-width:0;background:transparent;box-shadow:none}
.demo-list .demo-row[hidden]{display:none}
.demo-list .demo-preview{display:block;padding:0;margin:0 0 22px;border-radius:20px;overflow:hidden;aspect-ratio:16/9;transition:transform .25s ease}
.demo-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:inherit}
.demo-list .demo-preview:hover{transform:translateY(-4px)}
.demo-preview:focus-visible{outline:3px solid #286c6b;outline-offset:5px}
.demo-list .demo-row p{margin:14px 0 4px;flex:1}
.demo-list .demo-row>a:not(.demo-preview){align-self:flex-start;min-height:48px}
@media(max-width:650px){.demo-list{grid-template-columns:minmax(0,1fr);gap:35px}.demo-list .demo-preview{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.demo-list .demo-preview{transition:none}.demo-list .demo-preview:hover{transform:none}}

.agreement-list{margin:20px 0 28px;border-top:1px solid var(--line)}
.agreement-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:40px;border-bottom:1px solid var(--line);padding:26px 0}
.agreement-list dt{font:normal 25px/1.3 Georgia,serif}.agreement-list dd{margin:0;color:var(--muted);font-size:15px;line-height:1.8}
.mobile-contact{display:none}
@media(max-width:650px){.agreement-list>div{grid-template-columns:minmax(0,1fr);gap:12px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;gap:8px;z-index:90;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#14253bf5;border-top:1px solid #ffffff30}.mobile-contact a{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0;min-height:48px;padding:8px;border-radius:10px;background:#ffffff12;color:white;font:700 13px/1.25 Arial;text-decoration:none}.mobile-contact a:last-child{background:#acdcd0;color:#14253b}.mobile-contact svg{width:22px;height:22px;flex-shrink:0}.wa-float{display:none!important}body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}}

.demo-story{margin:18px 0;flex:1}.demo-story>div{margin-bottom:14px}.demo-story dt{font:700 11px/1.5 Arial;letter-spacing:.07em;text-transform:uppercase;color:#39766d}.demo-story dd{margin:4px 0 0;font-size:14px;line-height:1.65;color:var(--muted)}
.demo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;border-top:1px solid var(--line);padding-top:10px}.demo-actions a{display:inline-flex;align-items:center;min-height:48px;max-width:100%;overflow-wrap:anywhere}.demo-actions .demo-enquiry{font-size:12px;color:#286c6b;font-weight:600}
.demo-closing{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:35px 0;margin-top:20px;border-top:1px solid var(--line)}.demo-closing h3{font:normal 30px/1.2 Georgia,serif;margin:0 0 12px}.demo-closing p{max-width:640px;line-height:1.7;color:var(--muted)}.demo-closing>a{min-height:48px;display:flex;align-items:center;flex-shrink:0}
@media(max-width:650px){.demo-closing{display:block}.demo-actions{display:block}.demo-actions a{display:flex;width:fit-content}}

.demo-more{border:0;cursor:pointer;margin:10px 0 24px}.demo-more[hidden]{display:none}.demo-filters{gap:10px;flex-wrap:wrap}.demo-filters button{border:1px solid #b7cbc3;border-radius:999px;padding:10px 16px}.demo-filters button[aria-pressed=true]{background:#14253b;color:#fff;border-color:#14253b}@media(max-width:650px){.demo-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:14px}.demo-filters button{flex-shrink:0;white-space:nowrap}}

/* Contacto abierto y equilibrado */
#business-form{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;border-top:1px solid #b7c5c5;padding-top:36px;margin-top:0;min-width:0}
#business-form .form-heading,#business-form label:has(textarea),#business-form .contact-actions,#business-form .form-note{grid-column:1/-1}
#business-form .form-heading{font-size:clamp(28px,3vw,40px);margin:0 0 8px}
#business-form label{min-width:0;margin:0}
#business-form input,#business-form textarea{box-sizing:border-box;width:100%}
.contact-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.contact-actions button{min-height:48px;white-space:normal;max-width:100%;cursor:pointer}
.contact-email{background:transparent;border:1px solid #14253b;color:#14253b;border-radius:30px;padding:14px 24px;font:inherit;font-weight:700}
.contact-email:hover{background:#e4efeb}
#business-form .form-note{margin:0;overflow-wrap:anywhere}
#business-form .form-note a{text-decoration:underline}
.price-grid .price-card.featured{background:#edf5ef;color:#14253b;border-top:2px solid #46705a;border-bottom:2px solid #46705a;padding-left:24px;padding-right:24px}
.price-grid .price-card.featured .price-type{color:#315841;font-weight:800}
@media(max-width:650px){#business-form{grid-template-columns:minmax(0,1fr);gap:22px;padding-top:28px}.contact-actions{align-items:stretch;flex-direction:column}.contact-actions button{width:100%}.price-grid .price-card.featured{padding-left:18px;padding-right:18px}}

/* Tipografía editorial y acciones propias */
h1,h2,h3,.section-title,.intro-copy h1,.demo-row h3,.business-detail h3,.business-options button,.agreement-list dt,.demo-closing h3{font-family:'Piazzolla',Georgia,serif;font-optical-sizing:auto;font-weight:400}
h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}
.intro-copy h1{line-height:1.09;letter-spacing:-.028em;font-size:clamp(38px,4.7vw,67px)}
.personal-statement{border-left:3px solid #83b7a7;padding-left:22px}
.nav-button,.pill,.contact-email{border-radius:4px 20px 4px 20px;border:1.5px solid #14253b;position:relative;isolation:isolate;overflow:hidden;min-height:48px;max-width:100%;white-space:normal;transition:color .25s ease,background-color .25s ease;transform:none}
.nav-button::before,.pill::before,.contact-email::before{content:'';position:absolute;inset:0;background:#14253b;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .25s ease;pointer-events:none}
.nav-button:hover,.pill:hover,.contact-email:hover{color:#fff;background:#acdcd0;transform:none}
.nav-button:hover::before,.pill:hover::before,.contact-email:hover::before{transform:scaleX(1)}
.nav-button:focus-visible,.pill:focus-visible,.contact-email:focus-visible,button:focus-visible{outline:3px solid #ce9436;outline-offset:4px}
#business-form label{display:block;font:700 13px/1.5 Arial,Helvetica,sans-serif}
#business-form input,#business-form textarea{display:block;padding:12px 0;border:0;border-bottom:1px solid #8fa79b;background:transparent;font:16px Arial,Helvetica,sans-serif;color:var(--ink);border-radius:0;margin-top:6px;min-height:48px}
.reveal-pending{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.reveal-pending.visible,.reveal-pending:focus-within{opacity:1;transform:none}
@media(max-width:650px){.intro-copy h1{font-size:clamp(35px,9.2vw,48px)}.section-title{font-size:clamp(32px,8vw,43px);line-height:1.15}.business-layout{gap:30px}.business-options button{font-size:24px}}
@media(prefers-reduced-motion:reduce){html,:root{scroll-behavior:auto}.reveal-pending{opacity:1;transform:none;transition:none}.nav-button,.pill,.contact-email,.nav-button::before,.pill::before,.contact-email::before{transition:none}}

.process-compact{border-top:1px solid var(--line);padding-top:24px;margin:26px 0}.process-compact ol{padding-left:22px}.process-compact li{padding:7px 0;line-height:1.65}.about-area{padding:30px 0 0;margin-top:30px;background:transparent}.about-area .area-grid{border-top:1px solid var(--line);padding-top:30px}.faq-more>div{padding-left:16px}.quick-controls{display:flex;gap:16px;margin-top:12px;align-items:stretch}.quick-controls input{flex:1;min-width:0;padding:15px;border:1px solid #819e95;background:transparent;font:16px Arial;border-radius:8px}#quick-analysis label{font-weight:700}#quick-results dl>div{padding:18px 0;border-bottom:1px solid var(--line)}#quick-results dt{font-weight:700}#quick-results dd{margin:8px 0;line-height:1.6}#quick-status{min-height:24px}#quick-results{overflow-wrap:anywhere}@media(max-width:650px){.quick-controls{flex-direction:column}.about-area .area-grid{display:block}}

/* Fotografía proporcionada por Juan: encuadre completo, sin recorte. */
.portrait.portrait-photo{display:block;min-height:0;background:none;color:#14253b;margin:0;align-self:start;width:100%;max-width:430px}
.portrait-photo img{display:block;width:100%;height:auto;border-radius:20px}
.portrait-photo figcaption{padding:16px 0;font:700 15px/1.5 Arial,Helvetica,sans-serif}
.portrait-photo figcaption span{display:block;margin-top:3px;font:400 12px/1.6 Arial,Helvetica,sans-serif;letter-spacing:0;color:#52695f}
@media(max-width:650px){.portrait.portrait-photo{max-width:360px;margin:0 auto 8px}.portrait-photo img{border-radius:18px}}

/* Paleta corporativa: crema continuo, azul marino y acentos menta. */
:root{--ink:#14253b;--paper:#f5f2ea;--white:#f5f2ea;--lime:#addecf;--muted:#536170;--line:#14253b26;--navy:#14253b;--mint:#addecf}
body,.ticker,.work,.process,.prices,.about,.area,.project{background:var(--paper);color:var(--ink)}
.top,.contact,footer{background:var(--navy);color:var(--paper)}
.logo{background:var(--paper)}
.brand-photo{background:var(--navy)}
.project-preview{border-color:var(--paper);box-shadow:none}
.price-grid .price-card.featured{background:var(--mint);border-color:var(--navy)}
.price-grid .price-card.featured .price-type,.price-card.featured p{color:var(--ink)}
.nav-button,.pill{background:var(--mint);color:var(--navy)}
.nav-button:hover,.pill:hover{background:var(--mint);color:var(--paper)}
.contact-email{background:transparent;color:var(--navy)}
.contact-email:hover{background:var(--mint);color:var(--paper)}
.hero-whatsapp,.contact-buttons .whatsapp{color:var(--mint);border-color:var(--mint)}
.hero-whatsapp:hover,.contact-buttons .whatsapp:hover{background:var(--mint);color:var(--navy)}
.mobile-contact{background:var(--navy)}
.mobile-contact a{background:var(--navy);color:var(--paper);border:1px solid var(--mint)}
.mobile-contact a:last-child{background:var(--mint);color:var(--navy)}
.wa-float{background:var(--mint);color:var(--navy)}
.wa-float:hover{background:var(--navy);color:var(--mint)}
.faq details{background:transparent}

/* Jerarquía de acciones y lectura rápida */
.demo-story dt{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:600;letter-spacing:.085em;color:#586573;text-transform:uppercase}
.demo-actions .demo-enquiry{color:#14253b;font-weight:700;text-decoration:underline;text-decoration-style:solid;text-underline-offset:4px}
.demo-actions .demo-enquiry:hover{color:#315e56}
#quick-analysis button[type=submit]{background:#14253b;color:#f5f2ea;font-weight:800;min-height:52px;padding:16px 24px;flex-shrink:0}
#quick-analysis button[type=submit]:disabled{opacity:.7;cursor:wait}
#quick-personal{display:inline-block;background:none;border:0;color:#14253b;font:700 14px/1.5 Arial;padding:16px 0;text-decoration:underline;cursor:pointer;min-height:48px}
.price-card h3{font-size:28px;line-height:1.15}
.contact-buttons .pill:not(.whatsapp){background:transparent;color:#f5f2ea;border:1px solid #addecf}
.contact-buttons .pill.whatsapp{background:#addecf;color:#14253b;border-color:#addecf}
.contact-buttons .pill.whatsapp svg{width:22px;height:22px;flex-shrink:0}
.contact-buttons .pill.whatsapp:hover{color:#f5f2ea}

/* Portada más breve y revisión como primera acción. */
.intro-layout{min-height:0;padding-block:32px 38px;gap:36px;grid-template-columns:1.1fr .9fr}
.intro-copy h1{font-size:clamp(36px,4.2vw,58px);margin-bottom:18px;line-height:1.08}
.intro-layout .kicker{margin-bottom:14px}
.intro-copy p:not(.kicker){margin-bottom:18px;font-size:16px;line-height:1.55}
.intro-copy .hero-footnote{margin-top:14px!important;margin-bottom:0!important}
.intro-actions .hero-analysis{font-size:16px;min-height:54px;padding:16px 25px}
.intro-actions .text-link{color:#f5f2ea;align-self:center;padding:12px 0;font-size:13px}
.intro-layout .brand-photo{max-width:430px;justify-self:end;padding:0}
.section{padding-block:48px}.section-head{margin-bottom:25px}.section-title{font-size:clamp(32px,4.3vw,54px);line-height:1.12}
#revision-rapida{scroll-margin-top:20px;border-bottom:1px solid var(--line)}
#revision-rapida .section-head{gap:26px}
#demos .demo-list{gap:28px}#demos .demo-row{padding-bottom:8px}#demos .demo-preview{margin-bottom:12px;aspect-ratio:2/1}#demos .demo-actions{border:0;padding-top:4px}
.about-grid{align-items:start}.portrait.portrait-photo{max-width:320px}.about-grid h2{font-size:clamp(34px,4vw,52px)}
.about-grid p svg{width:18px;height:18px;display:inline-block;vertical-align:middle}
.about-area{margin-top:16px;padding-top:0}.process-compact{margin:18px 0;padding-top:18px}
@media(max-width:650px){.intro-layout{grid-template-columns:1fr;padding-block:24px 28px;gap:18px}.intro-layout .brand-photo{display:none}.intro-copy h1{font-size:clamp(35px,9vw,45px)}.intro-actions .hero-analysis{width:100%}.section{padding-block:34px}#demos .demo-list{gap:22px}.portrait.portrait-photo{max-width:270px}.contact{padding-block:42px}}
