/* Fase 2 ampliada · tokens y composición compartidos por web y editor. */
:root{--sv-copper:#b84e2c;--sv-copper-dark:#933e23}
.sv-editorial-section{padding-block:clamp(3rem,6vw,5.5rem);margin-block:0!important;color:var(--sv-graphite);background:#fff}
.sv-editorial-section .sv-shell>p{max-width:84ch}
.sv-editorial-section h2{font-size:clamp(1.85rem,3.3vw,2.9rem);max-width:24ch;line-height:1.12;margin:0 0 1.5rem}
.sv-editorial-section h3{font-size:1.4rem;line-height:1.22}
.sv-editorial-section p{margin-block:0 1.15rem}
.sv-editorial-section .sv-eyebrow{margin-bottom:1rem;color:var(--sv-blue-dark)}
.sv-editorial-section :where(a){text-underline-offset:.2em}
.sv-editorial-section .sv-source{font-size:.875rem;color:var(--sv-steel-600);margin-top:1.25rem}
.sv-editorial-section figure{margin:0}
.sv-editorial-section .wp-block-group>*{min-width:0}
.sv-surface-tint{background:var(--sv-steel-050)}
.sv-editorial-rule>.sv-shell{border-top:1px solid var(--sv-steel-200);padding-top:3rem}
.sv-editorial-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.sv-prose{max-width:66ch}
.sv-diagram img{display:block;width:100%;height:auto;border:1px solid var(--sv-steel-200)}
.sv-diagram figcaption{font-size:.85rem;color:var(--sv-steel-600);text-align:left;padding-top:.65rem}
.sv-editorial-photo img,.sv-company-photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;display:block}
.sv-editorial-photo,.sv-company-photo{margin-block:0!important}
.sv-editorial-section .wp-block-button__link,.sv-pillar-hero .wp-block-button__link{font-size:1rem;min-height:48px;padding:.85rem 1.35rem}
.wp-block-button:not(.is-style-outline)>.wp-block-button__link,.sanvic-quote-button,.sv-btn--primary{background:var(--sv-copper);color:#fff;border-color:var(--sv-copper)}
.wp-block-button:not(.is-style-outline)>.wp-block-button__link:hover,.sanvic-quote-button:hover,.sv-btn--primary:hover{background:var(--sv-copper-dark);color:#fff;border-color:var(--sv-copper-dark)}
.wp-block-button.is-style-outline>.wp-block-button__link{background:transparent;color:var(--sv-navy-deep);border:1px solid currentColor}
:where(button,input,textarea,a,summary):focus-visible{outline:3px solid var(--sv-blue-dark);outline-offset:4px}
.sv-header :focus-visible,.sv-v4-hero :focus-visible,.sv-brand-band :focus-visible,.sv-footer :focus-visible,.sv-floating :focus-visible{outline-color:#a2c7e3}
.sv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}
.sv-actions>.wp-block-buttons{margin:0}
.sv-v4-hero{position:relative;isolation:isolate;background:var(--sv-navy-deep);color:#fff;margin:0!important}
.sv-v4-scenes{position:relative;display:grid;margin:0!important}
.sv-v4-scene{margin:0!important}
.sv-v4-scene img{width:100%;height:560px;object-fit:cover;display:block}
.sv-v4-hero-grid{position:relative;padding-block:3.5rem;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.8fr);gap:3rem;align-items:end;margin-block:0!important}
.sv-v4-hero-copy h1{font-size:clamp(2.75rem,5.5vw,5rem);line-height:1.02;letter-spacing:-.035em;max-width:10ch;color:#fff;margin:.8rem 0 1.5rem;text-wrap:balance}
.sv-v4-hero-copy .sv-lead{max-width:43ch;font-size:1.16rem;line-height:1.55;color:#dce8f1}
.sv-v4-hero-copy .sv-eyebrow{color:#dce8f1;font-size:.75rem}
.sv-v4-hero-copy .is-style-outline>.wp-block-button__link{color:#fff}
.sv-v4-hero .sanvic-quote-button{font-size:1rem}
.sv-v4-hero-side{padding:1.5rem 1.8rem;border-left:3px solid var(--sv-copper);background:#1a2a49f2;align-self:end}
.sv-hero-caption{font-family:var(--wp--preset--font-family--display);font-size:1.3rem;font-weight:600;color:#fff}
.sv-hero-categories{color:#d8e0e7;font-size:.93rem;line-height:1.8}
.sv-v4-controls{display:none;align-items:center;gap:.6rem;flex-wrap:wrap;margin-top:1.5rem}
.sv-v4-controls button{border:1px solid #a2c7e3;background:transparent;color:#fff;min-height:44px;min-width:44px;padding:.5rem;cursor:pointer;font:inherit;font-size:.85rem}
.sv-v4-controls button:hover{background:#ffffff20}
.sv-v4-controls span{font-family:var(--wp--preset--font-family--technical);font-size:.8rem;margin-right:auto}
.sv-scenes-ready .sv-v4-controls{display:flex}
.sv-scenes-ready .sv-v4-scenes{position:absolute;inset:0;z-index:-2}
.sv-scenes-ready .sv-v4-scene{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.sv-scenes-ready .sv-v4-scene.is-active{opacity:1}
.sv-scenes-ready .sv-v4-scene img{height:100%;object-position:65% center}
.sv-scenes-ready:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0e1729e8 0%,#0e1729c9 35%,#0e172914 75%);z-index:-1;pointer-events:none}
.sv-scenes-ready .sv-v4-hero-grid{min-height:650px;align-items:center}
.wp-block-post-content>.alignfull:first-child{margin-block-start:0}
.sv-proof{padding-block:1.8rem;border-bottom:1px solid var(--sv-steel-200)}
.sv-proof-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:2rem;align-items:center}
.sv-proof-grid p{margin:0;color:var(--sv-navy-deep);font-family:var(--wp--preset--font-family--display);font-size:2.25rem;font-weight:700}
.sv-proof-grid p span{display:block;font-family:var(--wp--preset--font-family--body);font-weight:400;font-size:.9rem;color:var(--sv-steel-600)}
.sv-proof-grid .sv-proof-brand{font-size:1.6rem;letter-spacing:.06em}
.sv-lines-layout{display:grid;grid-template-columns:.8fr 1.8fr;gap:4rem}
.sv-lines-editorial{display:grid;grid-template-columns:1fr 1fr;gap:2rem 2.5rem}
.sv-line-editorial{border-top:1px solid var(--sv-steel-200);padding-top:1.5rem;margin:0!important;display:flex;flex-direction:column}
.sv-line-editorial h3{margin:0 0 .8rem}
.sv-line-editorial>p:last-child{margin-top:auto;font-weight:600}
.sv-line-editorial .sv-line-number{color:var(--sv-copper);font-family:var(--wp--preset--font-family--technical);font-size:.8rem;margin-bottom:.8rem}
.sv-company-photo img{aspect-ratio:1/1;object-position:100% center}
.sv-guide-teaser{background:#fff}
.sv-guide-teaser-image img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:100% center}
.sv-guide-teaser-copy{padding-left:2rem;border-left:3px solid var(--sv-copper)}
.sv-brand-band{background:var(--sv-navy-deep);color:#fff;position:relative;overflow:hidden}
.sv-brand-band:after{content:"";position:absolute;width:32vw;height:32vw;right:-9vw;top:-10vw;border:2.5vw solid #ffffff07;border-radius:50%;pointer-events:none}
.sv-brand-band h2{color:#fff;max-width:22ch}
.sv-brand-band p{max-width:64ch;color:#dce8f1}
.sv-brand-band .sv-eyebrow{color:#a2c7e3}
.sv-brand-band .sv-sumitomo-name{font-family:var(--wp--preset--font-family--display);font-size:clamp(2rem,5vw,4.8rem);font-weight:700;letter-spacing:.04em;color:#fff;margin-bottom:2rem}
.sv-quote-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin-block:2rem 2.5rem}
.sv-quote-step{position:relative;border-top:2px solid var(--sv-copper);padding-top:1rem;margin:0!important}
.sv-quote-step:not(:last-child):after{content:"→";position:absolute;right:-1.6rem;top:1rem;color:var(--sv-copper)}
.sv-quote-step h3{font-size:1.2rem;margin:.6rem 0}
.sv-quote-step .sv-step-number{font-family:var(--wp--preset--font-family--technical);color:var(--sv-copper);font-size:.9rem}
.sv-quote-step p{font-size:.95rem}
.sv-places-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-block:2.5rem}
.sv-place{padding-left:1.5rem;border-left:1px solid var(--sv-steel-200)}
.sv-contact-strip{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;border-top:1px solid var(--sv-steel-200);padding-top:1.5rem}
.sv-contact-strip>p{margin:0;font-size:.93rem;max-width:35ch}
.sv-contact-strip>a:first-child{font-family:var(--wp--preset--font-family--display);font-size:1.5rem;font-weight:700}
.sv-pillar-hero{margin:0!important;padding-block:3rem;background:var(--sv-steel-050)}
.sv-pillar-hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
.sv-pillar-hero h1{font-size:clamp(2.25rem,4.1vw,3.8rem);line-height:1.07;margin:1.25rem 0;max-width:17ch}
.sv-pillar-hero__image{margin:0!important}
.sv-pillar-hero__image img{width:100%;aspect-ratio:1/1.08;height:auto;object-fit:cover;object-position:100% center;display:block}
.sv-pillar-breadcrumb{font-size:.84rem;margin-bottom:2rem;color:var(--sv-steel-600)}
.sv-pillar-breadcrumb span{margin-inline:.5rem}
.sv-pillar-hero .sv-lead{font-size:1.13rem;line-height:1.65}
.sv-index{padding-block:1.8rem;border-bottom:1px solid var(--sv-steel-200)}
.sv-index .sv-index-title{font-weight:600;margin-bottom:.5rem}
.sv-index-links{display:flex;gap:.5rem 1.25rem;flex-wrap:wrap;margin-bottom:0!important}
.sv-index-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.95rem;font-weight:600}
:where(.sv-editorial-section[id],.sv-family[id]){scroll-margin-top:2rem}
.sv-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.sv-loads{margin-top:2rem}
.sv-load-controls{display:none;gap:.6rem;flex-wrap:wrap;margin-bottom:1.5rem}
.sv-loads-ready .sv-load-controls{display:flex}
.sv-load-controls button{background:#fff;color:var(--sv-navy-deep);border:1px solid var(--sv-steel-600);padding:.65rem 1rem;min-height:44px;font:inherit;cursor:pointer;border-radius:2px}
.sv-load-controls button[aria-pressed=true]{background:var(--sv-blue-dark);color:#fff;border-color:var(--sv-blue-dark)}
.sv-load-panel{border:2px solid transparent;padding:.4rem;margin:0!important;transition:border-color .17s ease;background:#fff}
.sv-load-panel.is-selected{border-color:var(--sv-copper)}
.sv-load-panel h3,.sv-load-panel p{padding-inline:.8rem}
.sv-load-panel h3{margin:1rem 0 .5rem}
.sv-load-panel p{font-size:.95rem}
.sv-families-photo{margin-top:2rem!important}
.sv-families-photo img{width:100%;max-height:540px;object-fit:contain;display:block;background:var(--sv-steel-050)}
.sv-editorial-photo img{aspect-ratio:3/2;height:auto;object-fit:contain}
.sv-family-list{margin-top:2.5rem}
.sv-family{display:grid;grid-template-columns:minmax(200px,.65fr) minmax(0,1.35fr);gap:3rem;border-bottom:1px solid var(--sv-steel-200);padding-block:2.5rem;align-items:center;margin:0!important}
.sv-family:first-child{padding-top:0}
.sv-family-copy h3{font-size:1.65rem;margin:0 0 1rem}
.sv-family-copy p{font-size:1rem}
.sv-family:nth-child(even){grid-template-columns:minmax(0,1.35fr) minmax(200px,.65fr)}
.sv-family:nth-child(even)>.sv-diagram{order:2}
.sv-technical-table{overflow:auto;max-width:100%;margin-top:2rem!important;border:1px solid var(--sv-steel-200)}
.sv-technical-table table{min-width:740px;width:100%;border-collapse:collapse;table-layout:auto;font-size:1rem}
.sv-technical-table th,.sv-technical-table td{border:0;border-bottom:1px solid var(--sv-steel-200);padding:1rem;text-align:left;vertical-align:top;line-height:1.5}
.sv-technical-table thead th{background:var(--sv-navy-deep);color:#fff;font-size:.95rem}
.sv-technical-table tbody th{min-width:140px;color:var(--sv-navy-deep);font-weight:600}
.sv-technical-table tbody tr:nth-child(even){background:var(--sv-steel-050)}
.sv-technical-table figcaption{padding:1rem;color:var(--sv-steel-600);font-size:.85rem;margin:0;text-align:left;background:#fff}
.sv-protection{margin:2rem 0 0!important}
.sv-protection h3{margin:1rem 0 0}
.sv-brands-editorial{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin-top:2.5rem}
.sv-brand-reference{padding-top:1rem;border-top:2px solid var(--sv-blue);margin:0!important}
.sv-brand-reference h3{font-size:1.35rem;margin:0 0 .75rem}
.sv-brand-reference p{font-size:.98rem}
.sv-faqs{max-width:950px;margin-top:2rem}
.sv-faqs details{border-bottom:1px solid var(--sv-steel-200);padding-block:0;margin:0}
.sv-faqs summary{padding:1.15rem .5rem;cursor:pointer;font-size:1.08rem;font-weight:600;color:var(--sv-navy-deep);min-height:48px}
.sv-faqs details[open] summary{color:var(--sv-blue-dark)}
.sv-faqs details p{padding:.25rem .5rem 1rem;max-width:76ch;font-size:1rem}
.sv-quote-section{border-top:4px solid var(--sv-copper)}
.sv-quote-form{max-width:950px;padding:2rem;background:var(--sv-steel-050);border:1px solid var(--sv-steel-200)}
.sv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}
.sv-quote-form label{display:block;font-size:.95rem;font-weight:600;color:var(--sv-navy-deep);margin-bottom:.4rem}
.sv-quote-form input,.sv-quote-form textarea{width:100%;min-height:48px;border:1px solid var(--sv-steel-600);border-radius:2px;padding:.7rem;font:inherit;font-size:1rem;color:var(--sv-graphite);background:#fff}
.sv-quote-result{margin-top:1.5rem}
.sv-quote-result textarea{margin-bottom:1rem;resize:vertical}
.sv-quote-form [hidden]{display:none!important}
.sv-quote-form .sv-form-status{font-size:.9rem;margin:1rem 0 0}
.single-product .sv-archive-head{padding-block:1rem;background:var(--sv-steel-050);color:var(--sv-steel-600)}
.single-product .sv-archive-head:after{display:none}
.single-product .sv-breadcrumb{color:var(--sv-steel-600);margin:0}
.single-product .sv-breadcrumb a{color:var(--sv-blue-dark)}
.single-product .sv-breadcrumb [aria-current="page"],.single-product .sv-breadcrumb li{color:var(--sv-steel-600)}
.single-product .sv-breadcrumb li+li:before{color:var(--sv-steel-600)}
.single-product .sv-breadcrumb a:hover,.single-product .sv-breadcrumb a:focus-visible{color:var(--sv-blue-dark)}
.single-product .sv-product{padding-block:2rem}
.single-product .woocommerce div.product{gap:2rem}
.single-product .sv-notice{padding:.8rem 1rem;margin-block:1.25rem;font-size:.95rem}
.single-product .woocommerce-tabs{margin-top:0!important;padding-top:1.5rem!important}
.single-product .sv-demo--inline{display:none}
.woocommerce ul.products li.product img{background:var(--sv-steel-050);aspect-ratio:4/3;object-fit:contain;transform:none!important}
.sv-context-guide{margin-top:1.5rem;font-size:1rem}
.sv-context-guide a{color:inherit;text-underline-offset:.2em}
@media(max-width:1000px){.sv-v4-hero-grid{grid-template-columns:1fr;gap:1.5rem}.sv-v4-hero-side{max-width:420px}.sv-scenes-ready .sv-v4-hero-grid{min-height:700px}.sv-v4-hero-copy h1{max-width:12ch}.sv-lines-layout{grid-template-columns:1fr;gap:2rem}.sv-line-intro{max-width:65ch}.sv-brands-editorial{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.sv-editorial-split,.sv-pillar-hero__grid{grid-template-columns:1fr;gap:2rem}.sv-pillar-hero__image img{aspect-ratio:16/9;max-height:400px}.sv-pillar-hero h1{max-width:22ch}.sv-editorial-photo img,.sv-company-photo img{aspect-ratio:3/2;max-height:460px}.sv-quote-steps{grid-template-columns:1fr 1fr}.sv-quote-step:nth-child(2):after{display:none}.sv-family,.sv-family:nth-child(even){gap:1.75rem;grid-template-columns:.8fr 1.2fr}.sv-family:nth-child(even)>.sv-diagram{order:0}}
@media(max-width:600px){.sv-editorial-section{padding-block:3rem}.sv-editorial-split{gap:1.5rem}.sv-lines-editorial,.sv-grid-three,.sv-brands-editorial,.sv-places-grid,.sv-form-grid{grid-template-columns:1fr}.sv-family,.sv-family:nth-child(even){grid-template-columns:1fr;gap:1.4rem;padding-block:2rem}.sv-family>.sv-diagram{max-width:420px}.sv-proof-grid{gap:1rem;grid-template-columns:1fr 1fr}.sv-proof-grid .sv-proof-brand{grid-column:1/-1;font-size:1.5rem}.sv-proof-grid p{font-size:2rem}.sv-proof{padding-block:1.5rem}.sv-v4-hero-grid{padding-top:2rem;padding-bottom:2rem;gap:1.5rem}.sv-scenes-ready .sv-v4-scenes{position:relative;height:280px;z-index:0}.sv-scenes-ready:after{display:none}.sv-scenes-ready .sv-v4-hero-grid{min-height:0}.sv-v4-hero-copy h1{font-size:2.75rem;max-width:11ch}.sv-v4-hero-copy .sv-lead{font-size:1.05rem}.sv-v4-hero-side{padding:1rem;max-width:none}.sv-v4-hero-side .sv-hero-caption{font-size:1.1rem;margin:0 0 .5rem}.sv-hero-categories{font-size:.88rem;margin:0}.sv-v4-controls{margin-top:1rem}.sv-pillar-hero{padding-block:1.5rem}.sv-pillar-hero h1{font-size:2.3rem;max-width:none}.sv-pillar-breadcrumb{margin-bottom:1rem}.sv-pillar-hero__image img{aspect-ratio:4/3}.sv-pillar-hero .sv-lead{font-size:1.05rem}.sv-quote-form{padding:1.2rem}.sv-quote-steps{gap:1.5rem}.sv-quote-step:not(:last-child):after{right:-1.25rem}.sv-guide-teaser-copy{padding-left:1.25rem}.sv-technical-table table{font-size:.95rem;min-width:700px}.sv-places-grid{gap:1.5rem}.sv-load-panel .sv-diagram img{max-height:230px}.sv-quote-form button{width:100%}.sv-families-photo img{aspect-ratio:3/2}.sv-index-links{gap:.25rem 1rem}}
@media(prefers-reduced-motion:reduce){.sv-v4-scene,.sv-load-panel{transition:none!important}.sv-editorial-section *{scroll-behavior:auto!important}}
