@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Permanent+Marker&display=swap');:root{--navy:#092a3c;--blue:#075d82;--orange:#ed4b1b;--yellow:#fbb735;--paper:#fff1d7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);font-family:'DM Sans',Arial,sans-serif;background:var(--paper);background-image:radial-gradient(#b98b5d28 1px,transparent 1px);background-size:7px 7px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.top{height:82px;display:flex;align-items:center;justify-content:space-between;padding:10px 5%;background:#fff5e4;position:sticky;top:0;z-index:5;box-shadow:0 3px 12px #172b391a}.brand{font-family:'Permanent Marker',cursive;font-size:31px;line-height:1;color:var(--navy);white-space:nowrap}.brand span,.hero h1 span{color:var(--orange)}.brand span:nth-of-type(2),.hero h1 span:nth-of-type(2){color:var(--blue)}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:.4px;margin-top:5px}.top nav{display:flex;gap:18px;align-items:center}.top nav a{font-size:12px;font-weight:800}.top nav a:hover{color:var(--orange)}.menu{display:none;background:transparent;border:0;font-size:26px}.hero{display:grid;grid-template-columns:40% 60%;min-height:510px;overflow:hidden}.hero-copy{padding:85px 5% 70px 12%;position:relative;background:linear-gradient(140deg,#fff1d5,#ffe4a6)}.hero-copy:after{content:'';position:absolute;right:-24px;top:0;bottom:0;width:44px;background:#fff1d5;clip-path:polygon(0 0,100% 5%,15% 14%,95% 24%,0 37%,85% 49%,10% 61%,100% 76%,0 88%,95% 100%,0 100%);z-index:2}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px}.hero h1{font-family:'Permanent Marker',cursive;font-size:clamp(65px,8vw,130px);margin:22px 0 0;line-height:.95;letter-spacing:-4px}.hero h2{font-family:'Permanent Marker',cursive;font-size:clamp(23px,3vw,40px);margin:12px 0 22px}.hero p{font-size:19px;font-weight:700;line-height:1.5;max-width:440px}.btn{display:inline-block;border:0;border-radius:40px;padding:14px 25px;background:var(--orange);color:white;font-weight:800;margin-top:18px}.btn:hover{filter:brightness(.92)}.hero-photo{position:relative;min-height:440px}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo blockquote{position:absolute;right:4%;top:6%;background:#fff1d7ed;max-width:260px;padding:24px;transform:rotate(-4deg);font-family:'Permanent Marker',cursive;font-size:21px;box-shadow:6px 7px 0 #092a3c25}.hero-photo blockquote small{display:block;font-family:'DM Sans',sans-serif;font-size:12px;text-align:right;margin-top:12px}.quick{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:28px 7%;background:#ffeed4}.quick a{text-align:center;font-size:31px;background:#fff5e7;padding:16px 6px;border-radius:10px;box-shadow:0 3px 0 #dcb47a}.quick span{display:block;font-size:13px;font-weight:800;margin-top:8px}.paper,.method,.gallery,.guide{padding:80px 8%}.about{display:grid;grid-template-columns:46% 1fr;gap:7%;align-items:center}.about img{height:340px;width:100%;object-fit:cover;transform:rotate(-2deg);box-shadow:14px 14px 0 #f6ad2f}.about h2,.method h2,.results h2,.musical h2,.gallery h2,.guide h2{font-size:clamp(31px,4vw,53px);line-height:1.1;margin:15px 0 22px}.about h2 em,.musical h2 em,.gallery h2 em{font-family:'Permanent Marker',cursive;color:var(--orange);font-weight:400}.about p,.musical p,.guide p{font-size:17px;line-height:1.8}.method{background:#f8b839}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps article{background:#fff5df;padding:24px;border-radius:5px}.steps b{font-family:'Permanent Marker',cursive;font-size:36px;color:var(--orange)}.steps h3{margin:10px 0}.steps p{line-height:1.6}.results{padding:60px 8%;background:var(--blue);color:#fff;display:grid;grid-template-columns:32% 1fr;gap:5%}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.metrics strong{font-size:clamp(44px,5vw,75px);color:var(--yellow);font-family:'Permanent Marker',cursive}.metrics p{line-height:1.6}.musical{display:grid;grid-template-columns:36% 1fr;gap:5%;padding:80px 8%;background:#fa8754}.video-placeholder{position:relative}.video-placeholder img{width:100%;height:370px;object-fit:cover;border-radius:10px}.video-placeholder span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:64px;color:white;text-shadow:0 2px 10px #000}.video-placeholder small{font-size:15px;background:#092a3cc9;padding:10px 16px;border-radius:25px}.note{font-size:13px!important}.gallery h2{max-width:650px}.photos{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.photos a{overflow:hidden;border:7px solid #fff;box-shadow:0 7px 14px #092a3c29;transform:rotate(-2deg)}.photos a:nth-child(even){transform:rotate(3deg)}.photos img{width:100%;height:210px;object-fit:cover;transition:transform .2s}.photos a:hover img{transform:scale(1.06)}.guide{background:#ffd17a;display:flex;gap:45px;align-items:center}.book{font-size:110px}.muted{background:var(--blue);cursor:default}footer{background:#062235;color:#fff;padding:32px 7%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer .brand{color:white}footer p{font-size:13px}footer a{font-size:13px;font-weight:800}@media(max-width:950px){.top nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff5e4;flex-direction:column;padding:20px}.top nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero-copy:after{display:none}.hero-photo{height:420px}.quick{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.results,.musical{grid-template-columns:1fr}.photos{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.top{padding:12px 5%}.hero h1{font-size:68px}.hero-photo{height:300px;min-height:300px}.hero-photo blockquote{font-size:14px;max-width:170px;padding:12px}.quick{grid-template-columns:repeat(2,1fr)}.about{grid-template-columns:1fr}.about img{height:240px}.paper,.method,.gallery,.guide{padding:55px 6%}.steps,.metrics{grid-template-columns:1fr}.results{padding:55px 6%}.musical{padding:55px 6%}.video-placeholder img{height:230px}.photos{grid-template-columns:repeat(2,1fr)}.photos img{height:150px}.guide{flex-direction:column;align-items:flex-start;gap:0}.book{font-size:70px}footer{flex-direction:column;align-items:flex-start}}

