/* Edición editorial: jerarquía compacta sin afectar el portal de clientes. */
:root{--editorial-gap:24px;--paper:#f3efe8;--sand:#eae4d9;--line:#ddd5c8;--light:#eae4d9}
.header{height:86px;padding-inline:5%;gap:20px}
.header nav{font-size:12px;gap:24px;margin-right:15px}
.header .client-trigger{font-size:11px;padding:12px 16px}
.hero{padding:40px 5% 44px;gap:5%;grid-template-columns:1.05fr 1fr;align-items:stretch;max-width:1600px}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding-block:16px}
.hero h1{font-size:clamp(42px,4.4vw,68px);line-height:1.08;letter-spacing:-2px}
.hero .eyebrow{margin-bottom:20px;font-size:10px}
.hero-description{font-size:14px;line-height:1.8;max-width:480px;margin-top:22px}
.hero-actions{margin-top:24px;gap:22px}.hero-actions .button{font-size:12px;padding:16px 19px}
.hero-signature{margin-top:25px}.hero-photo{height:auto;min-height:490px;box-shadow:9px 9px 0 var(--sand);margin:0}
.hero-photo>img{position:absolute;inset:0}.photo-badge{left:18px;top:20px;padding:13px 16px}.photo-label{bottom:30px;left:26px}
.principles{padding:22px 6%;font-size:13px}.principles div+div{padding-left:30px}
.section{padding:60px 6%;max-width:1600px}
h2{font-size:clamp(32px,3.1vw,46px);line-height:1.16}.eyebrow{font-size:10px;margin-bottom:16px}
.about{position:relative;grid-template-columns:1fr 1fr;gap:5%;align-items:center}
.about>div:first-child{display:grid;grid-template-columns:1fr;gap:0}.perspective-photo{height:230px;margin-top:24px}
.about-body{padding-top:0}.about-body .lead{font-size:23px;line-height:1.5;margin-bottom:20px}
.about-body p{font-size:14px;line-height:1.85}.about-body:after{content:'CONTABILIDAD · PERSONAS · OPERACIÓN';display:block;padding-top:23px;margin-top:26px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:#667f88}
.section-heading{margin-bottom:28px;gap:35px}.section-heading>p{font-size:14px;width:360px;max-width:360px;line-height:1.8}
.service-list{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.service{position:relative;display:grid;grid-template-columns:1fr 48px;gap:0;padding:0 0 24px;background:white;border:1px solid #dbe4e9;border-radius:5px;overflow:hidden;align-content:start;transition:box-shadow .2s,transform .2s}
.service:hover{box-shadow:0 12px 28px #173a4910;transform:translateY(-3px)}
.service .service-photo{grid-column:1/-1;grid-row:1;height:205px;border-radius:0;width:100%;object-fit:cover}
.service .service-number{position:absolute;top:16px;left:16px;padding:9px 12px;background:white;color:var(--ink);font-size:12px;font-weight:600;box-shadow:0 3px 10px #0001}
.service .service-title{grid-column:1;grid-row:2;padding:24px 24px 12px;display:flex;gap:14px;align-items:center;margin:0}
.service-title svg{width:28px;height:28px;flex-shrink:0;margin:0}.service-title h3{font-size:23px;line-height:1.2}.service-title h3 br{display:none}
.service>div:nth-child(4){grid-column:1/-1;grid-row:3;padding:0 24px}
.service>div:nth-child(4) p{max-width:none;font-size:14px;line-height:1.65;min-height:46px}
.service>div:nth-child(4) ul{grid-template-columns:1fr 1fr;gap:10px 16px;font-size:12px;line-height:1.5;margin-top:17px}
.service li{padding-left:12px;position:relative}.service li:before{position:absolute;left:0;margin:0;content:'·'}
.service .service-cta{grid-column:2;grid-row:2;align-self:center;margin:14px 14px 0 0;width:34px;height:34px}
.method{grid-template-columns:1fr 1.1fr;gap:7%;align-items:center}.method-intro>p:not(.eyebrow){font-size:14px;max-width:440px;margin-top:19px}.method-photo{margin-top:25px;max-width:none}.method-photo img{height:200px}.steps article{padding:23px 0;gap:20px}.steps h3{font-size:19px}.steps p{font-size:14px;line-height:1.8}.steps article>span{font-size:15px}
.client-section{gap:7%;padding-block:58px}.portal-art{padding:25px 20px 22px}.portal-frame{width:100%;min-height:260px}.client-copy>p:not(.eyebrow){font-size:14px;margin-top:19px}.check-list{font-size:13px;margin-block:20px 23px}.client-copy .button{font-size:12px}
.faq{gap:7%;padding-block:54px}.faq summary{font-size:14px}.faq details{padding-block:19px}.faq details p{font-size:13px}
.contact{gap:6%;padding-block:58px;background:#edf2f3}.contact>div>p:not(.eyebrow){font-size:15px;max-width:400px}.contact-note{margin-top:25px}.contact form{background:white}.contact .form-note{font-size:11px}.contact label{font-size:12px}.contact input,.contact select,.contact textarea{font-size:14px;background:#fafcfc}.contact .button{font-size:12px}
.social-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 6%;background:#e4eae9;border-top:1px solid #d5dfdf}.social-strip h3{font-size:20px;margin-bottom:5px}.social-strip p{font-size:13px;color:#536e7a}.social-links{display:flex;gap:12px;flex-wrap:wrap}.social-button{display:inline-flex;gap:10px;align-items:center;background:white;border:1px solid #bdcdd1;color:var(--ink);border-radius:4px;padding:12px 16px;font-size:13px}.social-button svg{width:21px;height:21px}.social-button small{font-size:10px;color:#647c85}.social-button:disabled{cursor:default;opacity:.8}.social-button:focus-visible{outline:3px solid var(--accent)}
footer{padding:32px 6% 20px}.footer-top{padding-bottom:25px}.footer-top>p{margin-right:6%}
@media(min-width:1600px){.hero,.section{padding-inline:96px}.hero-photo{min-height:530px}}
@media(max-width:1050px){.header nav{gap:15px;font-size:11px}.hero{padding:30px 5% 38px}.hero h1{font-size:46px}.hero-photo{min-height:470px}.hero-actions{gap:15px;flex-wrap:wrap}.section{padding:48px 5%}.service-title h3{font-size:20px}.service .service-title{padding:20px 18px 12px;gap:10px}.service>div:nth-child(4){padding-inline:18px}.service>div:nth-child(4) ul{grid-template-columns:1fr}.about-body .lead{font-size:20px}.steps article{padding-block:19px}.steps p{font-size:13px}}
@media(max-width:760px){.header{height:80px;padding-inline:5%;gap:10px}.header nav{top:79px;font-size:14px}.header .client-trigger{font-size:9px;padding:10px 8px}.hero{grid-template-columns:1fr;gap:26px;padding:25px 6% 34px}.hero-copy{padding:0}.hero h1{font-size:clamp(38px,9.5vw,60px)}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero-description{font-size:14px;line-height:1.75}.hero-photo{height:320px;min-height:0;width:100%;box-shadow:6px 6px 0 var(--sand)}.photo-label p{font-size:24px}.photo-badge{font-size:10px;left:14px;top:14px;padding:10px 12px}.photo-badge small{font-size:9px}.hero-actions .button{font-size:11px}.principles{grid-template-columns:1fr;gap:12px;padding:20px 6%;font-size:13px}.principles div+div{padding-left:0;border:0}.principles div{gap:15px}.section{padding:40px 6%}.about,.method,.client-section,.faq,.contact{grid-template-columns:1fr;gap:26px}h2{font-size:33px}.perspective-photo{height:215px;margin-top:22px}.about-body .lead{font-size:20px}.about-body:after{font-size:9px;padding-top:18px;margin-top:18px}.section-heading{display:block;margin-bottom:24px}.section-heading>p{width:auto;max-width:none;margin-top:16px;font-size:13px}.service-list{grid-template-columns:1fr;gap:20px}.service .service-photo{height:195px}.service .service-title{padding:19px 20px 12px}.service-title h3{font-size:22px}.service-title svg{display:block;width:24px;height:24px}.service>div:nth-child(4){padding-inline:20px}.service>div:nth-child(4) p{min-height:0}.service>div:nth-child(4) ul{grid-template-columns:1fr;font-size:13px;gap:9px}.method-photo img{height:190px}.steps article:first-child{padding-top:20px;border-top:1px solid #ffffff24}.steps h3{font-size:18px}.steps p{font-size:14px}.portal-art{order:2}.client-copy{order:1}.portal-main{padding:20px}.contact form{margin:0;padding:22px 18px}.contact input,.contact select,.contact textarea{font-size:16px}.social-strip{align-items:flex-start;flex-direction:column;padding:24px 6%;gap:18px}.social-links{width:100%}.social-button{flex:1;justify-content:center;padding:12px 10px}.social-button small{display:none}.footer-top{flex-wrap:wrap;gap:20px}.footer-top>p{margin:0}.footer-bottom{gap:15px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service,.button{transition:none}.service:hover,.button:hover{transform:none}}

/* Fondo elegido: Arena suave. Superficies blancas para tarjetas y formularios. */
body{background:var(--paper)}
.header{background:color-mix(in srgb,var(--paper) 96%,transparent);border-color:var(--line)}
.hero,.about,.client-section{background:var(--paper)}
.principles,.services,.faq,.contact,.social-strip{background:var(--sand);border-color:var(--line)}
.service,.contact form{background:#fff;border-color:var(--line)}
.service .service-cta{border-color:var(--line)}
.portal-art{background:var(--sand);border-color:var(--line)}
.hero-photo{box-shadow:9px 9px 0 var(--sand)}
@media(max-width:760px){.hero-photo{box-shadow:6px 6px 0 var(--sand)}}
