/* Identidade setorial: arquitetura. Conteúdo original permanece nas seções SEO. */
.plotter-architecture-page { --arch-gold: #f2c967; }
.plotter-architecture-page .architecture-hero.page-hero--product {
  min-height: max(760px, 100svh);
  padding: clamp(145px, 14vh, 190px) 0 110px;
  background: linear-gradient(90deg,rgba(3,3,4,.98) 0%,rgba(3,3,4,.9) 31%,rgba(3,3,4,.45) 61%,rgba(3,3,4,.13) 100%),
    linear-gradient(0deg,#080808 0%,transparent 27%),url('../assets/plotter-arquitetura-studio.webp') center center / cover no-repeat;
}
.architecture-hero.page-hero--product::before { inset: 96px 23px 28px; border-color: rgba(238,204,119,.13); }
.architecture-hero::after { background: radial-gradient(circle at 53% 50%,rgba(112,12,16,.06),transparent 42%); }
.architecture-hero-inner { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 45px; max-width: 1340px; min-height: 500px; }
.architecture-hero-content { max-width: 685px; }
.architecture-hero .section-label { display: inline-flex; align-items: center; gap: 9px; border-color: rgba(247,207,111,.32); }
.architecture-hero h1 { max-width: 760px; font-size: clamp(3.8rem,6vw,6.9rem); line-height: .95; }
.architecture-hero h1 em { color: var(--arch-gold); }
.architecture-hero-line { margin: 22px 0 14px; color: #f0cb7b; font-weight: 800; font-size: clamp(1rem,1.35vw,1.2rem); }
.architecture-hero .hero-lead { max-width: 590px; margin-bottom: 27px; color: #e4dfd6; }
.architecture-hero .page-hero-actions .btn { min-height: 53px; }
.architecture-hero-meta { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 33px; }
.architecture-hero-meta span { display: grid; gap: 3px; min-width: 145px; padding: 13px 15px; border: 1px solid rgba(255,255,255,.15); border-radius: 11px; background: rgba(10,10,10,.72); color: #c7c1b7; font-size: .67rem; line-height: 1.4; backdrop-filter: blur(8px); }
.architecture-hero-meta strong { color: #fff; font-size: .94rem; letter-spacing: .03em; }
.architecture-hero-signature { align-self: end; width: 225px; flex: none; margin: 0 0 20px auto; padding: 20px; border: 1px solid rgba(249,210,125,.3); border-radius: 15px; background: rgba(9,7,6,.8); box-shadow: 0 18px 45px rgba(0,0,0,.38); backdrop-filter: blur(12px); }
.architecture-hero-signature span { display: block; color: var(--arch-gold); font-size: .61rem; font-weight: 850; letter-spacing: .2em; }
.architecture-hero-signature strong { display: block; margin-top: 20px; color: #fff; font-size: 1.7rem; letter-spacing: -.05em; line-height: 1.05; }
.architecture-hero-signature i { display: block; width: 55px; height: 2px; margin-top: 20px; background: linear-gradient(90deg,#e4222b,#ecc868); }

.architecture-story { --arch-hidden: 100%; --arch-scan: 0%; position: relative; height: 150svh; min-height: 990px; background: radial-gradient(circle at 73% 42%,rgba(175,37,32,.09),transparent 46%),repeating-linear-gradient(0deg,transparent 0 59px,rgba(255,255,255,.022) 60px),repeating-linear-gradient(90deg,transparent 0 59px,rgba(255,255,255,.022) 60px),#0b0b0b; border-bottom: 1px solid rgba(255,255,255,.08); }
.architecture-story-grid { position: sticky; top: 80px; display: grid; grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); align-items: center; gap: clamp(40px,6vw,95px); height: calc(100svh - 80px); min-height: 670px; }
.architecture-story-copy { max-width: 500px; }
.architecture-story h2, .architecture-applications h2 { margin: 16px 0 21px; font-size: clamp(2.5rem,4.5vw,4.9rem); font-weight: 900; letter-spacing: -.06em; line-height: 1.04; text-wrap: balance; }
.architecture-story h2 em, .architecture-applications h2 em { color: var(--arch-gold); font-style: normal; }
.architecture-story-copy p { color: #bdb9b3; line-height: 1.75; font-size: 1.03rem; }
.architecture-story-steps { display: grid; gap: 8px; margin: 26px 0; }
.architecture-story-steps span { padding: 12px 14px; border: 1px solid rgba(255,255,255,.1); border-left: 2px solid #d92329; background: linear-gradient(90deg,rgba(159,25,27,.11),transparent); font-size: .81rem; font-weight: 800; }
.architecture-story-steps b { margin-right: 15px; color: var(--arch-gold); }
.architecture-story-copy>a { color: var(--arch-gold); font-size: .86rem; font-weight: 800; border-bottom: 1px solid rgba(242,201,103,.45); padding-bottom: 6px; }
.architecture-story-visual { position: relative; height: min(610px,72svh); min-height: 450px; border: 1px solid rgba(240,209,147,.3); border-radius: 17px; background: linear-gradient(135deg,#292622,#0b0b0b 70%); box-shadow: 0 28px 70px rgba(0,0,0,.43); overflow: hidden; }
.architecture-story-ruler { position: absolute; z-index: 3; top: 17px; left: 22px; right: 22px; padding-bottom: 12px; border-bottom: 1px solid rgba(255,255,255,.13); color: #d9c497; font-size: .55rem; font-weight: 800; letter-spacing: .2em; }
.architecture-story-plan { position: absolute; inset: 55px 32px 57px; display: grid; place-items: center; border: 1px solid #e4ded0; background: #f5f2e9; color: #4d626b; box-shadow: 0 12px 34px rgba(0,0,0,.43); clip-path: inset(0 0 var(--arch-hidden) 0); }
.architecture-story-plan::before { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(0deg,transparent 0 17px,rgba(34,64,72,.034) 18px); pointer-events: none; }
.architecture-story-plan svg { width: 92%; height: 92%; }
.architecture-story-scan { position: absolute; z-index: 2; left: 5%; right: 5%; top: var(--arch-scan); height: 2px; background: linear-gradient(90deg,transparent,#e52028 18%,#f6da85 50%,#e52028 82%,transparent); box-shadow: 0 0 20px #d71925; }
.architecture-story-caption { position: absolute; left: 30px; right: 30px; bottom: 18px; display: flex; justify-content: space-between; gap: 12px; color: #d9d2c5; font-size: .6rem; font-weight: 850; letter-spacing: .12em; }
.architecture-story-caption strong { color: var(--arch-gold); }

.architecture-applications { padding: 103px 0 91px; background: linear-gradient(180deg,#100d0c,#080808); }
.architecture-applications h2 { max-width: 850px; margin-bottom: 37px; }
.architecture-applications-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }
.architecture-applications-grid article { position: relative; min-height: 245px; padding: 26px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; background: radial-gradient(circle at 87% 12%,rgba(209,37,37,.13),transparent 45%),repeating-linear-gradient(0deg,transparent 0 39px,rgba(255,255,255,.018) 40px),#191818; transition: transform .32s,border-color .32s; overflow: hidden; }
.architecture-applications-grid article::after { content: ''; position: absolute; width: 150px; height: 150px; right: -54px; bottom: -68px; border: 1px solid rgba(246,218,153,.2); transform: rotate(45deg); }
.architecture-applications-grid article:hover { transform: translateY(-6px); border-color: rgba(248,212,126,.43); }
.architecture-applications-grid article>span { color: var(--arch-gold); font-size: .62rem; font-weight: 900; letter-spacing: .18em; }
.architecture-applications-grid h3 { margin: 55px 0 10px; font-size: 1.46rem; letter-spacing: -.035em; }
.architecture-applications-grid p { max-width: 290px; color: #bcb8b3; font-size: .9rem; line-height: 1.62; }
.architecture-applications-note { margin-top: 20px; color: #8b8882; font-size: .72rem; }
.architecture-models { padding-top: 95px; background: linear-gradient(180deg,#0b0b0b,#15100f 54%,#090909); }
.architecture-models .plotter-models-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 1010px; }
.architecture-models .plotter-model-photo { height: 300px; }
.plotter-architecture-page .seo-section:first-of-type { border-top: 0; }
.plotter-architecture-page .plotter-float-actions { z-index: 1000; }
.plotter-architecture-page .site-final-cta-button { background: #d80710; }
.architecture-proposal-visual { position: relative; margin: 29px 0 0; border: 1px solid rgba(241,205,128,.23); border-radius: 16px; background: #151313; box-shadow: 0 20px 45px rgba(0,0,0,.3); overflow: hidden; }
.architecture-proposal-visual-stage { position: relative; display: grid; place-items: center; height: 230px; isolation: isolate; background: radial-gradient(circle at 50% 70%,rgba(150,24,25,.3),transparent 54%),repeating-linear-gradient(0deg,transparent 0 31px,rgba(240,221,177,.06) 32px),repeating-linear-gradient(90deg,transparent 0 31px,rgba(240,221,177,.06) 32px),linear-gradient(140deg,#211c1a,#0b0b0c); }
.architecture-proposal-visual-stage::after { content: ''; position: absolute; z-index: -1; inset: 20px; border: 1px solid rgba(244,216,151,.12); pointer-events: none; }
.architecture-proposal-visual img { position: relative; width: min(94%,460px); max-height: 210px; object-fit: contain; filter: drop-shadow(0 18px 20px rgba(0,0,0,.6)); }
.architecture-proposal-visual-label,.architecture-proposal-visual-index { position: absolute; z-index: 1; color: #f0d390; font-size: .58rem; font-weight: 850; letter-spacing: .16em; }
.architecture-proposal-visual-label { top: 17px; left: 20px; }
.architecture-proposal-visual-index { right: 20px; bottom: 15px; }
.architecture-proposal-visual figcaption { padding: 13px 18px; border-top: 1px solid rgba(241,205,128,.14); color: #cfc4ae; font-size: .75rem; line-height: 1.5; }

@media (max-width: 900px) {
  .plotter-architecture-page .architecture-hero.page-hero--product { min-height: 780px; }
  .architecture-hero-inner { min-height: 550px; }
  .architecture-hero-signature { display: none; }
  .architecture-story { height: 165svh; min-height: 1100px; }
  .architecture-story-grid { grid-template-columns: 1fr; gap: 25px; align-content: center; min-height: 660px; }
  .architecture-story-copy { max-width: 720px; }
  .architecture-story h2 { font-size: clamp(2.6rem,5.7vw,4rem); }
  .architecture-story-steps { grid-template-columns: repeat(3,1fr); }
  .architecture-story-steps b { display: block; margin-bottom: 6px; }
  .architecture-story-visual { max-width: 700px; width: 100%; height: 390px; min-height: 390px; }
}
@media (max-width: 650px) {
  .plotter-architecture-page .architecture-hero.page-hero--product { min-height: 920px; padding: 105px 0 340px; background: radial-gradient(circle at 85% 18%,rgba(129,22,25,.18),transparent 42%),#090909; }
  .architecture-hero.page-hero--product::before { inset: 83px 12px 16px; }
  .architecture-hero::after { inset: auto 0 0; height: 350px; z-index: -1; background: linear-gradient(180deg,#090909 0%,rgba(9,9,9,.18) 25%,rgba(9,9,9,.02) 66%,#090909 100%),url('../assets/plotter-arquitetura-studio.webp') 67% center / cover no-repeat; }
  .architecture-hero-inner { display: block; min-height: 0; }
  .architecture-hero h1 { font-size: clamp(3.15rem,12vw,4.4rem); line-height: .99; }
  .architecture-hero-line { margin-top: 17px; font-size: .9rem; }
  .architecture-hero .hero-lead { font-size: .91rem; line-height: 1.59; }
  .architecture-hero-meta { margin-top: 23px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; }
  .architecture-hero-meta span { min-width: 0; padding: 9px 7px; font-size: .54rem; }
  .architecture-hero-meta strong { font-size: .74rem; }
  .architecture-story { height: auto; min-height: 0; padding: 76px 0; }
  .architecture-story-grid { position: relative; top: auto; height: auto; min-height: 0; gap: 26px; }
  .architecture-story h2, .architecture-applications h2 { font-size: clamp(2.2rem,9vw,3.1rem); }
  .architecture-story-copy p { font-size: .91rem; line-height: 1.61; }
  .architecture-story-steps { grid-template-columns: 1fr; gap: 5px; margin: 19px 0; }
  .architecture-story-steps span { padding: 9px 11px; font-size: .72rem; }
  .architecture-story-steps b { display: inline; margin-right: 10px; }
  .architecture-story-visual { min-height: 350px; height: 350px; }
  .architecture-story-plan { inset: 49px 15px 52px; }
  .architecture-story-caption { left: 15px; right: 15px; font-size: .47rem; }
  .architecture-applications { padding: 72px 0; }
  .architecture-applications-grid { grid-template-columns: 1fr; gap: 10px; }
  .architecture-applications-grid article { min-height: 175px; padding: 19px; }
  .architecture-applications-grid h3 { margin-top: 26px; }
  .architecture-models { padding: 70px 0; }
  .architecture-models .plotter-models-grid { grid-template-columns: 1fr; }
  .architecture-models .plotter-model-photo { height: 245px; }
  .architecture-proposal-visual-stage { height: 190px; }
  .architecture-proposal-visual img { max-height: 174px; }
}
@media (prefers-reduced-motion: reduce) {
  .architecture-story { --arch-hidden: 0%; --arch-scan: 100%; }
  .architecture-applications-grid article { transition: none; }
}