/* Galeria ampliada com botão de fechar */
.lightbox[hidden]{display:none!important}.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(4,15,26,.94);display:flex;align-items:center;justify-content:center;padding:65px 18px 24px}.lightbox-image{max-width:95vw;max-height:calc(100vh - 95px);width:auto;height:auto;object-fit:contain;border:5px solid #fff;box-shadow:0 15px 45px #0008}.lightbox-close{position:absolute;right:20px;top:12px;z-index:2;width:49px;height:49px;background:#fff;border:0;border-radius:50%;color:#092a3c;font-size:36px;line-height:1;cursor:pointer}.lightbox-close:hover{background:#fbb735}.lightbox-open{overflow:hidden}.photos a{cursor:zoom-in}.video-placeholder video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#092a3c;border-radius:10px;box-shadow:0 10px 28px #092a3c44}

/* Vídeo de apresentação na capa e seção Musical */
.hero-video{display:flex;flex-direction:column;justify-content:center;background:#082b3f;padding:24px;min-height:440px}.hero-video-frame,.video-placeholder{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:12px;box-shadow:0 12px 30px #061f2d44}.hero-video-frame iframe,.video-placeholder iframe{display:block;width:100%;height:100%;border:0}.hero-video-label{color:#fff1d7;font-size:15px!important;text-align:center;margin:14px 0 0!important}.hero-video .hero-video-frame{flex-shrink:0}@media(max-width:600px){.hero-video{height:auto;min-height:0;padding:18px}.hero-video-label{font-size:13px!important}}

.guide-preview{display:inline-block;margin:12px 0 0 14px;color:#053e60;font-weight:700;text-decoration:underline;text-underline-offset:4px}

/* Apresentação institucional do FISARTE na página inicial */
.hero-copy{padding-top:58px;padding-bottom:54px}
.hero h2{margin-bottom:18px}
.hero-intro{max-width:560px;padding:17px 19px;background:rgba(255,255,255,.65);border-left:5px solid var(--orange);border-radius:3px 14px 14px 3px;box-shadow:0 8px 24px rgba(9,42,60,.07)}
.hero-intro p{font-size:14px;font-weight:500;line-height:1.62;max-width:none;margin:0 0 12px}
.hero-intro p:last-child{margin-bottom:0}
.hero-intro strong{color:#a83817;font-weight:800}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}
.hero-actions .btn{margin-top:0;font-size:13px;padding:12px 17px}
.hero-actions .btn-secondary{background:#fff8ec;color:var(--navy);border:2px solid var(--orange)}
@media(max-width:800px){.hero-copy{padding-top:42px;padding-bottom:40px}.hero-intro{max-width:100%}.hero-intro p{font-size:14px}}

/* Carrossel horizontal: 6 imagens no desktop, 2 no celular */
.gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 20px}.gallery-hint{font-size:14px;font-weight:700;opacity:.8}.gallery-arrows{display:flex;gap:12px}.gallery-arrows button{border:0;background:#ed4b1b;color:white;border-radius:50%;width:48px;height:48px;font-size:25px;cursor:pointer}.gallery-arrows button:disabled{opacity:.35;cursor:default}.gallery .photos{display:flex!important;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#ed4b1b transparent;padding:10px 5px 20px;overscroll-behavior-inline:contain}.gallery .photos a{flex:0 0 calc((100% - 5 * 15px)/6);min-width:0;scroll-snap-align:start;transform:none!important}.gallery .photos img{height:175px}.gallery-count{font-size:13px;font-weight:800;text-align:center;margin:8px 0 0}.gallery .photos:focus-visible{outline:3px solid #ed4b1b}@media(max-width:950px){.gallery .photos a{flex-basis:calc((100% - 2 * 15px)/3)}}@media(max-width:600px){.gallery .photos a{flex-basis:calc((100% - 15px)/2)}.gallery .photos img{height:155px}.gallery-hint{font-size:12px}.gallery-arrows button{width:42px;height:42px}}
/* Galeria paginada: 8 fotos no computador, 6 no celular */
.gallery .photos{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;overflow:visible;scroll-snap-type:none;scroll-behavior:auto;padding:10px 5px 20px}
.gallery .photos a{min-width:0;display:block}
.gallery .photos a[hidden]{display:none!important}
.gallery .photos img{height:175px}
@media(max-width:600px){.gallery .photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery .photos img{height:155px}}
