/* Home: rimuove i vincoli dei wrapper legacy Gutenberg. */
.sammy-home .wp-block-group__inner-container{display:contents!important}
.sammy-home .sammy-wrap{width:100%;max-width:1160px;margin-left:auto!important;margin-right:auto!important}
.sammy-home .sammy-about{max-width:850px}
.sammy-home .sammy-split>*,.sammy-home .sammy-services>*,.sammy-home .sammy-values>*,.sammy-home .sammy-gallery>*{min-width:0;width:auto!important;max-width:none!important;margin:0!important}
.sammy-home .sammy-card,.sammy-home .sammy-value,.sammy-home .sammy-work{box-sizing:border-box}
.sammy-home p,.sammy-home h1,.sammy-home h2,.sammy-home h3{overflow-wrap:break-word}
.sm-slider{position:relative;background:#292929;color:white;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.sm-slide{background-size:cover;background-position:center;min-height:570px;padding:95px max(28px,calc((100% - 1160px)/2)) 105px;box-sizing:border-box}
.sm-slide[hidden]{display:none!important}.sm-slide-copy{max-width:760px}.sm-slider .sm-slide h1,.sm-slider .sm-slide h2{color:#fff;font-size:clamp(35px,4.8vw,64px);line-height:1.08;letter-spacing:-.03em;margin:0 0 24px}.sm-slider .sm-slide p{font-size:19px;line-height:1.7;max-width:650px}.sm-slider .sm-slide .sm-kicker{font-size:11px;font-weight:700;letter-spacing:.13em;color:#f6c4ac}.sm-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.sm-actions a{padding:13px 22px;border:1px solid #fff;color:#fff;text-decoration:none;font-size:16px;font-weight:650;border-radius:3px}.sm-actions a:first-child{background:#b64f2c;border-color:#b64f2c}.sm-actions a:hover{background:#913c20}.sm-slider-controls{position:absolute;bottom:25px;right:max(28px,calc((100% - 1160px)/2));display:flex;align-items:center;gap:15px}.sm-slider-controls button{padding:10px 16px;background:#29292999;color:white;border:1px solid #ffffff88;font-size:20px;cursor:pointer}.sm-slider a:focus-visible,.sm-slider button:focus-visible{outline:3px solid #f6c4ac;outline-offset:4px}.sm-gallery-more{padding:55px 24px;text-align:center;background:#f7f5f2}.sm-gallery-more p{max-width:700px;margin:16px auto}.sm-gallery-more a{display:inline-block;background:#b64f2c;color:white;padding:13px 23px;border-radius:3px;text-decoration:none;font-weight:650}.sm-kicker{font-size:11px;letter-spacing:.13em;font-weight:700;color:#a44425}
.ss-landing .sm-page-cover{background-size:cover;background-position:center;color:white;padding-top:90px;padding-bottom:90px}.ss-landing .sm-page-cover h1,.ss-landing .sm-page-cover h2{color:white}.ss-landing .sm-page-cover .sv-kicker{color:#f6c4ac}.ss-landing .sm-page-cover .sv-outline,.ss-landing .sm-page-cover .sg-categories a{color:#fff;border-color:#fff}
@media(max-width:650px){
body.page-template-page-home .site-content,body.page-template-page-home .site-main,body.page-template-page-home article{padding:0!important;margin:0!important;width:100%;max-width:none}
.sammy-home .sammy-section{padding:44px 22px!important}.sammy-home .sammy-wrap{width:100%!important;max-width:none!important}.sammy-home .sammy-services,.sammy-home .sammy-values,.sammy-home .sammy-gallery{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:22px!important;margin-top:26px}.sammy-home .sammy-card{padding:25px!important}.sammy-home h2{font-size:28px}.sammy-home h3{font-size:22px}.sammy-home p{font-size:17px;line-height:1.7}.sammy-home .sammy-value{padding:0}.sammy-home .sammy-work figure,.sammy-home .sammy-work img{width:100%!important;max-width:none!important}.sammy-home .sammy-work img{height:310px!important}.sm-slide{padding:55px 22px 90px;min-height:490px}.sm-slider .sm-slide p{font-size:17px}.sm-slider-controls{right:22px}.ss-landing .sm-page-cover{padding:52px 22px}.sammy-home .wp-block-buttons{gap:12px}.sammy-home .wp-block-button{max-width:100%}
}

/* Composizione dello slider */
.sm-slide {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    animation: sm-reveal .65s ease both;
}

.sm-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(115deg, transparent 72%, rgba(182,79,44,.48) 72%, rgba(182,79,44,.15) 90%, transparent 90%),
        repeating-linear-gradient(135deg, transparent 0 22px, rgba(255,255,255,.035) 22px 23px);
}

.sm-slide-copy {
    position: relative;
    border-left: 3px solid #d57b53;
    padding-left: 28px;
}

.sm-slide-copy > * {
    animation: sm-copy-in .65s ease both;
}

.sm-slide-copy > :nth-child(2) { animation-delay: .08s; }
.sm-slide-copy > :nth-child(3) { animation-delay: .16s; }
.sm-slide-copy > :nth-child(4) { animation-delay: .24s; }

.sm-slider-controls {
    padding: 8px 12px;
    border: 1px solid #ffffff40;
    border-radius: 5px;
    background: #202020c9;
    gap: 12px;
}

.sm-slider-controls [data-sm-status] {
    min-width: 40px;
    text-align: center;
    font-size: 13px;
}

.sm-dots {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sm-slider-controls .sm-dots button {
    width: 10px;
    height: 10px;
    min-width: 10px;
    padding: 0;
    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
}

.sm-slider-controls .sm-dots button[aria-current="true"] {
    background: #edaa8e;
    border-color: #edaa8e;
}

.sm-slider-controls .sm-pause {
    font-size: 16px;
    min-width: 44px;
}

@keyframes sm-reveal {
    from { opacity: .3; }
    to { opacity: 1; }
}

@keyframes sm-copy-in {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 650px) {
    .sm-slide-copy {
        padding-left: 17px;
    }

    .sm-slide {
        min-height: 550px;
        padding-bottom: 115px;
    }

    .sm-slider-controls {
        left: 22px;
        right: auto;
        max-width: calc(100% - 44px);
        gap: 9px;
    }

    .sm-slider-controls button {
        padding: 9px 12px;
    }

    .sm-slide::before {
        background: linear-gradient(
            115deg,
            transparent 80%,
            rgba(182,79,44,.3) 80%
        );
    }
}

@media (prefers-reduced-motion: reduce) {
    .sm-slide,
    .sm-slide-copy > * {
        animation: none;
    }
}

/* Controlli essenziali: frecce e pallini senza riquadri. */
.sm-slider .sm-slider-controls {
    left: 50%;
    right: auto;
    bottom: 24px;
    transform: translateX(-50%);
    width: max-content;
    max-width: calc(100% - 36px);
    padding: 0;
    gap: 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.sm-slider .sm-slider-controls button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    min-width: 36px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    color: #fff;
    box-shadow: none;
}

.sm-slider .sm-slider-controls button:hover {
    background: transparent;
    opacity: .75;
}

.sm-slider-controls svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.sm-slider .sm-dots {
    gap: 2px;
}

.sm-slider .sm-slider-controls .sm-dots button {
    width: 30px;
    height: 36px;
    min-width: 30px;
    border: 0;
    background: transparent;
}

.sm-slider .sm-dots button::before {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    transition: background .3s ease;
}

.sm-slider .sm-dots button[aria-current="true"]::before {
    background: #fff;
}

.sm-slider .sm-slider-controls .sm-pause {
    min-width: 30px;
    width: 30px;
    font-size: 14px;
}

.sm-slider [data-sm-status] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

.sm-slider .sm-slide {
    animation-duration: 1.5s;
}

.sm-slider .sm-slide-copy > * {
    animation-duration: 1.4s;
}

.sm-slide-copy > :nth-child(2) { animation-delay: .2s; }
.sm-slide-copy > :nth-child(3) { animation-delay: .4s; }
.sm-slide-copy > :nth-child(4) { animation-delay: .6s; }

@media (prefers-reduced-motion: reduce) {
    .sm-slider .sm-slide,
    .sm-slider .sm-slide-copy > * {
        animation: none;
    }
}

/* Controlli allineati alla linea verticale del titolo. */
.sm-slider .sm-slider-controls {
    left: max(28px, calc((100% - 1160px) / 2));
    right: auto;
    transform: none;
}

/* Mantiene la pausa accessibile da tastiera, senza icona visibile. */
.sm-slider .sm-slider-controls .sm-visually-hidden-control {
    position: absolute;
    width: 1px;
    height: 1px;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

.sm-slider .sm-slider-controls .sm-visually-hidden-control:focus-visible {
    position: static;
    width: 36px;
    height: 36px;
    min-width: 36px;
    clip-path: none;
    overflow: visible;
}

@media (max-width: 650px) {
    .sm-slider .sm-slider-controls {
        left: 22px;
        right: auto;
        transform: none;
    }
}
