/* Subtle drafting grid: local CSS only, no animation or image downloads. */
body{background-color:#fafbfb;background-image:none}.section.container,.home-products,.company{position:relative}.section.container:before,.home-products:before{content:"";position:absolute;right:24px;top:16px;width:145px;height:75px;border-top:1px solid rgba(17,43,59,.14);border-right:1px solid rgba(17,43,59,.14);pointer-events:none;z-index:-1}.projects{background-color:#f1f4f4;background-image:none}.business-tile,.product-card{background:rgba(255,255,255,.9)}.business-tile{border-top:2px solid #cbd5da}.home-case-text{background:rgba(255,255,255,.55);padding-left:18px;padding-right:18px}.product-card{padding:0 12px 18px}.product-image{margin-left:-12px;margin-right:-12px}.supply-example{border-top:1px solid var(--line);padding:13px 0 9px}.supply-example span{font-size:10px;letter-spacing:.04em;color:#985027}.supply-example p{font-size:12px!important;min-height:0!important;margin:7px 0!important;color:var(--ink)!important}.spec-panel{border-top:1px solid var(--line);font-size:12px}.spec-panel summary{padding:14px 0;cursor:pointer;display:flex;justify-content:space-between;list-style:none;font-weight:700}.spec-panel summary::-webkit-details-marker{display:none}.spec-panel[open] summary span{transform:rotate(45deg)}.spec-panel dl{margin:0}.spec-panel dl>div{padding:10px 0;border-top:1px solid #e4eaed}.spec-panel dt{font-weight:700;font-size:11px;color:#687b85}.spec-panel dd{margin:5px 0 0;font-size:12px;line-height:1.7}.spec-panel .spec-note{font-size:10px!important;line-height:1.7;min-height:0!important;background:#f0f4f5;padding:10px;margin-top:12px}.spec-panel .inline-link{font-size:11px;margin-top:7px}.feature-photo,.home-project,.case{box-shadow:0 3px 15px rgba(17,43,59,.025)}@media(max-width:575px){.section.container:before,.home-products:before{width:90px;height:45px}.product-card{padding-left:15px;padding-right:15px}.product-image{margin-left:-15px;margin-right:-15px}}

/* Shared business introduction layout */
.business-intro .business-copy{display:flex;flex-direction:column}.business-intro .business-copy>.eyebrow{margin-bottom:22px}.business-intro .service-lines{margin-top:22px}.business-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:12px}.business-actions .button{min-width:176px}.business-intro .sourcing-board{min-height:500px;display:flex;flex-direction:column;justify-content:center}.business-intro .feature-photo img{height:450px}.home-project img.rope-archive{object-fit:contain;background:#e9edef;object-position:center}@media(max-width:991px){.business-intro .sourcing-board{min-height:370px}.business-intro .feature-photo img{height:360px}}

/* Focus the HOME crop on the sling, above workers and shipping labels. */
.home-project img.sling-archive{object-fit:cover;object-position:center 12%}.business-intro .feature-photo img.rope-archive{object-fit:contain;object-position:center;background:#e9edef}
.home-project img.offshore-archive{height:460px;object-fit:contain;object-position:center;background:#112b3b}@media(max-width:575px){.home-project img.offshore-archive{height:420px}}

.marine-photo-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:290px 160px;gap:5px;background:#fff}.business-intro .marine-photo-grid img{height:100%;width:100%;object-fit:cover}.marine-photo-main{grid-column:1 / -1;object-position:center 62%}.project-support-photo{margin:0;padding:20px;background:#edf1f2;max-width:220px;align-self:center;flex:0 0 220px}.project-support-photo img{width:100%;height:190px;object-fit:contain}.project-support-photo figcaption{font-size:10px;color:var(--muted);margin-top:10px}@media(max-width:991px){.marine-photo-grid{grid-template-rows:240px 140px}.project-support-photo{max-width:none;width:100%;flex-basis:auto}}@media(max-width:575px){.marine-photo-grid{grid-template-rows:220px 120px}}

.case-photo-link{display:block;background:#edf1f2}.case-photo-link img{width:100%;height:250px;object-fit:contain}.case h2 a:hover{color:#c9511c}.case-actions{display:flex;gap:24px;flex-wrap:wrap}.other-photo-pair{display:grid;grid-template-columns:1fr 1fr;height:100%;gap:3px}.other-photo-pair img{width:100%;height:100%;object-fit:cover}.project-detail>h2{font-size:30px;margin-top:45px}.detail-experiences{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.detail-experiences article{border-top:2px solid #c5d2d8;padding:22px;background:#ffffff99}.detail-experiences h3{font-size:21px}.detail-experiences p{font-size:14px;color:var(--muted)}.detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.detail-gallery figure{background:#edf1f2}.detail-gallery img{height:390px;width:100%;object-fit:contain}.detail-gallery figcaption{padding:14px;font-size:12px}.project-detail li{font-size:14px}.case-body h2{overflow-wrap:anywhere}@media(max-width:575px){.detail-experiences,.detail-gallery{grid-template-columns:1fr}.detail-gallery img{height:340px}}

.sling-detail-crop{height:390px;overflow:hidden}.detail-gallery .sling-detail-crop img{height:auto;min-height:100%;object-fit:cover;transform:translateY(-5%)}@media(max-width:575px){.sling-detail-crop{height:260px}}

.lifting-case-block{margin-top:45px;padding:30px;border:1px solid #c9d5db;background:#ffffffb8}.lifting-case-block h2{font-size:30px}.lifting-case-block>.eyebrow{margin-bottom:14px}.offshore-case-gallery{grid-template-columns:1.4fr 1fr}.vessel-case{border-top:3px solid #17394a}.vessel-items{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.vessel-items span{padding:12px 18px;background:#eaf0f2;font-size:14px}@media(max-width:575px){.lifting-case-block{padding:20px}.offshore-case-gallery{grid-template-columns:1fr}}

/* HOME gateway to the complete Projects overview. */
.project-gateway-image{display:block;position:relative;background:#112b3b;overflow:hidden}.project-gateway-image img{display:block;width:100%;height:510px;object-fit:cover;object-position:center 42%;transition:filter .2s}.project-gateway-image:hover img{filter:brightness(.94)}.gateway-image-label{position:absolute;bottom:0;left:0;right:0;padding:45px 28px 22px;background:linear-gradient(transparent,rgba(10,32,47,.8));color:#fff;font-size:11px;letter-spacing:.13em}.project-gateway-copy{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-top:28px}.project-gateway-copy p{margin:0;font-size:16px;color:var(--muted)}.project-gateway-copy .inline-link{flex-shrink:0;font-size:14px}@media(max-width:575px){.project-gateway-image img{height:370px;object-position:center 38%}.project-gateway-copy{display:block}.project-gateway-copy p{font-size:14px}.project-gateway-copy .inline-link{margin-top:20px}.gateway-image-label{font-size:9px;padding-left:18px;letter-spacing:.06em}}

/* One navigation grammar for Projects and Products. */
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.catalog-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);scroll-margin-top:110px;min-width:0}.catalog-card[hidden]{display:none}.catalog-image{display:block;height:260px;background:#eaf0f2}.catalog-image>img{width:100%;height:100%;object-fit:contain}.catalog-image .other-photo-pair img{object-fit:contain}.catalog-body{padding:28px;display:flex;flex-direction:column;flex:1}.catalog-body .eyebrow{margin-bottom:14px}.catalog-body h2{font-size:26px;margin-bottom:15px}.catalog-body h2 a:hover{color:var(--orange)}.catalog-body>p:not(.eyebrow){font-size:14px;color:var(--muted)}.catalog-actions{display:flex;flex-wrap:wrap;gap:24px;margin-top:auto;padding-top:12px}.catalog-grid+.support-note{margin-top:40px}@media(max-width:575px){.catalog-grid{grid-template-columns:1fr}.catalog-image{height:240px}.catalog-body{padding:23px}.catalog-body h2{font-size:23px}}

/* Constrain paired category images to their actual clickable photo frame. */
.catalog-image{flex:0 0 260px;overflow:hidden;min-height:0}.catalog-image .other-photo-pair{height:100%;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden}.catalog-image .other-photo-pair img{min-height:0;max-height:100%;width:100%;height:100%;object-fit:contain}.catalog-body{position:relative;background:#fff}
/* Solid architectural tones; no grids or repeating decoration. */
body{background-color:#eef2f4;background-image:none}.projects{background-color:#e3ebef;background-image:none}.catalog-card,.case-detail-card,.case-detail-photo{box-shadow:0 4px 16px rgba(17,43,59,.035)}.home-business,.project-detail,.case-detail-section{border-color:#cbd6de}.case-detail-documents{background:#e0e9ee}.section-top{border-color:#bacbd5}.reference-record{margin:20px 0;padding-top:16px;border-top:1px solid #c3d0d8}.reference-record h4{font-size:15px;margin:0 0 10px}.reference-record p{font-size:13px}@media(max-width:575px){.catalog-image{flex-basis:240px}}

/* User-supplied brand artwork, original aspect ratio preserved. */
.header .brand{display:block;flex-shrink:0;line-height:0}.brand-logo{display:block;width:218px;height:auto;max-width:100%;object-fit:contain}.footer-top .brand{display:block;background:#fff;padding:12px 16px;line-height:0;border-radius:2px;flex-shrink:0}.footer-top .brand-logo{width:205px}@media(max-width:1100px) and (min-width:992px){.header .brand-logo{width:190px}.header nav{gap:18px}.header .nav-rfq{padding-left:18px}}@media(max-width:575px){.header .brand-logo{width:174px}.footer-top .brand-logo{width:190px}}

/* Background depth: quiet sectional tones and two isolated CI-inspired sweeps. */
body{background:#f5f7f8}
main{overflow-x:clip}
main>.section.container,main>.home-products{isolation:isolate}
main>.section.container::after,main>.home-products::after{content:"";position:absolute;top:0;bottom:0;left:calc((100% - 100vw)/2);right:calc((100% - 100vw)/2);background:#f5f7f8;z-index:-2;pointer-events:none}
main>.section.container:nth-of-type(even)::after{background:#eef3f5}
main>.home-products::after{background:#fafbfc}
.projects{background:#edf2f5;background-image:none}
.case-detail-section{position:relative;isolation:isolate}
.case-detail-section:nth-of-type(even)::after{content:"";position:absolute;inset:0 calc((100% - 100vw)/2);background:#edf2f5;z-index:-1;pointer-events:none}
.case-detail-documents{background:#e7eef2}
.page-banner,.cta{position:relative;isolation:isolate;overflow:hidden}
.page-banner::after,.cta::after{content:"";position:absolute;width:760px;height:550px;right:-210px;top:-190px;background:url("ci-sweep.svg") center/contain no-repeat;opacity:.17;filter:brightness(0) invert(1);pointer-events:none;z-index:-1}
.cta::after{width:640px;height:470px;right:-130px;top:-240px;transform:rotate(-12deg);opacity:.10}
/* HOME has no plain banner: a single cropped sweep accompanies the business introduction. */
.home-business::after{background:#eef3f5 url("ci-sweep.svg") right -170px top -160px/650px 470px no-repeat!important;background-blend-mode:soft-light}
@media(max-width:575px){.page-banner::after{right:-410px;opacity:.12}.cta::after{right:-350px;opacity:.08}.home-business::after{background-size:470px 340px!important;background-position:right -280px top -130px!important}}
.page-banner::after{opacity:.08}.cta::after{opacity:.05}@media(max-width:575px){.page-banner::after{opacity:.06}.cta::after{opacity:.04}}

/* Final visual finishing: existing structure, palette and sectional backgrounds retained. */
:root{--muted:#596d79}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3{letter-spacing:-.04em}h1{font-weight:700}h2{font-weight:700}
.eyebrow{font-size:10px;letter-spacing:.18em;line-height:1.5;font-weight:700}
.page-banner h1{line-height:1.22;letter-spacing:-.045em;margin-bottom:22px}
.page-banner p:last-child{line-height:1.85}
.heading-row{align-items:flex-end}.heading-row .eyebrow{margin-bottom:16px}
.heading-row h2{line-height:1.25}.heading-row>.muted{line-height:1.85}
.button{letter-spacing:-.01em}.inline-link{padding-bottom:6px}
.catalog-body{padding:30px 30px 27px}.catalog-body h2{font-size:25px;line-height:1.3}
.catalog-body>p:not(.eyebrow){line-height:1.85}.catalog-actions{padding-top:21px;gap:26px}
.catalog-card{box-shadow:0 3px 14px rgba(17,43,59,.025);border-color:#d1dce2}
.catalog-image{background:#e9eef1}.catalog-image>img{padding:12px}
.catalog-card:hover{border-color:#aebfc9}.catalog-actions .inline-link{font-size:12px}
.home-business .business-tile{padding:34px}.business-tile h3{line-height:1.25;margin:20px 0 17px}
.business-tile p{line-height:1.85}.home-product h3{margin-top:22px;margin-bottom:9px}
.project-gateway-copy{padding-top:30px}.project-gateway-copy p{line-height:1.9}
.case-detail-back{padding-top:34px}.case-detail-section{padding:52px 0}
.case-detail-section>.eyebrow{margin-bottom:15px}.case-detail-section>h2{font-size:29px;line-height:1.35;margin-bottom:28px}
.case-detail-lead{font-size:18px;line-height:1.95;max-width:850px}
.case-detail-card{padding:29px;border-top-width:2px;box-shadow:none}
.case-detail-card h3{font-size:20px;letter-spacing:-.035em;margin-bottom:16px}
.case-detail-card p{line-height:1.95}
/* A featured pair leads the photograph record, followed by a quieter supporting collection. */
[data-detail-section="photos"] .case-detail-gallery{grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 24px;align-items:start}
[data-detail-section="photos"] .case-detail-photo{grid-column:span 2;background:transparent;border:0;box-shadow:none}
[data-detail-section="photos"] .case-detail-photo:first-child{grid-column:span 4}
[data-detail-section="photos"] .case-detail-photo:nth-child(2){grid-column:span 2}
[data-detail-section="photos"] .case-detail-photo:first-child .case-detail-image,
[data-detail-section="photos"] .case-detail-photo:nth-child(2) .case-detail-image{aspect-ratio:auto;height:430px}
[data-detail-section="photos"] .case-detail-image{background:#e6edf1;border:1px solid #d5dfe5;aspect-ratio:4/3}
[data-detail-section="photos"] figcaption{min-height:0;padding:15px 0 0;border:0;font-size:12px;line-height:1.8;color:#536977}
.case-detail-photo figcaption::before{content:attr(data-record-label);display:block;font:700 9px/1.5 Arial,sans-serif;letter-spacing:.15em;color:#91502c;margin-bottom:7px}
/* Actual document excerpts are exhibited as readable paper records, without oversized photographic frames. */
.case-detail-documents{padding:30px;background:#e7eef2;border-left-width:2px}
.case-detail-documents h3{font-size:27px;line-height:1.35;margin-bottom:22px}
.case-detail-documents>p{max-width:940px;line-height:1.9}
[data-detail-section="documents"] .case-detail-gallery{gap:28px 24px;margin-top:30px;align-items:start}
[data-detail-section="documents"] .case-detail-photo{background:transparent;border:0;box-shadow:none}
[data-detail-section="documents"] .case-detail-image{aspect-ratio:auto;height:280px;background:#fff;border:1px solid #cad7df;padding:20px;box-shadow:0 6px 18px rgba(17,43,59,.045)}
[data-detail-section="documents"] figcaption{border:0;min-height:0;padding:16px 0 0;line-height:1.8;font-size:12px;color:#536977}
[data-detail-section="documents"] .case-detail-image a:focus-visible{outline-offset:8px}
.case-detail-section>p.muted{font-size:12px;line-height:1.9;margin-top:24px}
.case-detail-cta{padding:62px 0}.case-detail-cta h2{line-height:1.35}
@media(max-width:991px){[data-detail-section="photos"] .case-detail-photo:first-child .case-detail-image,[data-detail-section="photos"] .case-detail-photo:nth-child(2) .case-detail-image{height:340px}[data-detail-section="photos"] .case-detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}[data-detail-section="photos"] .case-detail-photo,[data-detail-section="photos"] .case-detail-photo:first-child,[data-detail-section="photos"] .case-detail-photo:nth-child(2){grid-column:span 1}[data-detail-section="documents"] .case-detail-image{height:240px;padding:16px}}
@media(max-width:575px){.heading-row{align-items:flex-start}.case-detail-section{padding:36px 0}.case-detail-section>h2{font-size:25px;margin-bottom:23px}.case-detail-lead{font-size:16px}.case-detail-card{padding:23px}.case-detail-card h3{font-size:19px}.catalog-body{padding:24px}.home-business .business-tile{padding:26px}[data-detail-section="photos"] .case-detail-gallery{grid-template-columns:1fr;gap:25px}[data-detail-section="photos"] .case-detail-photo:first-child .case-detail-image{height:330px}[data-detail-section="photos"] .case-detail-photo:nth-child(2) .case-detail-image{height:260px}.case-detail-documents{padding:24px 20px}.case-detail-documents h3{font-size:24px}[data-detail-section="documents"] .case-detail-gallery{gap:25px}[data-detail-section="documents"] .case-detail-image{height:240px}.case-detail-cta{padding:44px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-gateway-image img,.product-image img{transition:none}}
.rfq form{max-width:850px}.rfq label{font-size:13px;letter-spacing:-.01em}.rfq input,.rfq textarea,.rfq select{border-radius:2px}.rfq input:focus,.rfq textarea:focus,.rfq select:focus{border-color:#b3c9d5}.rfq [aria-invalid=true]{border-color:#ffb099}.rfq-note a{color:#fff;border-bottom:1px solid #ef692d}.rfq-note strong{display:block;margin-bottom:6px}.rfq-note #rfq-availability{display:block;margin-top:16px;line-height:1.85}.rfq #file-list{padding:0;list-style:none;margin:12px 0}.rfq #file-list li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;border:1px solid #ffffff25;background:#ffffff08;margin-top:8px}.rfq #file-list span{overflow-wrap:anywhere;min-width:0}.rfq #file-list button{background:none;border:1px solid #738e9d;color:#e2ebf0;padding:3px 10px;font-size:11px;flex-shrink:0}.rfq-submit-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:25px}.rfq-submit-row .attachment-hint{margin:0}.rfq #form-status,.rfq #rfq-errors{padding:20px 22px;margin-top:22px;border:1px solid #7893a1;line-height:1.85;font-size:14px;overflow-wrap:anywhere}.rfq #form-status[data-state=success]{border-color:#acc8d4;background:#ffffff0c}.rfq #form-status[data-state=error],.rfq #rfq-errors{border-color:#ffb099;background:#ffffff08}.rfq #form-status[data-state=unavailable]{border-color:#d49c77}.rfq #rfq-errors ul{margin-bottom:0;padding-left:20px;font-size:13px}.rfq [hidden]{display:none!important}.rfq button:disabled{opacity:.7;cursor:wait}.rfq input:disabled,.rfq textarea:disabled,.rfq select:disabled{opacity:.75}.rfq #file-error:empty{display:none}
