/* Correções estruturais e direção visual do modelo de Fotografia. */
.model-demo[data-model="fotografia"] { --photo-ink:#0c0b0a; --photo-gold:#d9ab66; --photo-paper:#f7f3ee; }
.model-demo[data-model="fotografia"] .container { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.model-demo[data-model="fotografia"] .model-business { background:#0c0b0a; border-bottom:1px solid #27231f; }
.model-demo[data-model="fotografia"] .model-business .nav-wrap { min-height:80px; }
.model-demo[data-model="fotografia"] .hero { min-height:0; padding:54px 0 68px; background:linear-gradient(120deg,#0c0b0a 0 70%,#15120f 70%); }
.model-demo[data-model="fotografia"] .hero-grid { grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr); gap:68px; min-height:570px; padding:0; }
.model-demo[data-model="fotografia"] .hero-copy { padding:12px 0; }
.model-demo[data-model="fotografia"] .hero h1 { max-width:12ch; font-size:clamp(50px,4.5vw,68px); }
.model-demo[data-model="fotografia"] .hero-text { max-width:42ch; line-height:1.65; }
.model-demo[data-model="fotografia"] .hero-media { min-width:0; }
.model-demo[data-model="fotografia"] .hero-photo { min-height:510px; border-radius:30px 30px 110px 30px; box-shadow:0 30px 70px rgba(0,0,0,.4); border:1px solid rgba(255,255,255,.12); }
.model-demo[data-model="fotografia"] .hero-note { right:-18px; top:64px; padding:25px 28px; border-radius:22px 22px 22px 70px; }
.model-demo[data-model="fotografia"] .hero-points { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:32px; }
.model-demo[data-model="fotografia"] .hero-points div { min-width:0; padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(255,255,255,.035); }
.model-demo[data-model="fotografia"] .hero-points span { flex-basis:38px; width:38px; height:38px; }
.model-demo[data-model="fotografia"] .hero-points p { color:#cfc4b8; overflow-wrap:anywhere; }
.model-demo[data-model="fotografia"] .hero-points strong { color:#fff; }

.model-demo[data-model="fotografia"] .portfolio { padding:82px 0 90px; background:#0a0908; }
.model-demo[data-model="fotografia"] .portfolio-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
.model-demo[data-model="fotografia"] .portfolio-copy { grid-column:1; max-width:760px; }
.model-demo[data-model="fotografia"] .portfolio-copy h2 { max-width:none; font-size:clamp(42px,5vw,64px); }
.model-demo[data-model="fotografia"] .portfolio-copy p { max-width:52ch; }
.model-demo[data-model="fotografia"] .model-gallery-tools { grid-column:1; margin:2px 0 8px; }
.model-demo[data-model="fotografia"] .model-gallery-tools button { border-color:#786f65; color:#eee4da; }
.model-demo[data-model="fotografia"] .gallery-grid { grid-column:1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; width:100%; }
.model-demo[data-model="fotografia"] .gallery-item { min-height:300px; border-radius:16px; overflow:hidden; }
.model-demo[data-model="fotografia"] .gallery-item:nth-child(2),
.model-demo[data-model="fotografia"] .gallery-item:nth-child(4) { transform:translateY(28px); }
.model-demo[data-model="fotografia"] .gallery-item:nth-child(2):hover,
.model-demo[data-model="fotografia"] .gallery-item:nth-child(4):hover { transform:translateY(24px); }
.model-demo[data-model="fotografia"] .model-gallery-caption { background:linear-gradient(transparent,rgba(0,0,0,.88)); padding:48px 16px 15px; }
.model-demo[data-model="fotografia"] .portfolio .model-example-note { grid-column:1; margin:30px 0 0; color:#c8bbae; max-width:68ch; }

.model-demo[data-model="fotografia"] .services { padding:88px 0; background:#f7f3ee; }
.model-demo[data-model="fotografia"] .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.model-demo[data-model="fotografia"] .service-card { border-radius:18px; box-shadow:0 12px 32px rgba(50,36,22,.08); }
.model-demo[data-model="fotografia"] .service-img { height:230px; }
.model-demo[data-model="fotografia"] .service-body { padding:22px; text-align:left; }
.model-demo[data-model="fotografia"] .service-card h3 { font-size:24px; }
.model-demo[data-model="fotografia"] .service-card p { min-height:0; }

.model-demo[data-model="fotografia"] .about { padding:90px 0; }
.model-demo[data-model="fotografia"] .about-grid { grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:36px 58px; align-items:start; }
.model-demo[data-model="fotografia"] .about-photo { grid-row:1 / span 2; min-height:610px; border-radius:90px 18px 18px 18px; }
.model-demo[data-model="fotografia"] .about-copy h2 { max-width:12ch; font-size:clamp(44px,4.5vw,60px); }
.model-demo[data-model="fotografia"] .about-list { grid-column:2; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
.model-demo[data-model="fotografia"] .about-list div { min-width:0; }
.model-demo[data-model="fotografia"] .about-list span { flex:none; }

.model-demo[data-model="fotografia"] #apresentacao { padding-block:76px; background:#efe7dc; }
.model-demo[data-model="fotografia"] #apresentacao .model-info-card { background:#fffaf5; border-color:#d9cdbf; }
.model-demo[data-model="fotografia"] .faq { padding:78px 0; }
.model-demo[data-model="fotografia"] .faq-grid { grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); gap:64px; }
.model-demo[data-model="fotografia"] .faq-list details { border-radius:10px; }
.model-demo[data-model="fotografia"] .cta-band { background:#17120e; }
.model-demo[data-model="fotografia"] .cta-wrap { grid-template-columns:minmax(0,1fr) minmax(300px,.7fr); padding:64px 0; }
.model-demo[data-model="fotografia"] .cta-features > span { position:relative; padding-left:28px; }
.model-demo[data-model="fotografia"] .cta-features > span::before { content:""; position:absolute; left:2px; top:17px; width:9px; height:9px; border-radius:50%; background:var(--photo-gold); }

@media(max-width:1100px) {
  .model-demo[data-model="fotografia"] .hero-grid { grid-template-columns:minmax(0,1fr); gap:38px; }
  .model-demo[data-model="fotografia"] .hero-media { order:initial; }
  .model-demo[data-model="fotografia"] .hero-photo { min-height:500px; }
  .model-demo[data-model="fotografia"] .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .model-demo[data-model="fotografia"] .about-grid { grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr); }
  .model-demo[data-model="fotografia"] .cta-wrap { grid-template-columns:minmax(0,1fr); }
}

@media(max-width:700px) {
  .model-demo[data-model="fotografia"] { padding-bottom:0; }
  .model-demo[data-model="fotografia"] .container { width:calc(100% - 32px); }
  .model-demo[data-model="fotografia"] .hero { padding:32px 0 42px; background:#0c0b0a; }
  .model-demo[data-model="fotografia"] .hero h1 { font-size:clamp(42px,12vw,54px); }
  .model-demo[data-model="fotografia"] .hero-photo { min-height:390px; border-radius:18px 18px 70px 18px; background-position:center; }
  .model-demo[data-model="fotografia"] .hero-note { position:absolute; right:10px; bottom:18px; top:auto; max-width:190px; padding:16px 18px; }
  .model-demo[data-model="fotografia"] .hero-note p { font-size:18px; }
  .model-demo[data-model="fotografia"] .hero-points { grid-template-columns:minmax(0,1fr); }
  .model-demo[data-model="fotografia"] .hero-points div { padding:12px; }
  .model-demo[data-model="fotografia"] .portfolio { padding:56px 0 64px; }
  .model-demo[data-model="fotografia"] .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .model-demo[data-model="fotografia"] .gallery-item { min-height:190px; }
  .model-demo[data-model="fotografia"] .gallery-item:nth-child(2),
  .model-demo[data-model="fotografia"] .gallery-item:nth-child(4),
  .model-demo[data-model="fotografia"] .gallery-item:nth-child(2):hover,
  .model-demo[data-model="fotografia"] .gallery-item:nth-child(4):hover { transform:none; }
  .model-demo[data-model="fotografia"] .services { padding:58px 0; }
  .model-demo[data-model="fotografia"] .service-grid { grid-template-columns:minmax(0,1fr); }
  .model-demo[data-model="fotografia"] .service-card { display:grid; grid-template-columns:42% minmax(0,58%); }
  .model-demo[data-model="fotografia"] .service-img { height:100%; min-height:168px; }
  .model-demo[data-model="fotografia"] .service-body { padding:17px; }
  .model-demo[data-model="fotografia"] .service-card h3 { font-size:20px; }
  .model-demo[data-model="fotografia"] .about { padding:58px 0; }
  .model-demo[data-model="fotografia"] .about-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .model-demo[data-model="fotografia"] .about-photo { grid-row:auto; min-height:390px; border-radius:60px 14px 14px 14px; }
  .model-demo[data-model="fotografia"] .about-list { grid-column:auto; grid-template-columns:minmax(0,1fr); }
  .model-demo[data-model="fotografia"] .faq { padding:58px 0; }
  .model-demo[data-model="fotografia"] .faq-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .model-demo[data-model="fotografia"] .cta-wrap { padding:42px 0; }
}

@media(max-width:380px) {
  .model-demo[data-model="fotografia"] .hero h1 { font-size:41px; }
  .model-demo[data-model="fotografia"] .hero-photo { min-height:340px; }
  .model-demo[data-model="fotografia"] .gallery-item { min-height:165px; }
  .model-demo[data-model="fotografia"] .service-card { grid-template-columns:38% minmax(0,62%); }
}

@media(prefers-reduced-motion:reduce) {
  .model-demo[data-model="fotografia"] .gallery-item { transform:none !important; }
}
