/* AMMO site v10 review refinements */
.projects{grid-auto-rows:205px}
.project{height:205px}
.project.large{grid-row:span 3;height:635px}
.process .story{margin-top:48px}
.process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #b5aea4;border-bottom:1px solid #b5aea4}
.process-step{display:grid;grid-template-columns:24px 30px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:18px 12px;border-right:1px solid #c6bfb4}
.process-step:last-child{border-right:0}
.process-step svg{width:29px;height:29px;fill:none;stroke:#171716;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.process-number{align-self:start;color:var(--accent);font-size:11px;font-weight:700}
.process-step h3{font-size:12px;line-height:1.3}
.process-step p{margin:4px 0 0;color:#6e6a63;font-size:10px;line-height:1.45}
.story-image{background-image:url("assets/fachada-ammo.jpg");background-position:center;background-size:cover}
.coverage-card{display:flex;flex-direction:column;gap:9px;min-height:470px}
.coverage-card h2,.coverage-card>p:not(.eyebrow){flex:0 0 auto}
.coverage-locations{display:grid;grid-template-columns:minmax(155px,.9fr) minmax(0,1.1fr);align-items:center;gap:10px;flex:1;min-height:0}
.coverage-map-shell{min-width:0}
.map-toolbar{display:flex;align-items:center;gap:5px;margin:0 0 4px}
.map-toolbar button{min-width:27px;height:26px;border:1px solid #c8bdb0;background:#fff;color:var(--ammo-navy);font:600 13px/1 "DM Sans",sans-serif;cursor:pointer}
.map-toolbar #map-zoom-reset{width:auto;padding:0 7px;font-size:9px}
.map-toolbar span{margin-left:auto;color:#706b63;font-size:9px}
.brazil-map{display:block;width:100%;height:auto;max-height:290px;overflow:hidden;touch-action:none;cursor:grab}
.brazil-map.is-dragging{cursor:grabbing}
.brazil-shape{fill:#dfcdbb;stroke:#c8b39d;stroke-width:1.7;stroke-linejoin:round}
.map-location{cursor:pointer;outline:none}
.map-leader{stroke:#91603d;stroke-width:1;stroke-dasharray:2 2;pointer-events:none}
.map-location .marker-hit{fill:transparent;stroke:none}
.map-location .marker-dot{fill:#000019;stroke:#fff;stroke-width:2}
.map-location .marker-label{fill:#fff;stroke:none;font:700 7px/1 "DM Sans",sans-serif;text-anchor:middle;dominant-baseline:central;pointer-events:none}
.map-location.is-active .marker-dot{fill:#c16a36;stroke:#fff;stroke-width:2.5}
.map-location:focus-visible .marker-dot{stroke:#edb876;stroke-width:4}
.map-instructions{margin:2px 0 0;color:#716b63;font-size:8px;line-height:1.3}
.coverage-citylist{min-width:0}
.coverage-citylist h3{margin:0 0 7px;font-size:11px;line-height:1.3}
.city-list{display:grid;grid-template-columns:1fr;gap:4px;margin:0;padding:0;list-style:none}
.city-list li{min-width:0;padding:0}
.city-list button{display:flex;align-items:flex-start;gap:6px;width:100%;border:0;padding:2px 0;background:transparent;color:#27231f;text-align:left;font:500 9.5px/1.3 "DM Sans",sans-serif;cursor:pointer}
.city-list button:hover,.city-list button.is-active{color:#9c572d}
.city-index{flex:0 0 16px;display:grid;width:16px;height:16px;place-items:center;border-radius:50%;background:#000019;color:#fff;font-size:8px;font-weight:700}
.city-list button.is-active .city-index{background:#c16a36}
.city-name{min-width:0}
.coverage-admin-link{display:inline-flex;align-items:center;gap:5px;margin-top:9px;color:#513820;font-size:9px;font-weight:700;text-underline-offset:3px}
.coverage-note{margin-top:2px}
.review-strip{grid-template-columns:minmax(220px,.72fr) minmax(0,2fr);align-items:start}
.review-cards article{justify-content:flex-start}
.review-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.review-author{margin:9px 0 0;color:#282522;font-size:10px;font-weight:700}
.review-card-text{margin:7px 0;font-size:11px;line-height:1.45}
.review-card-time{color:var(--muted);font-size:9px}
.review-card-link{align-self:flex-start;margin-top:auto;padding-top:7px;color:#514332;font-size:9px;text-underline-offset:2px}
.review-empty{grid-column:1/-1;display:flex;align-items:center;min-height:112px;padding:18px;background:#fff;color:#716b63;font-size:11px;line-height:1.5}
.review-cards .review-stars{font-size:11px}
.review-count{min-height:14px}
.google-maps-attribution{font-family:Roboto,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;color:#5e5e5e;white-space:nowrap}
.cta{padding:40px 20px}
.cta .eyebrow{margin-bottom:10px}
.cta h2{max-width:850px;margin:0 auto;font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-2px}
.cta .btn{margin-top:15px}
footer{grid-template-columns:1fr 1.25fr 1.05fr .82fr 1.25fr}
.footer-social{display:block}
.footer-social h3{margin-bottom:11px}
.footer-social-icons{display:flex;align-items:center;gap:10px}
.footer-social-icons a{display:grid;width:31px;height:31px;place-items:center;margin:0;border:1px solid #ffffff6b;border-radius:50%;color:#fff}
.footer-social-icons a:hover{background:#ffffff18}
.footer-social-icons svg{display:block;width:17px;height:17px}
.footer-lead-form{display:grid;gap:5px;margin-top:15px;padding-top:12px;border-top:1px solid #ffffff30}
.footer-lead-form h4{margin:0 0 3px;color:#fff;font:600 11px/1.3 "DM Sans",sans-serif}
.footer-lead-form label{margin-top:3px;color:#dedde5;font-size:9px}
.footer-lead-form input{width:100%;min-width:0;min-height:33px;border:1px solid #ffffff40;border-radius:3px;padding:7px 8px;background:#ffffff0c;color:#fff;font:400 11px "DM Sans",sans-serif}
.footer-lead-form input::placeholder{color:#aaa9b4}
.footer-lead-form input:focus{outline:2px solid #c69a78;outline-offset:1px}
.footer-lead-form button{min-height:34px;margin-top:4px;border:1px solid #fff;border-radius:3px;padding:7px 9px;background:transparent;color:#fff;font:600 10px/1.3 "DM Sans",sans-serif;cursor:pointer}
.footer-lead-form button:hover{background:#ffffff18}
.footer-lead-form small{color:#b9b8c4;font-size:8px;line-height:1.35}
.whatsapp{right:22px;bottom:22px;width:max-content;max-width:min(380px,calc(100vw - 36px));min-height:56px;height:auto;padding:8px 13px;border:1px solid #ffffffa8;border-radius:6px;background:rgba(0,0,25,.48);backdrop-filter:blur(10px);color:#fff;box-shadow:0 7px 24px #0004}
.whatsapp svg{flex:0 0 30px;width:30px;height:30px;color:#2ddd78}
.whatsapp-copy{display:grid;gap:2px;min-width:0;max-width:250px;text-align:left}
.whatsapp-copy strong{font-size:12px;line-height:1.25;overflow-wrap:anywhere}
.whatsapp-copy small{font-size:9px;line-height:1.25;color:#e4e3e8}
.simulator-panel{padding:14px}
.simulator-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0 8px}
.simulator-target{min-width:0;border:1px solid #c9c1b6;padding:9px;background:#fff;color:#16161a;text-align:left;cursor:pointer;font:inherit}
.simulator-target span,.simulator-target small{display:block}
.simulator-target span{font-size:10px;font-weight:700;line-height:1.25}
.simulator-target small{margin-top:4px;overflow:hidden;color:#6b675f;font-size:9px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.simulator-target[aria-pressed="true"]{border-color:var(--ammo-navy);background:var(--ammo-navy);color:#fff}
.simulator-target[aria-pressed="true"] small{color:#d9d8e1}
.simulator-target:focus-visible,.simulator-reset:focus-visible{outline:3px solid #ae744c;outline-offset:2px}
.simulator-status{min-height:28px;margin:0 0 8px;color:#625e58;font-size:9px;line-height:1.4}
.simulator-stage{position:relative;height:auto;min-height:0;aspect-ratio:1672/941;overflow:hidden;background:#e7e1d8;border:1px solid #ded8ce}
.simulator-photo,.simulator-overlays{position:absolute;inset:0;display:block;width:100%;height:100%}
.simulator-photo{object-fit:contain}
.simulator-overlays{pointer-events:none}
.simulator-material-overlay{opacity:0;mix-blend-mode:multiply;transition:opacity .25s ease}
.simulator-material-overlay.is-applied{opacity:.82}
.simulator-selection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-height:0;padding-top:8px}
.simulator-choice{display:flex;align-items:center;min-width:0;gap:8px;padding:7px;background:#fff}
.simulator-choice>span:last-child{display:grid;min-width:0;gap:2px}
.simulator-choice strong{font-size:9px;line-height:1.2}
.simulator-choice small{overflow:hidden;color:#6b675f;font-size:8px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.selection-swatch{flex:0 0 34px;width:34px;height:30px;border:1px solid #d4cdc2;background-size:cover;background-position:center}
.selection-swatch.original-upper{background:linear-gradient(135deg,#755139 0%,#a77343 45%,#60422f 100%)}
.selection-swatch.original-lower{background:linear-gradient(135deg,#696b6c 0%,#383a3d 55%,#777a7b 100%)}
.simulator-reset{display:block;margin:8px 0 0 auto;border:0;padding:4px 0;background:transparent;color:#514b43;font:inherit;font-size:9px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.simulator-panel.is-expanded .simulator-stage{height:min(66vh,720px);aspect-ratio:auto}
.simulator-panel.is-expanded .simulator-target span{font-size:14px}
.simulator-panel.is-expanded .simulator-target small{font-size:11px}
.simulator-panel.is-expanded .simulator-status{font-size:12px}
.simulator-panel.is-expanded .simulator-choice strong{font-size:12px}
.simulator-panel.is-expanded .simulator-choice small{font-size:10px}
@media(max-width:1050px){
 .coverage-card{min-height:430px}
 .coverage-locations{grid-template-columns:minmax(145px,.85fr) minmax(0,1.15fr)}
 .city-list button{font-size:9px}
 footer{grid-template-columns:1fr 1.25fr 1.1fr}
 footer .footer-links,footer .footer-social{padding-top:6px}
}
@media(max-width:850px){
 .projects{grid-auto-rows:auto}
 .project,.project.large{grid-row:auto;height:360px}
 .process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .process-step:nth-child(2){border-right:0}
 .process-step:nth-child(-n+2){border-bottom:1px solid #c6bfb4}
 .coverage-card{min-height:0}
 .coverage-locations{grid-template-columns:minmax(170px,.85fr) minmax(0,1.15fr)}
 .brazil-map{max-height:320px}
 .city-list button{font-size:10px}
 .review-strip{grid-template-columns:1fr}
 .review-note{grid-column:1}
 .footer-lead-form{max-width:360px}
 .whatsapp{right:14px;bottom:14px;max-width:calc(100vw - 28px);padding:8px 10px}
 .whatsapp-copy strong{font-size:11px}
 .simulator-panel.is-expanded .simulator-stage{height:60vh;aspect-ratio:auto}
}
@media(max-width:520px){
 .project,.project.large{height:330px}
 .process-steps{grid-template-columns:1fr}
 .process-step{grid-template-columns:24px 30px minmax(0,1fr);padding:13px 8px;border-right:0;border-bottom:1px solid #c6bfb4}
 .process-step:last-child{border-bottom:0}
 .coverage-locations{grid-template-columns:1fr}
 .coverage-map-shell{width:100%}
 .brazil-map{width:min(100%,280px);max-height:300px;margin:0 auto}
 .coverage-citylist{width:100%}
 .city-list{grid-template-columns:1fr 1fr;column-gap:12px}
 .city-list button{font-size:9px}
 .review-cards{grid-template-columns:1fr}
 .review-empty{min-height:76px}
 .cta{padding:32px 18px}
 .cta h2{font-size:34px;letter-spacing:-1.4px}
 .footer-social{max-width:none}
 .footer-lead-form{max-width:none}
 .whatsapp{min-height:50px}
 .whatsapp svg{flex-basis:27px;width:27px;height:27px}
 .whatsapp-copy{max-width:210px}
 .simulator-selection{grid-template-columns:1fr}
 .simulator-choice{min-height:42px}
 .simulator-target{padding:8px 7px}
 .simulator-target span{font-size:9px}
 .simulator-panel.is-expanded .simulator-stage{height:56vh}
}
@media(prefers-reduced-motion:reduce){
 .simulator-material-overlay{transition:none}
}


.footer-legal{display:inline-flex;gap:12px;margin-left:14px}.footer-legal a{color:#dddce5;font-size:10px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:520px){.footer-legal{margin-left:0;margin-top:8px;flex-wrap:wrap}}
