/* Three sector concepts. The main 3D demo remains the visual foundation. */
.sector-page { --sector-warm: rgba(183, 21, 18, .18); }
.sector-page--engenharia { --sector-warm: rgba(195, 54, 20, .13); }
.sector-page--industria { --sector-warm: rgba(138, 17, 13, .2); }
.sector-page .print-story { height: 405vh; }
.sector-page .story-glow { background: radial-gradient(ellipse at 72% 49%, var(--sector-warm), transparent 45%), radial-gradient(ellipse at 48% 78%, rgba(255,215,0,.052), transparent 50%), #050505; }
.sector-page .story-content { min-height: 520px; }
.sector-page .story-copy h1 { font-size: clamp(42px,4.25vw,63px); }
.sector-page .story-copy h2 { font-size: clamp(40px,4.7vw,68px); }
.sector-page .story-copy p { max-width: 490px; }
.sector-page .printer-scene { box-shadow: 0 35px 85px rgba(0,0,0,.55), 0 0 60px rgba(230,0,0,.08); }
.sector-fallback-object { position: absolute; z-index: 3; width: 35%; bottom: 21%; left: 46%; transform: translateX(-50%) perspective(600px) rotateY(-12deg); clip-path: inset(100% 0 0); filter: drop-shadow(3px 7px 7px rgba(10,10,10,.4)); pointer-events: none; }
.sector-fallback-object svg { width: 100%; height: auto; display: block; }
.printer-image-wrap.is-3d .sector-fallback-object { display: none; }
.sector-google-mark { flex: none; display: grid; place-items: center; width: 63px; height: 63px; font-size: 46px; font-weight: 800; line-height: 1; font-family: Arial, sans-serif; color: transparent; background: conic-gradient(#4285f4 0 25%,#34a853 25% 45%,#fbbc05 45% 60%,#ea4335 60% 85%,#4285f4 85%); background-clip: text; -webkit-background-clip: text; }

.sector-section-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 19px; border-bottom: 1px solid rgba(255,255,255,.2); }
.sector-section-top .section-label { color: var(--gold); }
.sector-section-code { color: #858585; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-align: right; }
.sector-split-heading { display: grid; grid-template-columns: minmax(0,1.28fr) minmax(260px,.72fr); align-items: end; gap: 7%; padding: 43px 0 44px; }
.sector-split-heading h2 { margin: 0; font-size: clamp(39px,4.5vw,66px); line-height: 1.08; letter-spacing: -.055em; }
.sector-split-heading h2 em, .sector-outcome-head h2 em { color: var(--gold); font-style: normal; }
.sector-split-heading p { max-width: 430px; margin: 0 0 4px; border-left: 2px solid var(--red); padding-left: 22px; color: #b5b5b5; font-size: 14px; line-height: 1.7; }

.sector-outcome { position: relative; isolation: isolate; overflow: hidden; padding: 124px 0 117px; border-top: 1px solid rgba(255,255,255,.1); background: radial-gradient(ellipse at 63% 20%, rgba(154,0,0,.23), transparent 49%), radial-gradient(ellipse at 10% 90%, rgba(255,215,0,.058), transparent 43%), #090909; }
.sector-outcome::before { content: ''; position: absolute; z-index: -1; inset: 0; opacity: .28; background: repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),rgba(255,255,255,.08) calc(25% - 1px) 25%); }
.sector-outcome-head { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(260px,.8fr); align-items: end; gap: 6%; padding: 60px 0 66px; }
.sector-outcome-head h2 { max-width: 800px; margin: 0; font-size: clamp(56px,7vw,102px); line-height: .99; letter-spacing: -.07em; }
.sector-outcome-head p { max-width: 390px; margin: 0 0 7px; color: #cacaca; font-size: clamp(16px,1.45vw,19px); line-height: 1.6; }
.sector-outcome-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid rgba(255,215,0,.38); border-bottom: 1px solid rgba(255,255,255,.18); }
.sector-outcome-card { min-height: 228px; padding: 31px 31px 29px; border-right: 1px solid rgba(255,255,255,.16); background: linear-gradient(125deg,rgba(255,255,255,.035),transparent 58%); }
.sector-outcome-card:first-child { padding-left: 0; }
.sector-outcome-card:last-child { border-right: 0; }
.sector-outcome-card>span { color: var(--gold); font-size: 12px; font-weight: 800; letter-spacing: .15em; }
.sector-outcome-card h3 { margin: 33px 0 11px; font-size: clamp(20px,1.85vw,27px); letter-spacing: -.035em; }
.sector-outcome-card p { max-width: 315px; margin: 0; color: #aaa; font-size: 13px; line-height: 1.62; }
.sector-inline-link { display: inline-flex; align-items: center; gap: 35px; margin-top: 33px; padding-bottom: 9px; border-bottom: 1px solid rgba(255,215,0,.6); color: var(--gold); font-size: 13px; font-weight: 800; }
.sector-inline-link span { font-size: 18px; }
.sector-inline-link:hover { color: #fff; }

.sector-applications { background: #0d0d0d; }
.sector-use-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.sector-use-card { position: relative; display: flex; flex-direction: column; min-height: 298px; padding: 28px 33px 34px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 17px; background: radial-gradient(circle at 97% 2%,rgba(139,0,0,.18),transparent 43%), linear-gradient(135deg,#191919,#111); transition: transform .3s var(--ease),border-color .3s,box-shadow .3s; }
.sector-use-card::before { content: ''; position: absolute; width: 210px; height: 210px; right: -97px; bottom: -102px; border: 1px solid rgba(255,215,0,.09); border-radius: 50%; box-shadow: 0 0 0 35px rgba(255,215,0,.015),0 0 0 69px rgba(255,215,0,.008); pointer-events: none; }
.sector-use-card:hover { transform: translateY(-5px); border-color: rgba(255,215,0,.47); box-shadow: 0 25px 48px rgba(0,0,0,.24); }
.sector-use-card>span { width: fit-content; padding: 7px 10px; border: 1px solid rgba(255,215,0,.34); border-radius: 999px; color: var(--gold); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.sector-use-card h3 { position: relative; max-width: 440px; margin: auto 0 13px; font-size: clamp(26px,2.4vw,37px); line-height: 1.1; letter-spacing: -.045em; }
.sector-use-card p { position: relative; max-width: 430px; margin: 0; color: #acacac; font-size: 14px; line-height: 1.62; }

.sector-technical { position: relative; isolation: isolate; background: radial-gradient(ellipse at 6% 25%,rgba(165,11,11,.13),transparent 40%),#080808; }
.sector-technical::before { content: 'LULEAN / 3D'; position: absolute; z-index: -1; right: 3%; top: 90px; color: rgba(255,255,255,.018); font-size: clamp(80px,12vw,230px); font-weight: 900; letter-spacing: -.08em; white-space: nowrap; pointer-events: none; }
.sector-technical-list { border-top: 1px solid rgba(255,215,0,.36); }
.sector-technical-row { display: grid; grid-template-columns: 80px minmax(180px,.7fr) minmax(280px,1fr); align-items: start; gap: 24px; padding: 31px 0 35px; border-bottom: 1px solid rgba(255,255,255,.16); }
.sector-technical-row>span { padding-top: 6px; color: var(--gold); font-size: 12px; font-weight: 900; }
.sector-technical-row h3 { margin: 0; font-size: clamp(22px,2.05vw,29px); letter-spacing: -.035em; }
.sector-technical-row p { max-width: 610px; margin: 0; color: #a9a9a9; font-size: 14px; line-height: 1.7; }

.sector-process { background: linear-gradient(145deg,#171717,#0d0d0d); border-block: 1px solid rgba(255,255,255,.08); }
.sector-process-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid rgba(255,215,0,.34); border-bottom: 1px solid rgba(255,255,255,.15); }
.sector-process-grid article { min-height: 245px; padding: 30px 27px 28px; border-right: 1px solid rgba(255,255,255,.13); }
.sector-process-grid article:first-child { padding-left: 0; }
.sector-process-grid article:last-child { border-right: 0; }
.sector-process-grid span { color: var(--gold); font-size: 12px; font-weight: 800; }
.sector-process-grid h3 { margin: 58px 0 11px; max-width: 230px; font-size: 20px; line-height: 1.22; letter-spacing: -.03em; }
.sector-process-grid p { max-width: 235px; margin: 0; color: #aaa; font-size: 12px; line-height: 1.6; }

.sector-decision { background: radial-gradient(circle at 95% 85%,rgba(161,4,4,.19),transparent 37%),#080808; }
.sector-choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.sector-choice { position: relative; min-height: 295px; padding: 29px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; background: linear-gradient(150deg,#1b1b1b,#111); }
.sector-choice:first-child { border-color: rgba(255,215,0,.48); background: radial-gradient(circle at 100% 0,rgba(255,215,0,.09),transparent 45%),linear-gradient(145deg,#231c17,#121212); }
.sector-choice:first-child::after { content: ''; position: absolute; inset: auto 0 0; height: 3px; background: linear-gradient(90deg,var(--red),var(--gold)); }
.sector-choice>span { color: var(--gold); font-size: 10px; font-weight: 900; letter-spacing: .16em; }
.sector-choice h3 { margin: 81px 0 13px; font-size: clamp(25px,2.35vw,33px); letter-spacing: -.04em; }
.sector-choice p { max-width: 335px; margin: 0; color: #b4b4b4; font-size: 13px; line-height: 1.66; }
.sector-decision-note { display: grid; grid-template-columns: minmax(120px,.24fr) minmax(0,1fr) auto; align-items: center; gap: 27px; margin-top: 19px; padding: 23px 24px; border: 1px solid rgba(255,215,0,.26); border-radius: 16px; background: linear-gradient(110deg,rgba(126,4,4,.16),rgba(255,215,0,.04)); }
.sector-decision-note>span { color: var(--gold); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.sector-decision-note p { margin: 0; color: #aaa; font-size: 12px; line-height: 1.6; }
.sector-decision-note p strong { color: #fff; }
.sector-decision-note .btn { white-space: nowrap; }

.sector-equipment { background: #141414; }
.sector-equipment .equipment-card { background: #1b1b1b; }
.sector-equipment .equipment-photo { background: #e8e8e8; }
.sector-equipment .equipment-note { margin-top: 20px; }
.sector-footer-links { display: flex; gap: 10px; padding-bottom: 28px; }
.sector-footer-links a { display: inline-flex; justify-content: space-between; gap: 35px; flex: 1; padding: 17px 20px; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; color: #c9c9c9; font-size: 12px; font-weight: 800; transition: border-color .25s,color .25s; }
.sector-footer-links a:hover, .sector-footer-links a[aria-current] { border-color: rgba(255,215,0,.44); color: var(--gold); }
.sector-footer-links span { color: var(--gold); }

@media (max-width: 1150px) {
  .sector-page .story-copy h1 { font-size: clamp(36px,4.15vw,54px); }
  .sector-page .story-copy h2 { font-size: clamp(37px,4.6vw,57px); }
  .sector-decision-note { grid-template-columns: minmax(100px,.22fr) 1fr; }
  .sector-decision-note .btn { grid-column: 2; justify-self: start; }
}
@media (max-width: 850px) {
  .sector-page .story-content { min-height: 440px; }
  .sector-outcome, .sector-page .section { padding-block: 88px; }
  .sector-outcome-head h2 { font-size: clamp(52px,7.6vw,77px); }
  .sector-outcome-card { padding-inline: 20px; }
  .sector-technical-row { grid-template-columns: 47px minmax(150px,.78fr) minmax(200px,1fr); gap: 15px; }
  .sector-process-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .sector-process-grid article { min-height: 215px; border-bottom: 1px solid rgba(255,255,255,.13); }
  .sector-process-grid article:nth-child(2) { border-right: 0; }
  .sector-process-grid article:nth-child(3), .sector-process-grid article:nth-child(4) { border-bottom: 0; }
  .sector-process-grid article:nth-child(3) { padding-left: 0; }
  .sector-process-grid h3 { margin-top: 42px; }
  .sector-choice { min-height: 290px; padding: 22px; }
}
@media (max-width: 650px) {
  .sector-page .print-story { height: 390svh; }
  .sector-page .story-content { min-height: min(308px,43svh); }
  .sector-page .story-copy h1 { font-size: clamp(29px,8vw,37px); }
  .sector-page .story-copy h2 { font-size: clamp(29px,8.5vw,39px); }
  .sector-page .story-copy p { font-size: 12px; }
  .sector-page .story-eyebrow { font-size: 7px; }
  .sector-outcome, .sector-page .section { padding-block: 78px; }
  .sector-section-top { align-items: start; padding-bottom: 14px; }
  .sector-section-top .section-label { max-width: 58%; font-size: 9px; line-height: 1.5; }
  .sector-section-code { max-width: 42%; font-size: 8px; line-height: 1.5; letter-spacing: .1em; }
  .sector-outcome-head { grid-template-columns: 1fr; gap: 23px; padding: 42px 0 43px; }
  .sector-outcome-head h2 { font-size: clamp(48px,12vw,69px); }
  .sector-outcome-head p { font-size: 14px; }
  .sector-outcome-grid { grid-template-columns: 1fr; }
  .sector-outcome-card, .sector-outcome-card:first-child { min-height: 0; padding: 21px 0 24px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
  .sector-outcome-card:last-child { border-bottom: 0; }
  .sector-outcome-card h3 { margin: 14px 0 8px; font-size: 22px; }
  .sector-outcome-card p { max-width: 100%; }
  .sector-inline-link { margin-top: 25px; font-size: 12px; }
  .sector-split-heading { grid-template-columns: 1fr; gap: 22px; padding: 32px 0 32px; }
  .sector-split-heading h2 { font-size: clamp(36px,9.6vw,49px); }
  .sector-split-heading p { font-size: 13px; }
  .sector-use-grid, .sector-choice-grid { grid-template-columns: 1fr; }
  .sector-use-card { min-height: 235px; padding: 23px; }
  .sector-use-card h3 { font-size: 28px; }
  .sector-use-card p { font-size: 12px; }
  .sector-technical-row { grid-template-columns: 35px 1fr; gap: 8px 12px; padding: 24px 0; }
  .sector-technical-row>span { grid-row: 1 / 3; }
  .sector-technical-row h3 { font-size: 22px; }
  .sector-technical-row p { grid-column: 2; font-size: 12px; }
  .sector-process-grid article { padding: 20px 16px; min-height: 208px; }
  .sector-process-grid h3 { margin-top: 33px; font-size: 16px; }
  .sector-process-grid p { font-size: 11px; }
  .sector-choice { min-height: 0; padding: 23px; }
  .sector-choice h3 { margin-top: 44px; font-size: 29px; }
  .sector-decision-note { grid-template-columns: 1fr; gap: 12px; padding: 23px; }
  .sector-decision-note .btn { grid-column: 1; white-space: normal; margin-top: 7px; }
  .sector-footer-links { flex-direction: column; }
}
@media (max-width: 380px) {
  .sector-page .story-content { min-height: 310px; }
  .sector-page .story-copy h1 { font-size: 28px; }
  .sector-page .story-copy h2 { font-size: 29px; }
  .sector-page .story-eyebrow { font-size: 6px; }
  .sector-process-grid { grid-template-columns: 1fr; }
  .sector-process-grid article, .sector-process-grid article:nth-child(3) { min-height: 0; padding: 20px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
  .sector-process-grid article:last-child { border-bottom: 0; }
  .sector-process-grid h3 { margin-top: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .sector-page .print-story { height: auto; }
  .sector-fallback-object { clip-path: none !important; }
  .sector-use-card, .sector-footer-links a { transition: none; }
}
