/* PALUM Soluciones. Uses the site's existing font, palette, shell and buttons. */
.solutions-content { --s-line:var(--mock-line); --s-muted:var(--mock-muted); }
.solutions-content section { padding:64px 0; scroll-margin-top:92px; }
.solutions-content img { display:block; max-width:100%; }
.solutions-content h1,.solutions-content h2,.solutions-content h3 { color:inherit; font-weight:800; }
.solutions-content h2 { margin:0; font-size:clamp(28px,2.6vw,36px); line-height:1.12; letter-spacing:-1px; }
.solutions-content h3 { margin:0 0 12px; font-size:23px; line-height:1.2; letter-spacing:-.45px; }
.solutions-content p { font-size:15px; line-height:1.65; }
.solutions-content .mock-shell { position:relative; }
.solutions-content .s-label,.solutions-content .s-section-label,.solutions-content .s-kicker { margin:0 0 13px; color:var(--mock-blue); font-size:11px; font-weight:800; letter-spacing:1.25px; line-height:1.5; }
.solutions-content .s-button { color:#fff; flex:none; }
.solutions-content a:focus-visible { outline:2px solid #57a1ed; outline-offset:4px; }
.solutions-content :is(.s-hero,.s-detail-hero) { color:#fff; background:var(--mock-navy); position:relative; overflow:hidden; padding:54px 0 58px; }
.solutions-content .s-hero-background::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#111c24 0%,#172630 40%,rgba(19,31,40,.86) 54%,rgba(8,18,27,.16) 100%),var(--solution-image) right center/58% auto no-repeat; }
.solutions-content .s-hero-content { z-index:1; }
.solutions-content .s-hero-content > * { max-width:710px; }
.solutions-content h1 { font-size:clamp(34px,3.6vw,49px); letter-spacing:-1.6px; line-height:1.06; margin:0 0 20px; }
.solutions-content h1 span { display:block; color:#58a0ea; }
.solutions-content .s-back { display:inline-flex; color:#c0d3e5; font-size:12px; font-weight:600; margin-bottom:24px; }
.solutions-content :is(.s-hero,.s-detail-hero) .s-kicker { color:#d6e3ef; }
.solutions-content .s-lead,.solutions-content :is(.s-hero,.s-detail-hero) .s-intro { display:block; color:#edf2f5; font-size:16px; line-height:1.6; margin:0 0 24px; max-width:665px; }
.solutions-content .s-subhead { font-size:18px; font-weight:700; margin:0 0 13px; }
.solutions-content .s-hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:44px; align-items:center; }
.solutions-content .s-hero-visual { min-width:0; }
.solutions-content .s-hero-photo { position:relative; overflow:hidden; border-radius:8px; }
.solutions-content .s-hero-photo img { width:100%; aspect-ratio:1.45; height:auto; object-fit:cover; }
.solutions-content .s-photo-tag { position:absolute; bottom:0; left:0; right:0; font-size:10.5px; padding:10px 14px; background:rgba(6,28,45,.84); color:white; }
.solutions-content .s-promise { border-bottom:1px solid var(--s-line); }
.solutions-content .s-promise-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.solutions-content .s-promise-item { display:flex; align-items:center; gap:16px; padding:22px 20px; }
.solutions-content .s-promise-item:not(:last-child) { border-right:1px solid var(--s-line); }
.solutions-content .s-ico { display:grid; place-items:center; width:35px; height:35px; flex:none; border:1px solid #bdd2e5; border-radius:50%; color:var(--mock-blue); font-size:18px; }
.solutions-content .s-promise-item strong { display:block; font-size:13px; }
.solutions-content .s-promise-item small { display:block; color:var(--s-muted); font-size:11px; margin-top:4px; }
.solutions-content :is(.s-section-head,.s-intro-grid,.s-intro) { display:grid; grid-template-columns:.9fr 1.1fr; gap:54px; align-items:start; }
.solutions-content .s-section-head { align-items:end; margin-bottom:30px; }
.solutions-content .s-section-head > p { margin:0; color:var(--s-muted); }
.solutions-content :is(.s-copy,.s-intro-copy) { color:var(--s-muted); }
.solutions-content :is(.s-copy,.s-intro-copy) > p:first-child { margin-top:0; }
.solutions-content .s-copy strong { color:var(--mock-ink); }
.solutions-content .s-statement { border-left:3px solid var(--mock-blue); color:var(--mock-blue-dark); font-weight:700; font-size:16px; line-height:1.55; padding:14px 20px; background:#f3f7fb; margin-top:23px; }
.solutions-content .s-group-tag,.solutions-content .s-featured .s-subhead { display:flex; gap:18px; align-items:center; color:var(--mock-blue); font-size:11px; letter-spacing:1.2px; font-weight:800; margin:34px 0 18px; }
.solutions-content .s-group-tag::after,.solutions-content .s-featured .s-subhead::after { content:""; flex:1; height:1px; background:var(--s-line); }
.solutions-content .s-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.solutions-content .s-card { position:relative; display:flex; flex-direction:column; overflow:hidden; border:1px solid #e1e8ef; border-radius:8px; background:#fff; box-shadow:0 8px 22px rgba(25,44,60,.05); transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease; }
.solutions-content .s-card:hover,.solutions-content .s-card:focus-within { transform:translateY(-4px); border-color:#9ec3e4; box-shadow:0 16px 30px rgba(25,44,60,.1); }
.solutions-content .s-card-img { position:relative; overflow:hidden; height:245px; background:#f1f5f9; }
.solutions-content .s-card-img img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.solutions-content .s-card-img-contain img { object-fit:contain; padding:15px; }
.solutions-content .s-card:hover .s-card-img img { transform:scale(1.035); }
.solutions-content .s-num { position:absolute; top:16px; left:16px; display:grid; place-items:center; width:33px; height:33px; border-radius:50%; font-size:12px; font-weight:800; color:#fff; background:var(--mock-blue); }
.solutions-content .s-card-body { display:flex; flex-direction:column; flex:1; padding:24px 26px; }
.solutions-content .s-kind { color:var(--mock-blue); font-size:11px; letter-spacing:.9px; font-weight:800; }
.solutions-content .s-card h3 { font-size:24px; margin:10px 0 12px; }
.solutions-content .s-card p { color:var(--s-muted); margin:0 0 22px; }
.solutions-content .s-more { color:var(--mock-blue); font-size:13px; font-weight:800; display:flex; gap:12px; margin-top:auto; }
.solutions-content .s-stretched-link::after { position:absolute; inset:0; content:""; }
.solutions-content .s-difference { color:white; background:var(--mock-navy-2); }
.solutions-content .s-difference :is(.s-section-label,.s-label) { color:#99c5ed; }
.solutions-content .s-difference .s-section-head > p { color:#d2dfeb; }
.solutions-content .s-split { display:grid; grid-template-columns:1fr 1fr; border:1px solid rgba(255,255,255,.18); border-radius:8px; overflow:hidden; }
.solutions-content .s-split article { padding:30px; }
.solutions-content .s-split article+article { border-left:1px solid rgba(255,255,255,.18); }
.solutions-content .s-split article > b { color:#99c5ed; font-size:11px; letter-spacing:1px; }
.solutions-content .s-split h3 { margin:12px 0; }
.solutions-content .s-split p { color:#d2dfeb; }
.solutions-content .s-split ul { list-style:none; padding:0; margin:22px 0 0; }
.solutions-content .s-split li { padding:10px 0; border-top:1px solid rgba(255,255,255,.14); font-size:13px; }
.solutions-content :is(.s-process,.s-concept,.s-visual,.s-engineering) { background:var(--mock-soft); }
.solutions-content .s-steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:18px; }
.solutions-content .s-step { background:#fff; border:1px solid #dce6ef; border-radius:8px; padding:22px; }
.solutions-content .s-step > :is(span,b) { color:var(--mock-blue); font-size:12px; font-weight:800; }
.solutions-content .s-step h3 { font-size:18px; margin:20px 0 10px; }
.solutions-content .s-step p { font-size:13px; color:var(--s-muted); margin:0; }
.solutions-content .s-technical-note,.solutions-content .s-note { font-size:12px; color:var(--s-muted); line-height:1.6; margin-top:24px; padding-top:18px; border-top:1px solid var(--s-line); }
.solutions-content .s-benefits { padding:0 0 58px; }
.solutions-content .s-benefit-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.solutions-content .s-benefit { border:1px solid #e2e8ee; padding:24px; border-radius:8px; }
.solutions-content .s-benefit > span { color:var(--mock-blue); font-size:12px; font-weight:800; }
.solutions-content .s-benefit h3 { margin:18px 0 10px; font-size:19px; }
.solutions-content .s-benefit p { color:var(--s-muted); margin:0; font-size:13px; }
.solutions-content :is(.s-concept-grid,.s-how-grid,.s-blueprint-grid,.s-special,.s-engineering-grid) { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.solutions-content .s-installed { border-radius:8px; overflow:hidden; background:white; }
.solutions-content .s-installed img { height:380px; width:100%; object-fit:cover; }
.solutions-content .s-caption { display:block; font-size:12px; color:var(--s-muted); padding:14px 18px; }
.solutions-content .s-profile-card { border-radius:8px; background:#fff; overflow:hidden; border:1px solid #d8e3ec; }
.solutions-content .s-profile-head { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:20px; border-bottom:1px solid var(--s-line); }
.solutions-content .s-profile-head strong { font-size:17px; }
.solutions-content .s-profile-head span { font-size:10px; color:var(--s-muted); }
.solutions-content .s-profile-image img { width:100%; height:290px; object-fit:contain; padding:15px; }
.solutions-content .s-profile-note { font-size:12px; padding:16px 20px; color:var(--s-muted); border-top:1px solid var(--s-line); line-height:1.6; }
.solutions-content .s-scope-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:44px; }
.solutions-content .s-scope-intro { color:var(--s-muted); }
.solutions-content .s-deliverables { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.solutions-content .s-deliverable { border-top:1px solid var(--s-line); padding:20px 0; }
.solutions-content .s-deliverable > :is(span,b) { display:block; margin-bottom:10px; color:var(--mock-blue); font-size:12px; font-weight:800; }
.solutions-content .s-deliverable > strong { display:block; margin-bottom:8px; font-size:17px; line-height:1.25; }
.solutions-content .s-deliverable h3 { font-size:18px; margin:12px 0 8px; }
.solutions-content .s-deliverable p { color:var(--s-muted); font-size:13px; margin:0; }
.solutions-content .s-gallery { display:grid; grid-template-columns:1.2fr .8fr; gap:20px; }
.solutions-content .s-figure { margin:0; border:1px solid #d9e4ed; border-radius:8px; overflow:hidden; background:#fff; }
.solutions-content .s-figure.s-main { grid-row:span 2; }
.solutions-content .s-figure img { width:100%; height:200px; object-fit:cover; }
.solutions-content .s-figure.s-main img { height:430px; object-fit:contain; }
.solutions-content figcaption { font-size:12px; color:var(--s-muted); padding:12px 16px; }
.solutions-content :is(.s-blueprint,.s-featured) { color:#fff; background:var(--mock-navy); }
.solutions-content :is(.s-blueprint,.s-featured) :is(.s-label,.s-eyebrow,.s-subhead) { color:#a6ceed; }
.solutions-content :is(.s-blueprint,.s-featured) p:not(.s-label):not(.s-eyebrow) { color:#d2dfeb; }
.solutions-content :is(.s-profile-specs,.s-specs) { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 0; }
.solutions-content :is(.s-profile-specs,.s-specs) > span { border:1px solid #446582; background:rgba(71,125,170,.13); border-radius:5px; font-size:12px; padding:10px 12px; line-height:1.6; }
.solutions-content .s-profile-key { margin-top:24px; font-size:28px; font-weight:800; }
.solutions-content .s-profile-row { display:grid; grid-template-columns:.82fr 1.18fr; gap:48px; align-items:center; padding:38px 0; border-bottom:1px solid #2a4055; }
.solutions-content .s-profile-copy .s-eyebrow { font-size:11px; letter-spacing:1px; font-weight:800; margin:0 0 18px; }
.solutions-content .s-profile-copy h3 { font-size:28px; line-height:1.14; }
.solutions-content .s-profile-copy h3 span,.solutions-content .s-blueprint h2 span { color:#65aceb; }
.solutions-content .s-drawing { position:relative; min-width:0; background:linear-gradient(135deg,#124776,#0a3157); border:1px solid #507ba2; border-radius:8px; padding:22px; }
.solutions-content .s-drawing::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(168,209,245,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(168,209,245,.07) 1px,transparent 1px); background-size:28px 28px; pointer-events:none; }
.solutions-content .s-drawing > * { position:relative; }
.solutions-content .s-drawing-head { display:flex; justify-content:space-between; gap:24px; align-items:center; border-bottom:1px solid #577d9f; padding-bottom:15px; }
.solutions-content .s-drawing-key,.solutions-content .s-drawing-title:not(:has(strong)) { font-size:34px; line-height:1; font-weight:800; }
.solutions-content :is(.s-drawing-title,.s-drawing-name) strong { display:block; font-size:14px; }
.solutions-content :is(.s-drawing-title,.s-drawing-name) span { display:block; font-size:10px; letter-spacing:1px; color:#b7d6ef; margin-top:6px; }
.solutions-content .s-drawing-name { text-align:right; }
.solutions-content .s-drawing-link { display:block; border-radius:4px; }
.solutions-content .s-drawing img { width:100%; height:340px; object-fit:contain; padding:18px 0; }
.solutions-content .s-tube-row .s-drawing img { height:245px; }
.solutions-content .s-drawing-paper .s-drawing-link { background:#fff; margin-top:15px; }
.solutions-content .s-drawing-paper img { padding:16px; }
.solutions-content .s-drawing-foot { display:flex; justify-content:space-between; gap:20px; font-size:11px; color:#c5dcef; border-top:1px solid #577d9f; padding-top:14px; }
.solutions-content .s-how-image { border-radius:8px; overflow:hidden; }
.solutions-content .s-how-image img { width:100%; height:370px; object-fit:cover; }
.solutions-content :is(.s-how-copy,.s-special-copy,.s-engineering-copy) p { color:var(--s-muted); }
.solutions-content .s-points { list-style:none; margin:24px 0 0; padding:0; }
.solutions-content .s-points li { border-top:1px solid var(--s-line); padding:14px 0; font-size:13px; line-height:1.5; }
.solutions-content .s-points b { color:var(--mock-blue); margin-right:12px; }
.solutions-content .s-measure-strip,.solutions-content .s-uses { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--s-line); border-radius:8px; margin-top:32px; }
.solutions-content .s-measure,.solutions-content .s-use { padding:22px; border-right:1px solid var(--s-line); }
.solutions-content :is(.s-measure,.s-use):last-child { border-right:0; }
.solutions-content .s-big { font-size:30px; color:var(--mock-blue); font-weight:800; }
.solutions-content .s-measure span,.solutions-content .s-use span { display:block; font-size:13px; color:var(--s-muted); line-height:1.55; margin-top:7px; }
.solutions-content .s-use b { color:var(--mock-blue); font-size:18px; }
.solutions-content .s-table-wrap { overflow-x:auto; border:1px solid var(--s-line); border-radius:8px; margin-top:26px; }
.solutions-content table { width:100%; min-width:620px; border-collapse:collapse; font-size:13px; }
.solutions-content th { text-align:left; color:white; background:var(--mock-navy-2); font-size:11px; letter-spacing:.4px; }
.solutions-content th,.solutions-content td { padding:14px 18px; border-bottom:1px solid var(--s-line); line-height:1.5; }
.solutions-content tbody tr:nth-child(even) { background:var(--mock-soft); }
.solutions-content .s-catalog-head { max-width:810px; }
.solutions-content .s-catalog-head p { color:var(--s-muted); }
.solutions-content .s-special-card,.solutions-content .s-engineering-card { background:var(--mock-navy-2); color:white; padding:34px; border-radius:8px; }
.solutions-content .s-special-card .s-big { color:#86beed; font-size:48px; }
.solutions-content .s-engineering-card > b { display:block; color:#a4cbea; font-size:11px; letter-spacing:1px; margin-bottom:16px; }
.solutions-content .s-engineering-card p,.solutions-content .s-special-card p { color:#d2dfeb; }
.solutions-content .s-cta { padding:0 0 58px; }
.solutions-content .s-cta-box { display:flex; align-items:center; justify-content:space-between; gap:34px; padding:40px; background:var(--mock-navy-2); color:white; border-radius:8px; }
.solutions-content .s-cta-box h2 { font-size:30px; }
.solutions-content .s-cta-box p { color:#d2dfeb; margin:12px 0 0; }
@media (max-width:1100px) {
 .solutions-content .s-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .solutions-content .s-benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .solutions-content .s-promise-item { padding:18px 12px; gap:9px; }
 .solutions-content .s-profile-row { gap:26px; }
}
@media (max-width:860px) {
 .solutions-content section { padding:42px 0; }
 .solutions-content :is(.s-section-head,.s-intro-grid,.s-intro,.s-hero-grid,.s-concept-grid,.s-blueprint-grid,.s-how-grid,.s-scope-grid,.s-profile-row,.s-special,.s-engineering-grid) { grid-template-columns:1fr; gap:26px; }
 .solutions-content .s-hero-background::before { background:linear-gradient(90deg,rgba(9,26,40,.95),rgba(9,26,40,.8)),var(--solution-image) center/cover; }
 .solutions-content .s-promise-grid { grid-template-columns:1fr 1fr; }
 .solutions-content .s-promise-item { padding:20px; }
 .solutions-content .s-promise-item:nth-child(2) { border-right:0; }
 .solutions-content .s-card-img { height:200px; }
 .solutions-content .s-card-body { padding:20px; }
 .solutions-content .s-card h3 { font-size:21px; }
 .solutions-content .s-split article { padding:24px; }
 .solutions-content .s-drawing img { height:310px; }
 .solutions-content .s-gallery { grid-template-columns:1fr 1fr; }
 .solutions-content .s-figure.s-main { grid-row:auto; grid-column:1/-1; }
 .solutions-content .s-figure.s-main img { height:300px; }
 .solutions-content .s-cta-box { padding:30px; flex-direction:column; align-items:flex-start; }
}
@media (max-width:560px) {
 .solutions-content h1 { font-size:34px; letter-spacing:-1px; }
 .solutions-content .s-cards,.solutions-content .s-benefit-grid,.solutions-content .s-split,.solutions-content .s-steps,.solutions-content .s-deliverables,.solutions-content .s-measure-strip,.solutions-content .s-uses { grid-template-columns:1fr; }
 .solutions-content .s-promise-grid { grid-template-columns:1fr 1fr; }
 .solutions-content .s-promise-item { align-items:flex-start; padding:16px 9px; gap:8px; }
 .solutions-content .s-promise-item strong { font-size:12px; }
 .solutions-content .s-ico { width:26px; height:26px; }
 .solutions-content .s-split article+article { border-left:0; border-top:1px solid rgba(255,255,255,.18); }
 .solutions-content .s-benefits { padding-top:0; }
 .solutions-content .s-figure img { height:175px; }
 .solutions-content .s-installed img,.solutions-content .s-how-image img { height:280px; }
 .solutions-content .s-drawing { padding:16px; }
 .solutions-content .s-drawing img { height:240px; }
 .solutions-content .s-tube-row .s-drawing img { height:200px; }
 .solutions-content .s-drawing-head { gap:16px; }
 .solutions-content .s-drawing-title:not(:has(strong)),.solutions-content .s-drawing-key { font-size:26px; }
 .solutions-content .s-drawing-name strong { font-size:11px; }
 .solutions-content .s-drawing-foot { flex-direction:column; gap:7px; }
 .solutions-content .s-profile-copy h3 { font-size:25px; }
 .solutions-content .s-measure,.solutions-content .s-use { border-right:0; border-bottom:1px solid var(--s-line); }
 .solutions-content .s-cta-box h2 { font-size:27px; }
 .solutions-content .s-cta-box { padding:28px 22px; }
}
@media (prefers-reduced-motion:reduce) {
 .solutions-content .s-card,.solutions-content .s-card-img img { transition:none; transform:none!important; }
}
