/* Fontes locais (OFL, ver assets/fonts/OFL-*.txt). Subsets latin e latin-ext. */
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/anton-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/anton-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/rajdhani-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/rajdhani-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/rajdhani-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/rajdhani-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/rajdhani-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Rajdhani';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/rajdhani-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* =========================================================
   PaintOut — CSS partilhado
   ========================================================= */

/* --- Variáveis do design system --- */
:root{
  --po-black:#0a0a0a;
  --po-dark:#131513;
  --po-dark-2:#1c1f1e;
  --po-neon:#39FF14;
  --po-alert:#FF3B1A;
  --po-font-title:'Anton',Impact,'Arial Narrow',sans-serif;
  --po-font-ui:'Rajdhani',system-ui,sans-serif;
  --po-font-body:'Barlow',system-ui,sans-serif;
}


/* Imagens com width/height (inc/images.php): proporção automática; qualquer regra do tema ganha (especificidade 0). */
:where(img[width][height]){height:auto}

/* --- Fontes do sistema de design ---
   Barlow: texto | Rajdhani: botões e labels | Anton: títulos.
   Seletores de elemento (baixa especificidade): não afetam nada que já defina font-family. */
body,p,li,input,textarea,select{font-family:var(--po-font-body)}
button,input[type="button"],input[type="submit"],input[type="reset"],label,.button,.btn{font-family:var(--po-font-ui)}
h1,h2,h3,h4,h5,h6{font-family:var(--po-font-title)}

@keyframes glitchShift{0%,100%{transform:translate(0,0)}20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,2px)}80%{transform:translate(1px,-2px)}}

/* --- Partilhado entre páginas (Home, Sobre Nós, Contactos, Galeria, Aluguer) --- */
@keyframes scanMove{0%{background-position-y:0}100%{background-position-y:200px}}
@keyframes neonPulse{0%,100%{text-shadow:0 0 6px var(--po-neon),0 0 18px var(--po-neon),0 0 38px rgba(57,255,20,.55)}50%{text-shadow:0 0 3px var(--po-neon),0 0 9px var(--po-neon),0 0 18px rgba(57,255,20,.35)}}
.po-2col{display:grid;grid-template-columns:1fr 1fr}
@media (max-width:900px){
  .po-2col{grid-template-columns:1fr !important}
}

/* =========================================================
   HEADER
   ========================================================= */
#po-header{margin:0;font-family:var(--po-font-body);-webkit-font-smoothing:antialiased;position:relative;z-index:1000}
#po-header a{color:#e8e8e8;text-decoration:none}
#po-header ::selection{background:var(--po-neon);color:var(--po-black)}

/* --- Topbar --- */
.po-topbar{
  background:#000;
  border-bottom:1px solid rgba(57,255,20,.2);
  display:none;
  align-items:center;
  justify-content:space-between;
  padding:9px 5vw;
}
.po-topbar-left{display:flex;align-items:center;gap:28px;}
.po-topbar-item{
  display:flex;align-items:center;gap:8px;
  font-family:var(--po-font-ui);font-weight:600;font-size:13px;
  color:#c9cdc9;letter-spacing:.3px;
}
.po-topbar-item svg{flex:none;}
.po-topbar-item:hover{color:var(--po-neon);}
.po-topbar-social{display:flex;gap:10px;}
.po-topbar-social a{
  width:26px;height:26px;
  display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(57,255,20,.35);
  clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);
}
.po-topbar-social a:hover{border-color:var(--po-neon);background:rgba(57,255,20,.1);}

