.sf-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.sf-visual{position:relative;aspect-ratio:1.08;background:#f7f8fa;border:1px solid #e3e7eb;border-radius:18px;overflow:hidden;padding:40px}
.sf-visual>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.sf-image-label{position:absolute;top:20px;left:24px;font-size:10px;color:#7c8793;letter-spacing:1.2px}
.sf-intro h2{font-size:32px;line-height:1.3;letter-spacing:-.6px;margin:0 0 20px}
.sf-intro>p:not(.gb-eyebrow){font-size:14px;line-height:1.85;color:#717b85}
.sf-offer{background:#fff;border:1px solid #e1e6ec;border-radius:14px;padding:24px;margin-top:28px;box-shadow:0 6px 25px #26364d09}
.sf-offer>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:20px}
.sf-offer span{font-size:12px;color:#7c8590}
.sf-offer strong{font-size:24px;white-space:nowrap}
.sf-offer p{font-size:12px;line-height:1.7;color:#848c95}
.sf-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.sf-benefits span{padding:8px 12px;border-radius:20px;background:#f2f4f6;color:#65717d;font-size:10px}
.sf-solutions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.sf-solutions>a{padding:24px;background:#f7f8fa;border:1px solid #e3e7ec;border-radius:14px;text-decoration:none;color:#303a44;transition:border-color .18s,box-shadow .18s}
.sf-solutions>a:hover{border-color:#c53c40;box-shadow:0 5px 20px #26364d0a}
.sf-solutions img{width:100%;height:180px;object-fit:contain;mix-blend-mode:multiply}
.sf-solutions h3{font-size:17px;font-weight:600;line-height:1.5;margin:20px 0 8px}
.sf-solutions span{font-size:11px;color:#8a5a5e}
.sf-brands{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:28px}
.sf-brands span{font-size:12px;color:#7b8792;margin-right:12px}
.sf-brands a{padding:9px 16px;border:1px solid #e1e6ec;border-radius:8px;text-decoration:none;color:#4b5865;font-size:13px}
.sf-composition{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:30px}
.sf-composition article{padding:24px;border:1px solid #e5e9ee;border-radius:14px;background:#fff}
.sf-composition article>span{color:#bd3034;font-size:12px;font-weight:600}
.sf-composition h3{font-size:17px;margin:22px 0 12px}
.sf-composition p{font-size:13px!important;margin:0}
.sf-sections{margin-top:28px;border-top:1px solid #e1e5eb}
.sf-sections>details{border-bottom:1px solid #e1e5eb;padding:0}
.sf-sections>details>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 8px;list-style:none;font-size:15px;line-height:1.6;font-weight:600;color:#3b4651;cursor:pointer}
.sf-sections>details>summary::-webkit-details-marker{display:none}
.sf-expand{font-size:23px;line-height:1;flex:none;font-weight:400}
.sf-sections>details[open]>summary .sf-expand{transform:rotate(45deg)}
.sf-source{padding:20px 20px 30px;border-top:1px solid #edf0f3;background:#fafbfc;border-radius:0 0 12px 12px;overflow:auto;font-size:14px;line-height:1.8;color:#586570}
.sf-source>div{max-width:100%}
.sf-source img{display:inline-block;max-width:100%;width:auto;height:auto;max-height:480px;object-fit:contain;border-radius:8px;vertical-align:middle;margin:10px 8px 10px 0}
.sf-source img.sf-zoomable{cursor:zoom-in}
.sf-source a{color:#a82f36;text-underline-offset:3px}
.sf-source h2,.sf-source h3{font-size:19px;line-height:1.5;letter-spacing:0;margin:28px 0 14px}
.sf-source table{border-collapse:collapse;width:100%;margin:20px 0;background:#fff;font-size:12px}
.sf-source td,.sf-source th{padding:12px;border:1px solid #e0e5eb;vertical-align:top}
.sf-source th{background:#edf1f5;color:#455361;text-align:left}
.sf-source .sf-source-cards{table-layout:auto}
.sf-source .sf-source-cards td{min-width:130px}
.sf-source table img{max-height:180px}
.sf-source p{line-height:1.8}
.sf-selection{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;padding:40px;border:1px solid #e2e7ec;border-radius:18px;background:#f3f5f7;margin-top:48px;scroll-margin-top:220px}
.sf-selection h2{font-size:32px;line-height:1.3;margin:0 0 20px;letter-spacing:-.6px}
.sf-selection>div>p:not(.gb-eyebrow){font-size:14px;line-height:1.9;color:#737f8b}
.sf-selection-note{margin-top:30px;font-size:12px;line-height:1.8;padding-left:18px;border-left:3px solid #c6373e;color:#7c8792}
.sf-selection form{background:white;border:1px solid #e0e6ec;border-radius:14px;padding:26px;box-shadow:0 6px 20px #26364d06}
.sf-selection label{display:block;font-size:12px;color:#5a6774;margin-bottom:18px}
.sf-selection input,.sf-selection select{display:block;width:100%;height:48px;margin-top:8px;padding:10px 12px;border:1px solid #dbe2e9;border-radius:8px;background:white;font:14px "Open Sans",Arial,sans-serif;color:#3c4650}
.sf-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sf-selection .gb-button{width:100%;font-size:12px}
#sfImageDialog{border:0;border-radius:16px;width:min(1000px,calc(100% - 32px));max-height:90vh;padding:32px;background:white}
#sfImageDialog::backdrop{background:#14202dc9}
#sfImageDialog img{display:block;max-width:100%;max-height:73vh;margin:auto;object-fit:contain}
#sfImageDialog p{font-size:13px;color:#63717d}
.sf-body [id]{scroll-margin-top:var(--sf-header-offset,220px)}
@media(max-width:1000px){.sf-hero{gap:28px}.sf-intro h2{font-size:27px}.sf-offer{padding:20px}.sf-offer strong{font-size:20px}.sf-solutions,.sf-composition{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-selection{gap:30px;padding:28px}}
@media(max-width:700px){.sf-hero,.sf-selection{grid-template-columns:1fr}.sf-visual{aspect-ratio:auto;height:340px;padding:30px}.sf-intro h2,.sf-selection h2{font-size:26px}.sf-offer .gb-actions{grid-template-columns:1fr}.sf-solutions{gap:12px}.sf-solutions>a{padding:15px}.sf-solutions img{height:140px}.sf-solutions h3{font-size:15px}.sf-composition{gap:12px}.sf-composition article{padding:18px}.sf-composition h3{font-size:15px}.sf-selection{padding:24px 18px;gap:24px}.sf-selection form{padding:20px}.sf-source{padding:14px;overflow:auto}.sf-sections>details>summary{font-size:13px}.sf-source .sf-source-table{min-width:560px}}
@media(max-width:400px){.sf-field-row{grid-template-columns:1fr;gap:0}.sf-composition{grid-template-columns:1fr}.sf-offer>div:first-child{align-items:start;flex-direction:column;gap:8px}}
