/* Tosama v15 — recorrido familiar amplio, con imágenes y relatos alternados. */
.company-family-editorial{background:#fff;scroll-margin-top:120px}
.family-editorial-intro{padding:120px 70px 100px;max-width:1700px;margin:auto}
.family-editorial-intro>.ref-label{display:block;font-size:18px;margin-bottom:30px}
.family-editorial-intro h2{font-size:clamp(55px,6.3vw,100px);font-weight:500;line-height:1.06;letter-spacing:-.04em;color:var(--dark);margin:0 0 45px;max-width:1200px}
.family-editorial-intro>p{font-size:23px;line-height:1.6;color:#4c596a;max-width:980px;margin:0}
.family-chapter-nav{display:flex;flex-wrap:wrap;gap:25px 65px;margin-top:60px;border-top:5px solid var(--blue);padding-top:27px}
.family-chapter-nav a{font-size:22px;color:var(--dark);text-decoration:none;display:flex;align-items:center;gap:25px;padding:8px 0}
.family-chapter-nav a:hover{color:var(--blue)}
.family-chapter-nav a:focus-visible{outline:3px solid var(--blue);outline-offset:8px}
.company-story-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:max(800px,100svh);scroll-margin-top:120px}
.story-chapter-photo{position:relative;margin:0;min-height:800px;align-self:stretch;overflow:hidden;background:#d9e1e9}
.story-chapter-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.portrait-photo>img{object-position:center 25%}
.story-chapter-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(0deg,#102b52b8,transparent);pointer-events:none}
.story-chapter-photo figcaption{position:absolute;left:40px;right:40px;bottom:35px;color:#fff;font-size:15px;line-height:1.5;z-index:1}
.story-chapter-copy{display:flex;flex-direction:column;justify-content:center;align-items:start;padding:clamp(45px,5vw,90px);color:var(--dark);background:#fff;min-width:0}
.story-chapter-label{font-size:15px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;margin-bottom:28px;max-width:100%}
.story-chapter-copy h3{font-size:clamp(60px,6.3vw,100px);font-weight:500;line-height:1;letter-spacing:-.04em;margin:0 0 22px;color:inherit;max-width:100%}
.story-chapter-copy .story-person-role{font-size:17px;line-height:1.55;margin:0 0 45px;font-weight:500}
.story-chapter-copy h4{font-size:clamp(27px,2.4vw,38px);font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0 0 28px;color:inherit;max-width:100%}
.story-chapter-copy>p:not(.story-person-role){font-size:20px;line-height:1.6;margin:0 0 25px;max-width:610px;color:inherit}
.story-chapter-copy>p:last-child{margin-bottom:0}
.story-chapter-copy .ref-link{font-size:18px;margin-top:20px;color:inherit}
.company-story-chapter.reverse .story-chapter-photo{grid-column:2;grid-row:1}
.company-story-chapter.reverse .story-chapter-copy{grid-column:1;grid-row:1}
.story-successor .story-chapter-copy{background:var(--blue);color:#fff}
.story-successor .story-chapter-label{color:#c7dafa}
.story-electronics .story-chapter-copy{background:var(--paper)}
.family-name-finale{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:100px;min-height:70svh;background:var(--blue);color:#fff;padding:100px 70px}
.family-name-logo>.ref-label{display:block;font-size:17px;margin-bottom:70px;color:#c7dafa}
.family-name-logo>img{display:block;width:100%;height:auto;max-width:680px;filter:grayscale(1) brightness(0) invert(1)}
.family-name-copy h3{font-size:clamp(55px,5.5vw,90px);font-weight:500;line-height:1.06;letter-spacing:-.035em;color:#fff;margin:0 0 40px}
.family-name-copy p{font-size:21px;line-height:1.6;margin:0 0 30px;max-width:600px}
.family-name-copy .ref-link{color:#fff}
@media(max-width:1200px){.family-editorial-intro{padding-inline:40px}.family-chapter-nav{gap:25px 45px}.story-chapter-copy{padding:55px 40px}.story-chapter-copy h3{font-size:75px}.story-chapter-copy>p:not(.story-person-role){font-size:19px}.story-chapter-copy .story-person-role{margin-bottom:35px}.story-chapter-photo figcaption{left:30px;right:30px}.family-name-finale{padding-inline:40px;gap:60px}}
@media(max-width:1000px) and (min-width:781px){.family-editorial-intro h2{font-size:65px}.family-editorial-intro>p{font-size:21px}.family-chapter-nav a{font-size:20px;gap:15px}.story-chapter-copy{padding:55px 32px}.story-chapter-copy h3{font-size:62px}.story-chapter-copy h4{font-size:29px}.story-chapter-copy>p:not(.story-person-role){font-size:18px}.story-chapter-copy .story-person-role{font-size:16px}.story-chapter-label{font-size:13px}.family-name-finale{gap:40px}.family-name-copy h3{font-size:63px}.family-name-copy p{font-size:20px}}
@media(max-width:780px){.company-family-editorial{scroll-margin-top:90px}.family-editorial-intro{padding:80px 24px 65px}.family-editorial-intro>.ref-label{font-size:15px;margin-bottom:25px}.family-editorial-intro h2{font-size:clamp(41px,9.5vw,64px);margin-bottom:35px;line-height:1.1}.family-editorial-intro>p{font-size:20px}.family-chapter-nav{display:block;margin-top:40px;padding-top:20px;border-top-width:4px}.family-chapter-nav a{justify-content:space-between;font-size:20px;padding:13px 0}.company-story-chapter{display:flex;flex-direction:column;min-height:0;scroll-margin-top:90px}.story-chapter-photo{min-height:0;height:75svh;max-height:780px;min-height:440px;width:100%;order:0}.company-story-chapter.reverse .story-chapter-photo{order:0}.story-chapter-copy,.company-story-chapter.reverse .story-chapter-copy{order:1;min-height:0;padding:65px 24px 75px;width:100%;box-sizing:border-box}.story-chapter-photo figcaption{left:24px;right:24px;bottom:25px;font-size:14px}.story-chapter-copy h3{font-size:clamp(57px,14vw,86px);margin-bottom:20px;line-height:1.04}.story-chapter-label{font-size:13px;margin-bottom:25px}.story-chapter-copy .story-person-role{font-size:16px;margin-bottom:35px}.story-chapter-copy h4{font-size:32px;margin-bottom:25px}.story-chapter-copy>p:not(.story-person-role){font-size:19px;line-height:1.65}.story-chapter-copy .ref-link{font-size:17px}.family-name-finale{display:block;min-height:0;padding:75px 24px 85px}.family-name-logo>.ref-label{font-size:15px;margin-bottom:35px}.family-name-logo>img{max-width:550px}.family-name-copy{margin-top:65px}.family-name-copy h3{font-size:clamp(58px,13vw,82px);margin-bottom:30px}.family-name-copy p{font-size:20px}}
@media(max-width:360px){.family-editorial-intro h2{font-size:35px}.story-chapter-copy h3{font-size:54px}.story-chapter-copy h4{font-size:29px}.story-chapter-photo{height:68svh;min-height:410px}.family-name-copy h3{font-size:57px}}

.company-story-chapter{position:relative}.story-chapter-anchor{position:absolute;top:0;scroll-margin-top:120px}
@media(max-width:780px){.story-chapter-anchor{scroll-margin-top:90px}}
