/* ==========================================================================
   Fotomosaico — estilos propios sobre Canvas 8 (versión del CDN, oct 2026).
   Los iconos Bootstrap Icons se cargan por CDN desde el layout.
   ========================================================================== */

:root{
    --cnvs-font-size-h1:2.5rem;
    --cnvs-header-height:90px;
    --cnvs-header-height-shrink:60px;
    --cnvs-body-font:"Lato", sans-serif;
    --cnvs-primary-font:"Montserrat", sans-serif;
    --cnvs-secondary-font:"Montserrat", sans-serif;
    --cnvs-themecolor:#6ba21f;
    --cnvs-secondcolor:rgb(52, 115, 35);
    --cnvs-themecolor-rgb:131, 179, 65;
    --cnvs-usermenu-color:#37434e;
    --cnvs-footer-top-border:#fff;
    --cnvs-content-padding:4rem
}
.heading-block{
    --cnvs-heading-block-border:none;
    margin:0
}
.heading-block>span:not(.before-heading){
    font-weight:500;
    letter-spacing:1px;
    margin:0
}
.fbox-content p{
    color:var(--cnvs-contrast-800)
}
#copyrights{
    background-color:#fff
}
.hashtag-fotomosaico{
    font-family:var(--cnvs-primary-font);
    font-size:.9rem
}
.copyrights-credits{
    font-size:12px
}
.fbox-content h2{
    font-size:1.4rem;
    font-weight:var(--cnvs-featured-box-font-weight);
    font-family:var(--cnvs-primary-font);
    text-transform:var(--cnvs-featured-box-font-tt);
    margin-bottom:0;
    color:var(--cnvs-featured-box-font-color)
}
.accordion{
    --cnvs-accordion-border-size:0
}
.pulse-button{
    animation:pulse 1.5s infinite;
    --shadow-color:var(--cnvs-themecolor)
}
.pulse-button:hover{
    background-color:var(--cnvs-secondcolor)
}
@keyframes pulse{
    0%{
        transform:scale(1);
        box-shadow:0 0 0 0 var(--shadow-color)
    }
    70%{
        transform:scale(1.01);
        box-shadow:0 0 0 12px #fff0
    }
    100%{
        transform:scale(1);
        box-shadow:0 0 0 0 #fff0
    }
}
.button-process{
    color:var(--cnvs-btn-color-dark);
    aspect-ratio:1 / 1;
    transition:background-color 0.3s ease;
    border:2px solid #000
}
@media (max-width:767.98px){
    .button-process span{
        font-size:.75rem;
        line-height:1
    }
    .button-process i{
        font-size:1.5rem;
        margin-bottom:.25rem
    }
}
@media (min-width:768px){
    .button-process{
        aspect-ratio:auto
    }
    .button-process i{
        margin-right:.5rem;
        font-size:1rem
    }
    .button-process span{
        font-size:.9rem;
        line-height:1.2
    }
}
.button-process:hover{
    border:none;
    color:#fff;
    background-color:var(--cnvs-themecolor)!important
}
.button-process-active{
    border:none;
    color:#fff;
    background-color:var(--cnvs-themecolor)!important
}
.grecaptcha-badge{
    visibility:hidden
}
.engagebay-forms form{
    z-index:0!important
}
.engagebay-forms .outer-branding{
    display:none!important
}
.iconlist li{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:start;
    gap:.5em;
    white-space:normal
}
#logo-header{
    position:relative;
    display:flex;
    align-items:center;
    margin-right:auto;
    max-height:100%
}
.fotomosaico-logo{
    background-image:url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20300%2039.5%22%3E%3Cpath%20d%3D%22M7.5%2C16.4h17.8v7H7.5v16.1H0V0h28.2v7H7.5v9.4Z%22%2F%3E%3Cpath%20d%3D%22M55.5%2C24.7c0%2C8.5-6.5%2C14.8-14.3%2C14.8s-14.3-6.3-14.3-14.8%2C6.4-15%2C14.3-15%2C14.3%2C6.5%2C14.3%2C15ZM48.1%2C24.7c0-4.9-3.1-8.3-7-8.3s-7%2C3.4-7%2C8.3%2C3.1%2C8.1%2C7%2C8.1%2C7-3.3%2C7-8.1Z%22%2F%3E%3Cpath%20d%3D%22M71.3%2C39.4c-8.3.9-12.7-4.1-12.7-11.9v-10h-3.4v-6.5h3.4V3.8h7.3v7.2h5.1v6.5h-5.1v10c0%2C4%2C1.8%2C5.5%2C5.5%2C5.2v6.6Z%22%2F%3E%3Cpath%20d%3D%22M100.4%2C24.7c0%2C8.5-6.5%2C14.8-14.3%2C14.8s-14.3-6.3-14.3-14.8%2C6.4-15%2C14.3-15%2C14.3%2C6.5%2C14.3%2C15ZM93.1%2C24.7c0-4.9-3.1-8.3-7-8.3s-7%2C3.4-7%2C8.3%2C3.1%2C8.1%2C7%2C8.1%2C7-3.3%2C7-8.1Z%22%2F%3E%3Cpolygon%20points%3D%22132.1%2039.5%20132.1%2015.3%20125.4%2039.5%20116.7%2039.5%20109.9%2015.3%20109.9%2039.5%20101.6%2039.5%20101.6%200%20113.4%200%20121%2027.1%20128.5%200%20140.5%200%20140.5%2039.5%20132.1%2039.5%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M156.6%2C39.5c-8.4%2C0-14.9-6.8-14.9-15.4s6.5-15.6%2C14.9-15.6%2C15%2C6.8%2C15%2C15.6-6.6%2C15.4-15%2C15.4ZM156.6%2C16.4c-3.7%2C0-6.4%2C3.3-6.4%2C7.7s2.8%2C7.5%2C6.4%2C7.5%2C6.4-3.2%2C6.4-7.5-2.8-7.7-6.4-7.7Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M185.7%2C39.5c-7.6%2C0-13.1-4.1-14.1-10.5v-.7c0%2C0%2C8.4%2C0%2C8.4%2C0l.2.4c.8%2C2%2C3.4%2C2.9%2C5.5%2C2.9s4.5-.8%2C4.5-1.9-.3-1.6-5.4-2.4c-4.3-.7-12.4-1.9-12.4-9.1s4-9.7%2C12.7-9.7%2C11.9%2C3.7%2C12.9%2C9.4v.7c.1%2C0-8.6%2C0-8.6%2C0v-.4c-.5-1.2-2.1-2-4.3-2s-4.1%2C1-4.1%2C1.7c0%2C1%2C1.8%2C1.4%2C5.1%2C1.9%2C6.7%2C1.1%2C12.7%2C2.6%2C12.7%2C9.5s-5.4%2C10.2-13.1%2C10.2Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M211.8%2C39.5c-6%2C0-12.1-3-12.1-9.8s6.5-8.7%2C12.2-9.2c4.9-.5%2C7.6-1%2C7.6-2.7s-1.6-2.1-4.6-2.1-5.1%2C1-5.7%2C3.1v.4h-8.6v-.7c.9-6%2C6.5-10%2C14-10%2C12.1%2C0%2C13%2C7.9%2C13%2C10.3v14.8c0%2C1.3.4%2C3.4.8%2C4.4l.3.8h-7.9l-.2-.4c-.2-.5-.4-1-.6-1.7-2.1%2C1.7-4.9%2C2.6-8.3%2C2.6ZM219.7%2C25.7c-1.4.7-3.4%2C1.1-6.2%2C1.4-3.7.4-5.3%2C1.2-5.3%2C2.7s1.7%2C2.1%2C4.2%2C2.1%2C7.3-.4%2C7.3-4.5v-1.6Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M229.6%2C39.5V9.9h8.5v29.6h-8.5ZM229.6%2C8V0h8.5v8h-8.5Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M254.6%2C39.5c-8.7%2C0-15.3-6.6-15.3-15.4s6.6-15.6%2C15.3-15.6%2C12.6%2C4.1%2C14.3%2C10.7l.2.8h-8.9l-.2-.3c-.8-1.6-2.8-3.3-5.4-3.3-3.7%2C0-6.7%2C3.5-6.7%2C7.7s3%2C7.6%2C6.7%2C7.6%2C4.5-1.4%2C5.4-3.3l.2-.3h8.9l-.2.8c-1.7%2C6.7-7.1%2C10.7-14.3%2C10.7Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3Cpath%20d%3D%22M285%2C39.5c-8.4%2C0-14.9-6.8-14.9-15.4s6.5-15.6%2C14.9-15.6%2C15%2C6.8%2C15%2C15.6-6.6%2C15.4-15%2C15.4ZM285%2C16.4c-3.7%2C0-6.4%2C3.3-6.4%2C7.7s2.8%2C7.5%2C6.4%2C7.5%2C6.4-3.2%2C6.4-7.5-2.8-7.7-6.4-7.7Z%22%20fill%3D%22%23eaaa00%22%2F%3E%3C%2Fsvg%3E);
    background-size:contain;
    background-repeat:no-repeat
}
@media (min-width:800px){
    .fotomosaico-logo{
        width:150px;
        height:21px
    }
}
@media (max-width:800px){
    .fotomosaico-logo{
        width:110px;
        height:16px
    }
}
.menu-item .sub-menu-trigger{
    top:14px;
    font-weight:bolder
}
.fotomosaico-osd{
    width:100%;
    height:60vh;
    color:#333;
    background-color:#fff0
}
@media (max-width:767.98px){
    .fotomosaico-osd{
        height:50vh
    }
}
#zoom-in{
    background-image:url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2028%2028%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2214%22%20r%3D%2214%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20x%3D%2212.5%22%20y%3D%227.9%22%20width%3D%223%22%20height%3D%2212.3%22%20fill%3D%22%23010101%22%2F%3E%3Crect%20x%3D%227.8%22%20y%3D%2212.5%22%20width%3D%2212.3%22%20height%3D%223%22%20fill%3D%22%23010101%22%2F%3E%3C%2Fsvg%3E)
}
#zoom-out{
    background-image:url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2028%2028%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2214%22%20r%3D%2214%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20x%3D%227.8%22%20y%3D%2212.5%22%20width%3D%2212.3%22%20height%3D%223%22%20fill%3D%22%23010101%22%2F%3E%3C%2Fsvg%3E)
}
#home{
    background-image:url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2028%2028%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2214%22%20r%3D%2214%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M19.4%2C19.4h-2.7v2.2h4.9v-4.9h-2.1v2.7ZM8.6%2C16.7h-2.1v4.9h4.9v-2.2h-2.7v-2.7ZM8.6%2C8.6h2.7v-2.2h-4.9v4.9h2.1v-2.7ZM19.4%2C6.4h-2.7v2.2h2.7v2.7h2.1v-4.9h-2.1ZM18%2C15.8v-5.7h-7.9v7.9h7.9v-2.2ZM15.8%2C15.8h-3.6v-3.6h3.6v3.6Z%22%20fill%3D%22%23010101%22%2F%3E%3C%2Fsvg%3E)
}
#full-page{
    background-image:url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%2028%2028%22%3E%3Ccircle%20cx%3D%2214%22%20cy%3D%2214%22%20r%3D%2214%22%20fill%3D%22%23fff%22%2F%3E%3Cpolygon%20points%3D%2219.4%206.5%2016.7%206.5%2016.7%208.6%2017.8%208.6%2014%2012.5%2010.2%208.6%2011.3%208.6%2011.3%206.5%208.6%206.5%206.5%206.5%206.5%208.6%206.5%2011.4%208.6%2011.4%208.6%2010.1%2012.5%2014%208.6%2017.9%208.6%2016.6%206.5%2016.6%206.5%2019.4%206.5%2021.5%208.6%2021.5%2011.3%2021.5%2011.3%2019.4%2010.1%2019.4%2014%2015.5%2017.9%2019.4%2016.7%2019.4%2016.7%2021.5%2019.4%2021.5%2021.5%2021.5%2021.5%2019.4%2021.5%2016.6%2019.4%2016.6%2019.4%2017.9%2015.5%2014%2019.4%2010.1%2019.4%2011.4%2021.5%2011.4%2021.5%208.6%2021.5%206.5%2019.4%206.5%22%20fill%3D%22%23010101%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E)
}
#osd-controls{
    text-align:right;
    position:absolute;
    bottom:8px;
    right:8px;
    color:#fff;
    z-index:10;
    touch-action:manipulation
}
.osd-btn{
    opacity:.6;
    touch-action:manipulation;
    width:33px;
    height:33px;
    margin-right:8px;
    display:inline-block;
    vertical-align:top
}
.osd-btn:hover{
    opacity:1;
    touch-action:manipulation
}
.osd-btn:active{
    opacity:.85;
    touch-action:manipulation
}
.fileuploader-popup-meta{
    visibility:hidden
}
@media (max-width:768px){
    .fileuploader-popup-buttons{
        bottom:50px!important
    }
}
@media (max-width:768px){
    .fileuploader-popup-footer{
        bottom:120px!important
    }
}
.fileuploader-input-button,.fileuploader-popup .fileuploader-popup-header .fileuploader-popup-button.button-success{
    background:var(--cnvs-themecolor)!important
}
.home-bg{
    background:linear-gradient(-45deg,#ee7752,#e73c7e,#23a6d5,#23d5ab);
    background-size:400% 400%;
    animation:home-gradient 15s ease infinite
}
@keyframes home-gradient{
    0%{
        background-position:0% 50%
    }
    50%{
        background-position:100% 50%
    }
    100%{
        background-position:0% 50%
    }
}
.slogan{
    font-family:"Montserrat",Times,serif
}
.cart:not(.cart-totals) .cart_item{
    border:none
}
.portfolio-image{
    width:100%;
    overflow:hidden;
    position:relative
}
.portfolio-image img{
    width:100%;
    height:auto;
    display:block;
    transition:transform 0.3s ease-in-out!important
}
.portfolio-image:hover img{
    transform:scale(1.1)
}