/* --- Main nav --- */
.po-navbar{
  position:sticky;top:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 5vw;
  background:rgba(10,10,10,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(57,255,20,.25);
  transition:padding .25s ease;
}
.po-logo img{
  height:62px;width:auto;display:block;
  transition:height .25s ease;
}
.po-navbar.po-scrolled{padding:8px 5vw;}
.po-navbar.po-scrolled .po-logo img{height:40px;}
.po-desktop-nav{display:none;align-items:center;gap:36px;}
.po-desktop-nav > a{
  font-family:var(--po-font-ui);font-weight:600;color:#e8e8e8;
  text-transform:uppercase;letter-spacing:1.5px;font-size:14px;
  line-height:1;
  position:relative;
}
.po-desktop-nav > a:hover{color:var(--po-neon);}

/* --- Dropdown: Agendar Sessão --- */
.po-nav-item{position:relative;display:flex;align-items:center;}
.po-nav-item > .po-nav-trigger{
  display:flex;align-items:center;gap:6px;cursor:pointer;
  font-family:var(--po-font-ui);font-weight:600;color:#e8e8e8;
  text-transform:uppercase;letter-spacing:1.5px;font-size:14px;
  line-height:1;
  background:none;border:none;padding:0;margin:0;
}
.po-nav-item > .po-nav-trigger svg{transition:transform .2s ease;}
.po-nav-item:hover > .po-nav-trigger{color:var(--po-neon);}
.po-nav-item:hover > .po-nav-trigger svg{transform:rotate(180deg);}
.po-dropdown{
  position:absolute;top:calc(100% + 18px);left:50%;transform:translateX(-50%);
  background:#141614;border:1px solid rgba(57,255,20,.25);
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  min-width:260px;
  opacity:0;visibility:hidden;transform:translateX(-50%) translateY(6px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s;
  z-index:50;
}
.po-nav-item:hover .po-dropdown{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);
}
.po-dropdown a{
  display:block;padding:15px 22px;
  font-family:var(--po-font-ui);font-weight:700;color:#e8e8e8;
  font-size:14px;letter-spacing:.4px;text-transform:none;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.po-dropdown a:last-child{border-bottom:none;}
.po-dropdown a:hover{color:var(--po-black);background:var(--po-neon);}
.po-nav-cta{
  display:flex !important;align-items:center;
  background:var(--po-neon) !important;color:var(--po-black) !important;
  padding:11px 20px !important;
  line-height:1;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  font-weight:700 !important;
}
.po-nav-cta:hover{background:var(--po-black) !important;color:var(--po-neon) !important;box-shadow:0 0 0 2px var(--po-neon) inset;}

.po-burger{
  display:flex;background:none;border:2px solid var(--po-neon);width:42px;height:42px;
  clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);
  flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;
}
.po-burger span{width:20px;height:2px;background:var(--po-neon);}

#poMobileMenu{
  display:none;position:fixed;inset:0;z-index:999;background:var(--po-black);
  flex-direction:column;align-items:center;justify-content:center;gap:30px;
}
#poMobileMenu a{
  font-family:var(--po-font-title);color:#fff;font-size:30px;text-transform:uppercase;
}
#poMobileMenu a:hover{color:var(--po-neon);}
#poMobileMenu .po-mm-cta{color:var(--po-neon);}
#poMobileMenu .po-mm-contact{
  margin-top:10px;display:flex;flex-direction:column;gap:12px;align-items:center;
}
#poMobileMenu .po-mm-contact a{
  font-family:var(--po-font-ui);font-size:16px;font-weight:600;color:#c9cdc9;text-transform:none;
}
#poMobileMenu{overflow-y:auto;padding:90px 24px 40px;justify-content:flex-start !important;}
.po-mm-item{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;}
.po-mm-trigger{
  display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;
  font-family:var(--po-font-title);color:var(--po-neon);font-size:26px;text-transform:uppercase;padding:0;
}
.po-mm-trigger svg{transition:transform .2s ease;}
.po-mm-trigger.open svg{transform:rotate(180deg);}
.po-mm-submenu{
  max-height:0;overflow:hidden;width:100%;
  transition:max-height .25s ease;
  display:flex;flex-direction:column;align-items:center;gap:0;
}
.po-mm-submenu.open{max-height:400px;margin-top:18px;}
.po-mm-submenu a{
  font-family:var(--po-font-ui) !important;font-size:16px !important;font-weight:700 !important;
  color:#e8e8e8 !important;text-transform:none !important;
  padding:13px 0;width:100%;text-align:center;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.po-mm-submenu a:last-child{border-bottom:none;}
.po-mm-submenu a:hover{color:var(--po-neon) !important;}

@media (min-width:900px){
  .po-topbar{display:flex;}
  .po-desktop-nav{display:flex;}
  .po-burger,#poMobileMenu{display:none !important;}
}

/* =========================================================
   FOOTER
   ========================================================= */
#po-footer{margin:0;font-family:var(--po-font-ui);-webkit-font-smoothing:antialiased}
#po-footer a{color:#c9cdc9;text-decoration:none}
#po-footer a:hover{color:var(--po-neon)}
#po-footer ::selection{background:var(--po-neon);color:var(--po-black)}
.po-footer-grid{
  max-width:1200px;margin:0 auto;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;
  padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08);
}
.po-footer-social a{
  width:38px;height:38px;border:1px solid rgba(57,255,20,.4);
  display:flex;align-items:center;justify-content:center;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.po-footer-social a:hover{border-color:var(--po-neon);background:rgba(57,255,20,.1);}

/* --- Bloco de reservas (Amelia) --- */
.po-reservar{background:#34313F}
.po-reservar--pb{padding-bottom:60px}
.po-reservar-inner{max-width:1140px;margin:0 auto;padding:10px}

/* --- Páginas de leitura (page.php): legais, carrinho, checkout --- */
.po-page-wrap{background:var(--po-black);padding:80px 5vw;min-height:60vh}
.po-page{max-width:800px;margin:0 auto;color:#e8e8e8;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
.po-page h1,.po-page h2,.po-page h3,.po-page h4,.po-page h5,.po-page h6{font-family:var(--po-font-title);font-weight:400;color:#fff;text-transform:uppercase;letter-spacing:1px;line-height:1.2;margin:1.6em 0 .6em}
.po-page h1{font-size:40px;margin-top:0;color:var(--po-neon);text-shadow:0 0 18px rgba(57,255,20,.35)}
.po-page h2{font-size:28px}
.po-page h3{font-size:22px}
.po-page h4,.po-page h5,.po-page h6{font-size:18px}
.po-page p,.po-page li{font-family:var(--po-font-body)}
.po-page p{margin:0 0 1.1em}
.po-page ul,.po-page ol{margin:0 0 1.2em;padding-left:1.4em}
.po-page li{margin-bottom:.4em}
.po-page a{color:var(--po-neon);text-decoration:none}
.po-page a:hover{color:var(--po-alert)}
.po-page strong{color:#fff}
.po-page table{width:100%;border-collapse:collapse;margin:0 0 1.4em;font-size:15px}
.po-page th,.po-page td{border:1px solid rgba(57,255,20,.2);padding:10px 14px;text-align:left;vertical-align:top}
.po-page th{background:#141614;font-family:var(--po-font-ui);font-weight:700;letter-spacing:.5px;color:var(--po-neon)}
.po-page hr{border:0;border-top:1px solid rgba(255,255,255,.1);margin:2em 0}
.po-page ::selection{background:var(--po-neon);color:var(--po-black)}
@media (max-width:600px){ .po-page-wrap{padding:50px 5vw} .po-page h1{font-size:32px} .po-page table{display:block;overflow-x:auto} }

/* WooCommerce: ver assets/css/woocommerce.css */

/* --- Seletor de idioma PT | EN --- */
.po-lang{display:inline-flex;align-items:center;gap:8px;font-family:var(--po-font-ui);font-weight:700;font-size:14px;letter-spacing:1.5px;line-height:1}
.po-lang a,.po-lang .po-lang-item{color:#c9cdc9;text-decoration:none}
.po-lang a:hover{color:var(--po-neon)}
.po-lang .po-lang-item.is-active{color:var(--po-neon)}
.po-lang .po-lang-sep{color:rgba(232,232,232,.3)}
#po-header .po-lang--desktop{margin-left:8px}
#po-header .po-lang--desktop a{color:#c9cdc9}
#poMobileMenu .po-lang--mobile{margin-top:18px;font-size:18px}
#poMobileMenu .po-lang--mobile a{font-family:var(--po-font-ui);font-size:18px;text-transform:none;color:#c9cdc9}
@media (min-width:900px){ #poMobileMenu .po-lang--mobile{display:none} }
@media (max-width:899px){ #po-header .po-lang--desktop{display:none} }
