/* Content-led spacing. Shared only by public pages. */
.photo-link{display:block;position:relative;min-width:0;height:100%;cursor:zoom-in}
.photo-link::after{content:'↗';position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;background:#0b151c;color:#c3edfa;font-size:20px;pointer-events:none}
.photo-link img{width:100%;height:100%;object-fit:cover}
.production-proof__photo > figcaption,.tubular__visual figcaption,.media__cap{pointer-events:none}
.production-proof__gallery .photo-link{height:172px}
.page-detail .prod__media{grid-template-rows:350px auto}
.page-detail .facility-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;height:auto;overflow:visible;scroll-snap-type:none}
.page-detail .facility-gallery figure{min-width:0;height:auto;aspect-ratio:auto;overflow:visible}
.page-detail .facility-gallery .photo-link{height:auto;aspect-ratio:4/3}
.page-detail .facility-gallery figcaption{display:block;position:static;padding:8px 0 0;background:none;color:var(--tx-2);font-size:14px;line-height:1.4}
.engineering-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-self:start}
.engineering-examples figure{margin:0;min-width:0}
.engineering-examples .photo-link{height:300px;background:#12212a}
.engineering-examples figcaption{font-size:15px;color:var(--tx-2);line-height:1.5;margin-top:12px}
.engineering-examples figcaption b{display:block;color:var(--tx);margin-bottom:4px}
.production-studies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.production-studies figure{margin:0}
.production-studies .photo-link{height:280px}
.production-studies h3{font-size:23px;margin:20px 0 12px}
.production-studies p{font-size:16px;color:var(--tx-2);line-height:1.6}
.production-studies figcaption{margin-top:12px;font-size:14px;color:var(--tx-2)}
.photo-opened{overflow:hidden}
.photo-viewer{width:min(1200px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:20px;border:0;color:#e8f3f7;background:#0b151c;overflow:auto}
.photo-viewer::backdrop{background:rgba(2,7,11,.94)}
.photo-viewer figure{margin:14px 0}
.photo-viewer figure img{width:100%;height:min(68dvh,780px);object-fit:contain}
.photo-viewer figcaption{max-width:85ch;margin:14px auto 0;font-size:16px;line-height:1.5}
.photo-viewer button{border:0;background:#173340;color:#d1f4ff;min-width:48px;min-height:48px;padding:8px 14px;cursor:pointer}
.photo-viewer__close{display:flex;align-items:center;gap:20px;margin-left:auto}
.photo-viewer__close span{font-size:26px}
.photo-viewer__nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.photo-viewer__original{margin-left:auto;color:var(--acc-2);padding:12px 0}
@media(max-width:720px){
 .production-proof__gallery .photo-link{height:136px}
 .engineering-examples,.production-studies{grid-template-columns:1fr;gap:28px}
 .engineering-examples .photo-link,.production-studies .photo-link{height:300px}
 .photo-viewer{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:12px}
 .photo-viewer figure img{height:55dvh}
 .photo-viewer figcaption{font-size:16px}
}
:root{--tx-3:#99acb6;color-scheme:dark}
/* Keep native option pickers while avoiding WebKit's light closed control. */
.field select,.calc-field select,.field select:focus,.calc-field select:focus{
 appearance:none;-webkit-appearance:none;color-scheme:dark;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2383d9f2' stroke-width='1.6'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px;
 padding-right:42px;
}
.calc-summary{margin-top:20px}
.calc-summary summary{font-size:16px;cursor:pointer;color:var(--acc-2);padding:10px 0}
.calc-summary textarea{display:block;width:100%;font-size:16px;line-height:1.5;padding:14px;background:#0c1b23;border:1px solid var(--line-2);resize:vertical}
.calc__note{font-size:15px;line-height:1.5;margin:16px 0;color:var(--tx-2)}
.calc__hint{font-size:14px;line-height:1.5;letter-spacing:normal;text-transform:none}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid #83d9f2;outline-offset:5px}
.nav__drop{background:radial-gradient(circle at 15% 0,rgba(59,188,230,.09),transparent 44%),#0a141a}
.nav__item:not(.is-open) .nav__drop{opacity:0;visibility:hidden;pointer-events:none}
.nav__item.is-open .nav__drop{opacity:1;visibility:visible;pointer-events:auto}
body.menu-open{overflow:hidden}
main > .sect{height:auto;min-height:0;padding-block:clamp(40px,5vw,64px)}
.sect__head{margin-bottom:28px}
.page-detail main > .sect{padding-block:40px}
.rental-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px}
.rental-card,.rental-card:last-child{display:block;grid-column:auto;max-width:none}
.rental-card__visual{aspect-ratio:3/2}
.rental-card__body{padding:18px 0 0}
.rental-card h3{font-size:22px;line-height:1.2;margin:8px 0 12px}
.rental-card p,.page-detail .rental-card p{display:block;font-size:16px;line-height:1.55;overflow:visible;-webkit-line-clamp:unset}
.trade{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.trade .trade__cell{display:flex;flex-direction:column;grid-column:auto;min-height:360px;padding:28px 24px;border:0}
.trade .trade__ic{margin:0 0 24px;padding:0}
.trade .trade__cell h3{font-size:22px;line-height:1.25;margin:0 0 16px;min-height:2.5em}
.trade .trade__cell p{font-size:16px;line-height:1.6;color:#d0dbe0}
.trade .trade__meta,.trade .trade__link{margin-top:auto;padding-top:24px}
.trade .trade__cell::after{background:linear-gradient(180deg,rgba(5,12,17,.62),rgba(5,12,17,.9))}
.trade .trade__cell:hover{transform:none;background-color:#12222c}
.step p,.advantage p,.feat p{font-size:16px;line-height:1.6}
#tubular::before,#engineering::before,#advantages::before,.request__backdrop{filter:blur(2px) saturate(.45);opacity:.1;mask-image:radial-gradient(ellipse at 68% 45%,#000 5%,transparent 68%);-webkit-mask-image:radial-gradient(ellipse at 68% 45%,#000 5%,transparent 68%)}
.tabs{gap:24px;flex-wrap:wrap;overflow:visible}
.tab{white-space:normal;text-align:left;min-height:44px}
.tabpane[hidden]{display:none!important}
.industry-hero,.industry-section{padding-block:54px;min-height:0}
.industry-copy__text p,.equipment-fit p,.industry-list span{font-size:16px;line-height:1.6;color:var(--tx-2)}
.industry-hero__media{box-shadow:none;min-height:0;aspect-ratio:3/2}
.industry-hero__media img{height:100%;min-height:0;object-fit:contain}
.industry-hero__grid{gap:44px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.industry-hero h1{font-size:clamp(2.3rem,3.8vw,4rem);line-height:1.06}
.industry-hero__actions .btn{white-space:normal;text-align:center}
.equipment-fit{grid-template-columns:repeat(2,minmax(0,1fr))}
.equipment-fit article{min-height:0;display:flex;flex-direction:column}
.equipment-fit .mono{margin-bottom:22px}
.equipment-fit__link{display:flex;gap:14px;align-items:center;margin-top:auto;padding-top:24px;color:var(--acc-2);font-size:16px}
.request-context{color:var(--acc-2);font-size:16px;margin-bottom:16px}
#equipment{scroll-margin-top:96px}
@media(max-width:1180px){.trade{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){
 .hdr,.hdr.is-stuck{background:#091218;backdrop-filter:none;-webkit-backdrop-filter:none}
 #nav{background:#0b151c;opacity:1;max-height:calc(100dvh - var(--nav-top,70px));overflow:auto;overscroll-behavior:contain;box-shadow:0 25px 40px rgba(0,0,0,.45);padding:12px 24px max(24px,env(safe-area-inset-bottom))}
 #nav.is-open{height:calc(100dvh - var(--nav-top,70px))}
 .burger.is-open{position:relative}
 .burger.is-open span{position:absolute;top:50%;left:calc(50% - 11px);width:22px;margin:0}
 .burger.is-open span:nth-child(1){transform:rotate(45deg)}
 .burger.is-open span:nth-child(2){opacity:0}
 .burger.is-open span:nth-child(3){transform:rotate(-45deg)}
 .nav__drop,.industry-page .nav__drop{background:transparent;overflow:visible;max-height:none;min-width:0;border-left:1px solid rgba(59,188,230,.3)}
 .nav__item:not(.is-open) .nav__drop{display:none}
 .nav__item.is-open .nav__drop{display:grid}
 .nav .nav__toggle,.nav > a:not(.nav__phone){font-family:var(--font-display);font-size:18px;font-weight:650;line-height:1.2;letter-spacing:-.012em;min-height:48px}
 .nav .nav__drop a{min-height:54px}
 .nav__drop a b{font-family:var(--font-display);font-size:16px;font-weight:650;line-height:1.25;letter-spacing:-.01em}
 .nav__drop a span{font-family:var(--font);font-size:14px;font-weight:400;line-height:1.35;letter-spacing:.005em;color:#a9bac3}
 .nav__phone{font-family:var(--font-display);font-size:19px;line-height:1.2;letter-spacing:-.01em}
}
@media(max-width:720px){
 :root{--fs-xs:.875rem;--fs-sm:1rem;--fs-md:1rem;--fs-3xs:.875rem}
 .fab{display:none}
 main > .sect,.page-detail main > .sect{padding-block:40px}
 .wrap{padding-inline:20px}
 .sect__head{gap:18px;margin-bottom:26px}
 main p,.page-home .service-entry p,.production-proof__foot p{font-size:16px;line-height:1.55}
 .sect__desc{font-size:16px;line-height:1.6}
 .page-home .hero__lead{line-height:1.5}
 .production-proof__gallery figcaption,.production-proof__photo figcaption{font-size:14px;line-height:1.45;color:#d0dbe0}
 .rental-grid{grid-template-columns:1fr;gap:30px}
 .rental-card,.rental-card:last-child{display:grid;grid-template-columns:minmax(110px,35%) minmax(0,1fr);gap:16px;align-items:start}
 .rental-card__visual{aspect-ratio:1}
 .rental-card__body{padding:0}
 .rental-card h3{font-size:20px;line-height:1.25;margin-top:0}
 .trade{grid-template-columns:1fr;gap:20px}
 .trade .trade__cell{min-height:0;padding:28px 24px}
 .trade .trade__cell h3{min-height:0}
 .trade .trade__ic{margin-bottom:20px}
 .trade .trade__meta{font-size:12px}
 .tabs{display:flex;gap:0 20px;border-bottom:1px solid var(--line);margin-bottom:24px}
 .tab{font-size:16px;padding:14px 0;flex:1 1 120px}
 .industry-section{padding-block:40px}
 .industry-hero__grid{grid-template-columns:1fr;gap:26px}
 .industry-hero h1{font-size:clamp(2rem,8.8vw,2.6rem)}
 .equipment-fit{grid-template-columns:1fr}
 .industry-list li{padding:24px 20px}
 .industry-breadcrumbs{font-size:12px;line-height:1.6;flex-wrap:wrap}
 .industry-hero__media figcaption{font-size:12px}
 .industry-hero h1{line-height:1.06}
 .field input,.field select,.field textarea,.calc-field input,.calc-field select{font-size:16px;min-height:48px}
 .calc-field > span{font-size:14px;line-height:1.45}
 .calc__note,.form__note,.form .check{font-size:14px;line-height:1.5}
 .ftr__col a,.page-home .ftr__col:not(.ftr__col--contacts) a{font-size:14px;line-height:1.5}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
