.soperas-page{background:#f7f2e8;color:#202e22}
.soperas-nav{display:flex;align-items:center;gap:27px;color:#ede0c5;font-size:12px;font-weight:700}.soperas-nav a:hover{color:#efcc8d}.soperas-nav .nav-cta{border:1px solid #ba995b;color:#f0d49d;padding:13px 18px}
.soperas-hero{background:radial-gradient(circle at 78% 30%,#342b1c,#0e1410 66%);color:#f8f0df;padding:110px 0 102px;border-bottom:1px solid #b3915a}.soperas-hero .section-kicker{color:#d4ad6e}
.soperas-hero h1{font:400 clamp(54px,7.5vw,103px)/1.1 var(--serif);margin:28px 0;letter-spacing:-.055em}.soperas-hero h1 em{color:#e3c089}.soperas-hero p{max-width:660px;font-size:16px;line-height:1.85;color:#d0cbbb}.soperas-hero-meta{display:flex;gap:30px;flex-wrap:wrap;margin-top:40px;font-size:11px;letter-spacing:.04em;color:#debe84}
.soperas-gallery{padding:95px 0}.soperas-gallery-title{display:grid;grid-template-columns:1fr 320px;gap:45px;align-items:end}.soperas-gallery-title h2{font:400 clamp(40px,4.9vw,65px)/1.15 var(--serif);letter-spacing:-.04em;margin:15px 0 10px}.soperas-gallery-title h2 em{color:#a17c48}.soperas-gallery-title p{font-size:13px;line-height:1.9;color:#667260}
.soperas-controls{display:flex;align-items:center;gap:20px;justify-content:space-between;margin:40px 0 16px;padding:16px;border:1px solid #d5c8b1;background:#fffdf7;flex-wrap:wrap}
.soperas-controls>label{flex:1 1 180px}.soperas-controls input{width:100%;padding:13px 12px;border:1px solid #ccb78f;background:#fcf8ee;color:#223a29;min-width:130px}
.soperas-filters{display:flex;gap:8px;flex-wrap:wrap}.soperas-filters button{border:1px solid #ab946c;padding:12px 13px;background:#faf5e9;color:#384634;font-size:11px;font-weight:700}.soperas-filters button.active,.soperas-filters button:hover{background:#1b3525;color:#f6d9a7}
.soperas-count{font-size:12px;font-weight:800;color:#5f664f;padding:12px 0 20px}
.soperas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sopera-photo-card{background:#fffdf7;border:1px solid #d7c9b4;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .2s,box-shadow .2s}
.sopera-photo-card:hover{transform:translateY(-3px);box-shadow:0 13px 28px #2b2c171f}
.sopera-photo-button{border:0;background:#38352b;cursor:pointer;padding:0;position:relative;display:block;width:100%;overflow:hidden}
.sopera-photo-button img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .3s}.sopera-photo-button:hover img{transform:scale(1.04)}
.sopera-photo-button:after{content:'AMPLIAR +';position:absolute;bottom:12px;right:12px;color:#f8e1b9;background:#1b251be0;padding:8px 10px;font:800 9px var(--font);letter-spacing:.1em}
.sopera-caption{padding:19px;display:flex;justify-content:space-between;gap:10px;align-items:center}
.sopera-caption strong{font:500 20px var(--serif)}.sopera-caption span{font-size:10px;color:#927140;letter-spacing:.09em}
.sopera-caption small{display:block;margin-top:5px;font-size:11px;color:#718070}
.soperas-notice{margin-top:42px;background:#1a3425;color:#e9e8d7;border:1px solid #bc995a;padding:32px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.soperas-notice h3{font:500 28px var(--serif);margin:0 0 10px;color:#eed09c}.soperas-notice p{font-size:13px;line-height:1.8;max-width:770px;margin:0}
.soperas-notice a{white-space:nowrap;background:#eac993;color:#17291c;font-size:12px;font-weight:800;padding:15px 20px}
#soperas-dialog{width:min(940px,calc(100% - 24px));max-height:92vh;border:1px solid #c7aa75;background:#fffaf0;padding:0;color:#243429}
#soperas-dialog::backdrop{background:#020805df;backdrop-filter:blur(4px)}
.soperas-dialog-close{position:absolute;right:10px;top:10px;z-index:5;border:0;background:#15251b;color:#fff;font-size:29px;width:42px;height:42px;cursor:pointer}
.soperas-dialog-inner{display:grid;grid-template-columns:1.2fr .8fr}
#soperas-dialog-photo{width:100%;max-height:80vh;min-height:330px;object-fit:contain;background:#1f271f}
.soperas-dialog-details{padding:50px 24px 25px;display:flex;flex-direction:column;align-items:start}
.soperas-dialog-details>span{font-size:10px;letter-spacing:.17em;color:#9f7f4e;font-weight:800}
.soperas-dialog-details h2{font:500 36px/1.15 var(--serif);margin:20px 0 10px}
.soperas-dialog-details p{font-size:13px;line-height:1.8;color:#687468}
.soperas-dialog-details a{background:#1e3829;color:#ebd09f;padding:14px 17px;font-size:12px;font-weight:700;margin-top:auto}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:1024px){.soperas-grid{grid-template-columns:repeat(3,1fr)}.soperas-gallery-title{grid-template-columns:1fr}}
@media(max-width:730px){.soperas-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sopera-photo-button img{height:210px}.soperas-dialog-inner{grid-template-columns:1fr}.soperas-dialog-details{padding:20px}.soperas-notice{align-items:start;flex-direction:column}.soperas-hero{padding:75px 0}.soperas-nav{gap:12px}.soperas-nav a{font-size:10px}.soperas-nav a:nth-child(2){display:none}}
@media(max-width:480px){.soperas-grid{grid-template-columns:1fr}.sopera-photo-button img{height:290px}.soperas-hero h1{font-size:55px}}
@media(prefers-reduced-motion:reduce){.sopera-photo-card,.sopera-photo-button img{transition:none}}
.soperas-view-toggle{display:flex;align-items:center;gap:8px;color:#354e3d;font-size:12px;font-weight:750;white-space:nowrap}.soperas-view-toggle input{width:18px;height:18px;accent-color:#284936}
