/* A0 e A1: cenas próprias dos formatos, preservando a identidade Lulean. */
.plotter-format-a0 { --format-hero:url('../assets/plotter-a0-studio.webp'); }
.plotter-format-a1 { --format-hero:url('../assets/plotter-a1-studio.webp'); }
.plotter-format-page { --format-gold:#f1c970; }
.plotter-format-page .format-hero.page-hero--product { min-height:max(760px,100svh); padding:clamp(145px,14vh,190px) 0 110px; background:linear-gradient(90deg,rgba(4,4,4,.98) 0%,rgba(4,4,4,.9) 31%,rgba(4,4,4,.37) 62%,rgba(4,4,4,.12) 100%),linear-gradient(0deg,#090909 0%,transparent 25%),var(--format-hero) center center / cover no-repeat; }
.format-hero.page-hero--product::before { inset:96px 23px 28px; border-color:rgba(244,206,128,.16); }
.format-hero::after { background:radial-gradient(circle at 71% 46%,rgba(155,26,26,.07),transparent 46%); }
.format-hero-inner { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:45px; max-width:1340px; min-height:500px; }
.format-hero-content { max-width:685px; }
.format-hero .section-label { display:inline-flex; align-items:center; gap:9px; border-color:rgba(247,207,111,.32); }
.format-hero h1 { max-width:760px; font-size:clamp(3.8rem,6vw,6.9rem); line-height:.95; }
.format-hero h1 em,.format-story h2 em,.format-applications h2 em { color:var(--format-gold); font-style:normal; }
.format-hero-line { margin:22px 0 14px; color:#f0cb7b; font-weight:800; font-size:clamp(1rem,1.35vw,1.2rem); }
.format-hero .hero-lead { max-width:590px; margin-bottom:27px; color:#e4dfd6; }
.format-hero .page-hero-actions .btn { min-height:53px; }
.format-hero-meta { display:flex; flex-wrap:wrap; gap:9px; margin-top:33px; }
.format-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); }
.format-hero-meta strong { color:#fff; font-size:.94rem; letter-spacing:.03em; }
.format-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); }
.format-hero-signature span { display:block; color:var(--format-gold); font-size:.61rem; font-weight:850; letter-spacing:.2em; }
.format-hero-signature strong { display:block; margin-top:20px; color:#fff; font-size:1.7rem; letter-spacing:-.05em; line-height:1.05; }
.format-hero-signature i { display:block; width:55px; height:2px; margin-top:20px; background:linear-gradient(90deg,#e4222b,#ecc868); }

.format-story { --format-hide:100%; --format-scan:24%; position:relative; height:165svh; min-height:1000px; background:radial-gradient(circle at 73% 42%,rgba(175,37,32,.1),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); }
.format-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; }
.format-story-copy { max-width:500px; }
.format-story h2,.format-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; }
.format-story-copy p { color:#bdb9b3; line-height:1.75; font-size:1.03rem; }
.format-story-steps { display:grid; gap:8px; margin:26px 0; }
.format-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; }
.format-story-steps b { margin-right:15px; color:var(--format-gold); }
.format-story-copy>a { color:var(--format-gold); font-size:.86rem; font-weight:800; border-bottom:1px solid rgba(242,201,103,.45); padding-bottom:6px; }
.format-story-scene { position:relative; height:min(610px,72svh); min-height:450px; border:1px solid rgba(240,209,147,.3); border-radius:17px; background:radial-gradient(circle at 50% 59%,rgba(137,31,27,.15),transparent 52%),linear-gradient(145deg,#25211f,#090909 73%); box-shadow:0 28px 70px rgba(0,0,0,.43); overflow:hidden; }
.format-story-scene::before { content:''; position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent 0 34px,rgba(255,255,255,.025) 35px),repeating-linear-gradient(90deg,transparent 0 34px,rgba(255,255,255,.025) 35px); pointer-events:none; }
.format-scene-eyebrow { position:absolute; z-index:5; top:17px; left:22px; right:22px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,.13); color:#dcc392; font-size:.55rem; font-weight:850; letter-spacing:.2em; }
.format-plotter { position:absolute; z-index:4; top:65px; left:7%; right:7%; height:75px; border:1px solid #3c3e3f; border-radius:13px 13px 5px 5px; background:linear-gradient(180deg,#525455,#292b2d 35%,#0a0b0c 72%,#3a3c3e); box-shadow:0 15px 27px rgba(0,0,0,.5); }
.format-plotter::before { content:''; position:absolute; top:18px; right:25px; width:55px; height:27px; border:2px solid #737576; border-radius:4px; background:#101214; }
.format-plotter-light { position:absolute; left:25px; top:25px; width:42px; height:5px; border-radius:10px; background:#d51a21; box-shadow:0 0 12px rgba(226,43,48,.64); }
.format-plotter-slot { position:absolute; bottom:9px; left:4%; right:4%; height:7px; border-radius:9px; background:#030404; box-shadow:inset 0 1px rgba(255,255,255,.16); }
.format-sheet { position:absolute; z-index:2; top:130px; bottom:57px; left:10%; right:10%; display:flex; flex-direction:column; border:1px solid #ddd6c8; background:linear-gradient(155deg,#faf8f1,#ede9df); box-shadow:0 16px 30px rgba(0,0,0,.45); clip-path:inset(0 0 var(--format-hide) 0); }
.format-sheet::before { content:''; position:absolute; inset:0; background:repeating-linear-gradient(0deg,transparent 0 24px,rgba(42,72,78,.026) 25px); pointer-events:none; }
.format-sheet-head,.format-sheet-footer { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:8px; padding:11px 15px; border-bottom:1px solid rgba(69,88,91,.22); color:#33464a; font-size:.56rem; font-weight:900; letter-spacing:.15em; }
.format-sheet-head b { color:#b7232c; font-size:.68rem; }
.format-sheet svg { flex:1; width:100%; min-height:0; padding:12px; }
.format-sheet-footer { padding:7px 15px; border-top:1px solid rgba(69,88,91,.22); border-bottom:0; font-size:.44rem; }
.format-scan { position:absolute; z-index:3; top:var(--format-scan); left:9%; right:9%; height:2px; background:linear-gradient(90deg,transparent,#e52028 18%,#f6da85 50%,#e52028 82%,transparent); box-shadow:0 0 18px #d71925; }
.format-scene-footer { position:absolute; z-index:5; bottom:17px; left:10%; right:10%; display:flex; justify-content:space-between; gap:10px; color:#d8d2c7; font-size:.58rem; font-weight:850; letter-spacing:.12em; }
.format-scene-footer strong { color:var(--format-gold); }

.format-applications { padding:103px 0 91px; background:linear-gradient(180deg,#100d0c,#080808); }
.format-applications h2 { max-width:850px; margin-bottom:37px; }
.format-applications-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; }
.format-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; }
.format-applications-grid article::after { content:''; position:absolute; width:140px; height:140px; right:-38px; bottom:-54px; border-top:1px solid rgba(246,218,153,.25); border-left:1px solid rgba(246,218,153,.25); transform:rotate(45deg); }
.format-applications-grid article:hover { transform:translateY(-6px); border-color:rgba(248,212,126,.43); }
.format-applications-grid article>span { color:var(--format-gold); font-size:.62rem; font-weight:900; letter-spacing:.18em; }
.format-applications-grid h3 { margin:55px 0 10px; font-size:1.46rem; letter-spacing:-.035em; }
.format-applications-grid p { max-width:290px; color:#bcb8b3; font-size:.9rem; line-height:1.62; }
.format-applications-note { margin-top:20px; color:#8b8882; font-size:.72rem; }
.format-models { padding-top:95px; background:linear-gradient(180deg,#0b0b0b,#15100f 54%,#090909); }
.format-models .plotter-models-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:1010px; }
.format-models .plotter-model-photo { height:300px; }
.plotter-format-page .plotter-float-actions { z-index:1000; }
.plotter-format-page.format-proposal-in-view .plotter-float-actions { opacity:0; visibility:hidden; pointer-events:none; }
.plotter-format-page .site-final-cta-button { background:#d80710; }
.format-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; }
.format-proposal-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); }
.format-proposal-stage::after { content:''; position:absolute; z-index:-1; inset:20px; border:1px solid rgba(244,216,151,.12); pointer-events:none; }
.format-proposal-stage img { position:relative; width:min(94%,460px); max-height:210px; object-fit:contain; filter:drop-shadow(0 18px 20px rgba(0,0,0,.6)); }
.format-proposal-stage>span,.format-proposal-stage>b { position:absolute; z-index:1; color:#f0d390; font-size:.58rem; font-weight:850; letter-spacing:.16em; }
.format-proposal-stage>span { top:17px; left:20px; }
.format-proposal-stage>b { right:20px; bottom:15px; }
.format-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-format-page .format-hero.page-hero--product { min-height:780px; }
  .format-hero-inner { min-height:550px; }
  .format-hero-signature { display:none; }
  .format-story { height:165svh; min-height:1100px; }
  .format-story-grid { grid-template-columns:1fr; gap:25px; align-content:center; min-height:660px; }
  .format-story-copy { max-width:720px; }
  .format-story h2 { font-size:clamp(2.6rem,5.7vw,4rem); }
  .format-story-steps { grid-template-columns:repeat(3,1fr); }
  .format-story-steps b { display:block; margin-bottom:6px; }
  .format-story-scene { max-width:700px; width:100%; height:390px; min-height:390px; }
}
@media (max-width:650px) {
  .plotter-format-page .format-hero.page-hero--product { min-height:930px; padding:105px 0 350px; background:radial-gradient(circle at 85% 18%,rgba(129,22,25,.18),transparent 42%),#090909; }
  .format-hero.page-hero--product::before { inset:83px 12px 16px; }
  .format-hero::after { inset:auto 0 0; height:365px; z-index:-1; background:linear-gradient(180deg,#090909 0%,rgba(9,9,9,.16) 24%,rgba(9,9,9,.04) 67%,#090909 100%),var(--format-hero) 72% center / cover no-repeat; }
  .format-hero-inner { display:block; min-height:0; }
  .format-hero h1 { font-size:clamp(3.08rem,11.8vw,4.35rem); line-height:.99; }
  .format-hero-line { margin-top:17px; font-size:.9rem; }
  .format-hero .hero-lead { font-size:.91rem; line-height:1.59; }
  .format-hero-meta { margin-top:23px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
  .format-hero-meta span { min-width:0; padding:9px 7px; font-size:.54rem; }
  .format-hero-meta strong { font-size:.74rem; }
  .format-story { height:auto; min-height:0; padding:76px 0; }
  .format-story-grid { position:relative; top:auto; height:auto; min-height:0; gap:26px; }
  .format-story h2,.format-applications h2 { font-size:clamp(2.2rem,9vw,3.1rem); }
  .format-story-copy p { font-size:.91rem; line-height:1.61; }
  .format-story-steps { grid-template-columns:1fr; gap:5px; margin:19px 0; }
  .format-story-steps span { padding:9px 11px; font-size:.72rem; }
  .format-story-steps b { display:inline; margin-right:10px; }
  .format-story-scene { min-height:350px; height:350px; }
  .format-plotter { top:53px; left:6%; right:6%; height:52px; }
  .format-plotter-light { top:17px; left:13px; }
  .format-plotter::before { top:11px; right:13px; width:42px; height:22px; }
  .format-sheet { top:101px; bottom:48px; left:8%; right:8%; }
  .format-sheet-head { padding:8px; font-size:.42rem; }
  .format-sheet svg { padding:5px; }
  .format-sheet-footer { padding:6px 7px; font-size:.35rem; }
  .format-scan { left:6%; right:6%; }
  .format-scene-footer { left:8%; right:8%; bottom:12px; font-size:.43rem; }
  .format-applications { padding:72px 0; }
  .format-applications-grid { grid-template-columns:1fr; gap:10px; }
  .format-applications-grid article { min-height:175px; padding:19px; }
  .format-applications-grid h3 { margin-top:26px; }
  .format-models { padding:70px 0; }
  .format-models .plotter-models-grid { grid-template-columns:1fr; }
  .format-models .plotter-model-photo { height:245px; }
  .format-proposal-stage { height:190px; }
  .format-proposal-stage img { max-height:174px; }
}
@media (prefers-reduced-motion:reduce) {
  .format-story { --format-hide:0%; --format-scan:100%; }
  .format-applications-grid article { transition:none; }
}

/* A1 usa uma prancha mais compacta; A0 valoriza a leitura integral. */
.plotter-format-a1 .format-sheet { left:16%; right:16%; }
.plotter-format-a1 .format-plotter { left:13%; right:13%; }
.plotter-format-a1 .format-story-scene { background:radial-gradient(circle at 54% 60%,rgba(153,31,35,.13),transparent 51%),linear-gradient(145deg,#22262a,#08090a 74%); }
.plotter-format-a0 .format-sheet { left:8%; right:8%; }
.plotter-format-a0 .format-scan { left:7%; right:7%; }
.plotter-format-page .format-hero.page-hero--product { background-image:linear-gradient(90deg,rgba(4,4,4,.98) 0%,rgba(4,4,4,.88) 31%,rgba(4,4,4,.36) 62%,rgba(4,4,4,.11) 100%),linear-gradient(0deg,#090909 0%,transparent 25%),var(--format-hero); }
.plotter-format-page .format-models .plotter-model-photo img { object-fit:contain; }
@media (max-width:650px) {
 .plotter-format-a1 .format-sheet { left:13%; right:13%; }
 .plotter-format-a0 .format-sheet { left:7%; right:7%; }
 .plotter-format-page .format-hero.page-hero--product { background:radial-gradient(circle at 85% 18%,rgba(129,22,25,.18),transparent 42%),#090909; }
 .plotter-format-page .format-hero::after { background-image:linear-gradient(180deg,#090909 0%,rgba(9,9,9,.16) 24%,rgba(9,9,9,.04) 67%,#090909 100%),var(--format-hero); }
}
