/* Tattoo Studio Rimini – stili aggiuntivi (menu, avviso privacy, mappa, contatti, WhatsApp). Nessuna dipendenza esterna. */

/* Senza JavaScript gli elementi animati restano visibili */
.no-js .elementor-invisible{visibility:visible}
@media (prefers-reduced-motion:reduce){.animated{animation:none!important}}

/* Header (ricostruito dal template Elementor Pro originale) */
.ts-header{position:sticky;top:0;z-index:999;background:#FED700;box-shadow:0 0 10px rgba(0,0,0,.5)}
.ts-header-inner{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;box-sizing:border-box}
.ts-logo{flex:0 0 20%}
.ts-logo img{display:block;width:50%;height:auto}
.ts-menu{flex:0 0 60%}
.ts-menu ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;align-items:center}
.ts-menu li+li{border-left:1px solid #000}
.ts-menu a{position:relative;display:block;padding:13px 20px;color:#000;text-decoration:none;font:600 18px Poppins,sans-serif;text-transform:uppercase;transition:color .3s}
.ts-menu a::after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:3px;background:#fff;opacity:0;transform:translateY(-10px);transition:all .3s}
.ts-menu a:hover,.ts-menu a:focus-visible,.ts-menu a.current{color:#fff}
.ts-menu a:hover::after,.ts-menu a:focus-visible::after,.ts-menu a.current::after{opacity:1;transform:none}
.ts-call-wrap{flex:0 0 20%;display:flex;justify-content:flex-end}
.ts-call{display:inline-flex;align-items:center;gap:20px;background:#000;color:#FED700;padding:20px 50px;font:600 15px Poppins,sans-serif;text-transform:uppercase;text-decoration:none;transition:all .3s}
.ts-call svg{width:1em;height:1em;fill:currentColor}
.ts-call:hover,.ts-call:focus-visible{background:#fff;color:#000}
.ts-menu-toggle,.ts-burger{display:none}
@media (max-width:1366px){.ts-logo img{width:70%}}
@media (max-width:1024px){
 .ts-header-inner{padding:20px;position:relative}
 .ts-burger{display:flex;flex:0 0 20%;align-items:center;cursor:pointer;order:-1}
 .ts-burger span,.ts-burger span::before,.ts-burger span::after{display:block;width:26px;height:3px;background:#000;position:relative;transition:all .3s}
 .ts-burger span::before,.ts-burger span::after{content:"";position:absolute;left:0}
 .ts-burger span::before{top:-8px}.ts-burger span::after{top:8px}
 .ts-menu-toggle:checked~.ts-burger span{background:transparent}
 .ts-menu-toggle:checked~.ts-burger span::before{top:0;transform:rotate(45deg)}
 .ts-menu-toggle:checked~.ts-burger span::after{top:0;transform:rotate(-45deg)}
 .ts-logo{flex:0 0 30%;display:flex;justify-content:center}
 .ts-logo img{width:100%}
 .ts-menu{position:absolute;left:0;right:0;top:100%;display:none;box-shadow:0 8px 12px rgba(0,0,0,.25)}
 .ts-menu-toggle:checked~.ts-menu{display:block}
 .ts-menu ul{flex-direction:column;align-items:stretch}
 .ts-menu li+li{border-left:0}
 .ts-menu a{background:#FFD60A;font-size:16px;text-align:center;padding:14px 20px}
 .ts-menu a::after{display:none}
 .ts-menu a:hover,.ts-menu a:focus-visible,.ts-menu a.current{background:#FED700;color:#fff}
 .ts-call-wrap{flex:0 0 20%}
 .ts-call{background:transparent;color:#000;padding:10px;font-size:20px}
 .ts-call span{display:none}
 .ts-call:hover,.ts-call:focus-visible{background:#FFB755;color:#fff}
}
@media (max-width:767px){
 .ts-header-inner{padding:10px}
 .ts-burger,.ts-call-wrap{flex-basis:15%}
 .ts-logo{flex-basis:50%}
 .ts-menu{border-radius:0 0 10px 10px;overflow:hidden}
}

/* Footer (ricostruito dal template Elementor Pro originale) */
.ts-footer{background:#000;color:#fff;font-family:Poppins,sans-serif}
.ts-footer-cols{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;max-width:1140px;margin:0 auto;box-sizing:border-box}
.ts-fcol{flex:0 0 25%;display:flex;flex-direction:column;gap:20px}
.ts-fcol h2{margin:0;color:#fff;font:600 30px/1.2 "Times New Roman",Times,serif}
.ts-flogo img{display:block;width:100%;height:auto}
.ts-social{display:flex;gap:10px}
.ts-social a{display:flex;align-items:center;justify-content:center;width:45px;height:45px;background:#000;border:1px solid #333;color:#fff}
.ts-social a:hover,.ts-social a:focus-visible{background:#FED700;color:#000}
.ts-social svg{width:25px;height:25px;fill:currentColor}
.ts-ib{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:15px;line-height:1.4}
.ts-ib svg{flex:0 0 20px;width:20px;height:20px;fill:#fff}
.ts-ib:hover,.ts-ib:focus-visible{color:#FED700}
.ts-hours{font-size:15px;line-height:1.6}
.ts-footer-bottom{padding:15px 20px;text-align:center;font-size:15px;border-top:1px solid #222}
.ts-footer-bottom a{color:#fff}
@media (max-width:1024px){.ts-footer-cols{padding:10px}}
@media (max-width:767px){
 .ts-footer-cols{flex-direction:column;align-items:center;gap:30px;text-align:center}
 .ts-fcol{flex-basis:auto;width:100%;align-items:center}
 .ts-flogo img{max-width:280px;margin:0 auto}
 .ts-ib{justify-content:center;text-align:center}
 .ts-footer-bottom{padding-bottom:96px}
}

/* Pulsante WhatsApp flottante */
.ts-wa{position:fixed;right:20px;bottom:20px;z-index:1000;width:60px;height:60px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.3);transition:transform .2s}
.ts-wa:hover,.ts-wa:focus-visible{transform:scale(1.08)}
.ts-wa svg{width:32px;height:32px;fill:#fff}

/* Avviso privacy (nessun cookie) */
.ts-notice{position:fixed;left:16px;bottom:16px;z-index:1001;max-width:420px;background:#000;color:#fff;border:2px solid #FED700;border-radius:8px;padding:18px 20px;font:14px/1.5 Poppins,Roboto,sans-serif;box-shadow:0 6px 24px rgba(0,0,0,.4)}
.ts-notice[hidden]{display:none}
.ts-notice p{margin:0 0 12px}
.ts-notice a{color:#FED700}
.ts-notice button{background:#FED700;color:#000;border:0;border-radius:4px;padding:10px 22px;font:600 14px Poppins,Roboto,sans-serif;cursor:pointer;text-transform:uppercase;letter-spacing:1px}
.ts-notice button:hover,.ts-notice button:focus-visible{background:#fff}
@media (max-width:480px){.ts-notice{left:8px;right:8px;bottom:8px;max-width:none}}

/* Mappa caricata solo su richiesta */
.ts-map{width:100%;min-height:450px;background:#111;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:32px 20px;box-sizing:border-box;font-family:Poppins,Roboto,sans-serif}
.ts-map strong{font-size:18px;color:#FED700;letter-spacing:1px}
.ts-map small{max-width:420px;font-size:12px;line-height:1.5;color:#bbb}
.ts-map small a,.ts-map .ts-map-link{color:#FED700}
.ts-map iframe{width:100%;height:450px;border:0;display:block}
.ts-map.is-loaded{padding:0;min-height:0}

/* Pulsanti contatto (al posto del modulo) */
.ts-contact-buttons{display:flex;flex-wrap:wrap;gap:12px}
.ts-contact-buttons a{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:4px;font:600 14px Poppins,Roboto,sans-serif;text-transform:uppercase;letter-spacing:1px;text-decoration:none}
.ts-contact-buttons .wa{background:#25d366;color:#fff}
.ts-contact-buttons .tel{background:#FED700;color:#000}
.ts-contact-buttons .mail{background:#fff;color:#000;border:2px solid #000}
.ts-contact-buttons a:hover,.ts-contact-buttons a:focus-visible{filter:brightness(.92)}
.ts-contact-buttons svg{width:18px;height:18px;fill:currentColor}

/* Pagina privacy */
.ts-privacy{max-width:860px;margin:0 auto;padding:40px 16px 60px;font:16px/1.7 Poppins,Roboto,sans-serif;color:#222}
.ts-privacy h1{font-size:32px;margin:0 0 8px}
.ts-privacy h2{font-size:21px;margin:36px 0 10px;padding-top:12px;border-top:2px solid #FED700}
.ts-privacy table{border-collapse:collapse;width:100%;font-size:14px}
.ts-privacy th,.ts-privacy td{border:1px solid #ddd;padding:8px;text-align:left;vertical-align:top}
.ts-privacy .ts-updated{color:#666;font-size:14px}
.ts-privacy a{color:#000;font-weight:600;text-decoration:underline;text-decoration-color:#FED700;text-decoration-thickness:2px;text-underline-offset:3px}
.ts-privacy a:hover,.ts-privacy a:focus-visible{background:#FED700}
.ts-map button{background:#FED700;color:#000;border:0;border-radius:4px;padding:14px 28px;font:600 14px Poppins,Roboto,sans-serif;text-transform:uppercase;letter-spacing:1px;cursor:pointer}
.ts-map button:hover,.ts-map button:focus-visible{background:#fff}
/* Annulla lo stile rosa del tema sui pulsanti con focus */
.ts-notice button:focus,.ts-map button:focus{background:#FED700;color:#000;border:0}
.ts-notice button:focus-visible,.ts-map button:focus-visible{outline:2px solid #fff;outline-offset:3px}
