/* Avviso e contenuti esterni: SL Holiday House */
.external-media { margin:0 0 40px; text-align:center }
.external-media [hidden], #cookie [hidden] { display:none!important }
.external-placeholder { position:relative; background:#eee; overflow:hidden }
.external-placeholder picture, .external-placeholder picture img { display:block; width:100%; margin:0 }
.external-placeholder picture img { height:100%; object-fit:cover }
.external-maps .external-placeholder { min-height:450px }
.external-maps picture { position:absolute; inset:0; height:100% }
.external-card { position:relative; box-sizing:border-box; width:460px; max-width:calc(100% - 32px); margin:45px auto; padding:24px; border:1px solid #ddd; border-radius:8px; background:#fff; color:#222; box-shadow:0 5px 24px #0003; font:15px/1.5 Arial,sans-serif }
.external-card p { margin:0 0 14px }
.external-card p:last-child { margin-top:14px; margin-bottom:0 }
.external-card a, #cookie a { color:#1A5758; text-decoration:underline }
.external-media .button.external-disable { display:block; margin:16px auto 0 0 }
.external-frame iframe { display:block; width:100%; border:0 }
.external-maps .external-frame iframe { height:450px }
.cookie-footer-button { padding:0; border:0; background:none; color:inherit; font:inherit; text-decoration:underline; cursor:pointer }
#cookie { position:fixed; bottom:0; left:0; width:100%; box-sizing:border-box; padding:20px; z-index:8000; background:#fff; color:#222; box-shadow:0 -3px 18px #0003; font:15px/1.5 Arial,sans-serif }
#cookie .cookie-inner { max-width:1100px; margin:auto; max-height:65vh; display:flex; flex-direction:column }
#cookie h2 { font:bold 22px/1.3 Arial,sans-serif; margin:0 0 12px }
#cookie .cookie-content { overflow:auto; min-height:0; overscroll-behavior:contain; padding-right:12px }
#cookie p { margin:0 0 12px }
#cookie details { border-top:1px solid #ddd }
#cookie summary { cursor:pointer; padding:10px 0; font-weight:bold }
#cookie .cookie-actions { display:flex; gap:12px; flex-wrap:wrap; justify-content:space-between; align-items:center; padding-top:14px; border-top:1px solid #ddd; flex-shrink:0 }
#cookie .cookie-service-row { margin:12px 0; display:flex; gap:12px; flex-wrap:wrap; align-items:center }
#cookie button, .external-media button { cursor:pointer }
#cookie button:focus-visible, #cookie a:focus-visible, .external-media button:focus-visible, .cookie-footer-button:focus-visible { outline:3px solid #1A5758; outline-offset:3px }
@media(max-width:600px) {
  #cookie { padding:16px }
  #cookie .cookie-actions { align-items:stretch; flex-direction:column }
  .external-card { padding:20px; margin:24px auto; font-size:14px }
}
.external-card h2 { font:bold 23px/1.3 Arial,sans-serif; margin:0 0 14px }
.external-card { width:460px }
.external-maps .external-placeholder { min-height:450px; display:flow-root }
.external-media .button, #cookie .button { font: bold 15px/1.4 Arial,sans-serif; padding:12px 18px; margin:0; background:#1A5758; color:#fff }
.external-media .button:hover, #cookie .button:hover { background:#246d70 }
.cookie-footer { padding:20px; text-align:center; font-size:16px }
.cookie-footer a, .cookie-footer button { margin:4px 10px; display:inline-block }
.privacy-policy { max-width:1000px; padding-top:100px; font-size:18px }
.privacy-policy h1 { font-size:36px; line-height:1.25; margin:30px 0 }
.privacy-policy h2 { font-size:26px; line-height:1.3; margin:32px 0 12px }
.privacy-policy p { margin:0 0 16px }
.privacy-policy a { text-decoration:underline; overflow-wrap:anywhere }
.privacy-policy .page-actions { text-align:center; font-weight:bold; margin:30px 0 45px }
.privacy-policy table { width:100%; border-collapse:collapse; margin:20px 0; font-size:16px }
.privacy-policy th, .privacy-policy td { padding:12px; border:1px solid #ccc; text-align:left; vertical-align:top }
.privacy-policy .table-wrap { overflow-x:auto }
@media(max-width:600px) { .privacy-policy { padding-top:80px; font-size:17px } .privacy-policy h1 { font-size:28px } .privacy-policy h2 { font-size:23px } }
