/*
Theme Name: Ars Preuge
Theme URI: https://www.arspreuge.sk
Author: OZ Ars Preuge
Description: Téma pre web OZ Ars Preuge – prenesená zo Squarespace (Poppins, čierna/biela, akcent #253551). Kompatibilná s Elementorom.
Version: 1.1.0
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: ars-preuge
*/

/* ---------- Písmo Poppins (lokálne, bez Google Fonts) ---------- */
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/poppins-latin-ext-400-normal.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:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/poppins-latin-400-normal.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:"Poppins";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/poppins-latin-ext-400-italic.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:"Poppins";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/poppins-latin-400-italic.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:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/poppins-latin-ext-500-normal.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:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/poppins-latin-500-normal.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:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/poppins-latin-ext-600-normal.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:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/poppins-latin-600-normal.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}

/* ---------- Farby a rozmery (prevzaté zo Squarespace) ---------- */
:root{
  --ap-text:#000;
  --ap-bg:#fff;
  --ap-accent:#253551;
  --ap-light:#e0e0db;
  --ap-gray:#8d8d8d;
  --ap-wide:1280px;
  --ap-narrow:820px;
  --ap-gutter:clamp(16px,4vw,48px);
  --ap-font:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ap-bg);color:var(--ap-text);font-family:var(--ap-font);font-size:1.0625rem;line-height:1.6;font-weight:400}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-underline-offset:.2em}
a:hover{color:var(--ap-accent)}
h1,h2,h3,h4,h5,h6{font-family:var(--ap-font);font-weight:500;line-height:1.25;margin:1.4em 0 .5em}
h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.2}
h2{font-size:clamp(1.6rem,3vw,2.8rem)}
h3{font-size:clamp(1.3rem,2.4vw,2.2rem)}
h4{font-size:1.35rem}
p,ul,ol{margin:0 0 1.1em}
hr{border:0;border-top:1px solid currentColor;margin:1.5em 0;opacity:.6}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;background:#fff;padding:8px 12px;z-index:1000}

/* ---------- Hlavička ---------- */
.ap-header{background:var(--ap-bg);position:relative;z-index:50}
.ap-header__inner{max-width:var(--ap-wide);margin:0 auto;padding:34px var(--ap-gutter);display:flex;align-items:center;gap:32px}
.ap-header__title{font-size:1.675rem;font-weight:500;line-height:1.4;text-decoration:none;margin-right:auto;white-space:nowrap}
.ap-header__title img{max-height:56px;width:auto}
.ap-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 28px}
.ap-nav a{text-decoration:none;font-size:1.0675rem;padding:4px 0;display:inline-block;border-bottom:1px solid transparent}
.ap-nav a:hover,.ap-nav .current-menu-item>a,.ap-nav .current_page_item>a,.ap-nav .current-menu-ancestor>a,.ap-nav .current_page_ancestor>a{border-bottom-color:currentColor;color:var(--ap-text)}
.ap-nav .sub-menu,.ap-nav .children{display:none}
.ap-social{display:flex;gap:14px;align-items:center}
.ap-social a{display:inline-flex;width:20px;height:20px}
.ap-social svg{width:100%;height:100%;fill:currentColor}
.ap-burger{display:none;background:none;border:0;padding:8px;cursor:pointer;margin-left:auto}
.ap-burger span{display:block;width:36px;height:1.5px;background:var(--ap-text);margin:7px 0;transition:transform .25s,opacity .25s}
@media (max-width:1000px){
  .ap-burger{display:block}
  .ap-header__title{margin-right:0}
  .ap-header .ap-nav,.ap-header .ap-social{display:none}
  .ap-menu-open .ap-header__inner{flex-wrap:wrap}
  .ap-menu-open .ap-nav{display:block;width:100%;order:3;padding:24px 0 8px}
  .ap-menu-open .ap-nav ul{flex-direction:column;align-items:center;gap:18px}
  .ap-menu-open .ap-nav a{font-size:1.5rem}
  .ap-menu-open .ap-header .ap-social{display:flex;width:100%;justify-content:center;order:4;padding-bottom:16px}
  .ap-menu-open .ap-burger span:nth-child(1){transform:translateY(4.25px) rotate(45deg)}
  .ap-menu-open .ap-burger span:nth-child(2){transform:translateY(-4.25px) rotate(-45deg)}
}

/* ---------- Obsah ---------- */
.ap-main{min-height:40vh}
.ap-content{max-width:var(--ap-narrow);margin:0 auto;padding:40px var(--ap-gutter) 72px}
.ap-content--wide{max-width:var(--ap-wide)}
.ap-content > :first-child{margin-top:0}
.ap-content--full{max-width:none;padding:0}
.ap-page-title{text-align:center;margin:0 0 .4em}
.ap-content img{margin:0 auto}
.ap-content figure{margin:0 0 1.5em}
.ap-content .alignwide,.ap-banner{width:min(var(--ap-wide),100vw - 2*var(--ap-gutter));max-width:none;position:relative;left:50%;transform:translateX(-50%)}
.ap-banner{margin-bottom:2.5em}
.ap-banner img{width:100%;max-height:72vh;object-fit:cover}
.ap-center{text-align:center}
.ap-lead{font-size:1.2rem}
.ap-meta{border-top:1px solid #0002;padding-top:1em;margin-top:2em}
.ap-meta p{margin:0 0 .35em}

/* Tlačidlo – rámček v akcentovej farbe ako na Squarespace */
.ap-btn,.ap-content .wp-block-button__link{display:inline-block;font-family:var(--ap-font);font-weight:500;font-size:.95rem;color:var(--ap-accent);background:transparent;border:2px solid var(--ap-accent);padding:.95em 1.9em;text-decoration:none;line-height:1.2;transition:background .2s,color .2s}
.ap-btn:hover,.ap-content .wp-block-button__link:hover{background:var(--ap-accent);color:#fff}

/* ---------- Úvodná stránka ---------- */
.ap-hero{background:var(--ap-gray);padding:clamp(56px,9vw,110px) var(--ap-gutter);text-align:center;width:100vw;position:relative;left:50%;transform:translateX(-50%)}
.ap-hero h1{margin:0;font-weight:600;text-transform:uppercase}
.ap-karty{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:min(var(--ap-wide),100vw - 2*var(--ap-gutter));position:relative;left:50%;transform:translateX(-50%);margin:56px 0}
.ap-karta{background:var(--ap-light);padding:36px 32px 40px;text-align:center;display:flex;flex-direction:column;align-items:center}
.ap-karta > *{flex:none}
.ap-karta > :last-child{margin-top:auto;margin-bottom:0}
.ap-karta p{max-width:30ch}
.ap-karta img{width:min(100%,300px);aspect-ratio:1;object-fit:cover;border-radius:50%;margin:0 auto 28px}
.ap-karta h2{font-size:1.75rem;margin:0 0 .5em;text-transform:uppercase}
.ap-karta p:has(> img:only-child){margin:0;max-width:none;width:100%}
@media (max-width:900px){.ap-karty{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.ap-karty{grid-template-columns:1fr}}

/* ---------- Galéria ---------- */
.ap-galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:2em 0}
.ap-galeria figure{margin:0}
.ap-galeria img{width:100%;aspect-ratio:1;object-fit:cover;cursor:zoom-in;transition:opacity .2s}
.ap-galeria img:hover{opacity:.85}
.ap-galeria--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ap-galeria--2 img{aspect-ratio:4/3}
.ap-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:999;padding:4vw}
.ap-lightbox.is-open{display:flex}
.ap-lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.ap-lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:2.4rem;cursor:pointer;padding:12px 18px;line-height:1;font-family:var(--ap-font)}
.ap-lightbox__close{top:8px;right:12px}
.ap-lightbox__prev{left:8px;top:50%;transform:translateY(-50%)}
.ap-lightbox__next{right:8px;top:50%;transform:translateY(-50%)}

/* ---------- Zoznam podstránok (výstavy, Smallky Talky) ---------- */
.ap-podstranky{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;width:min(var(--ap-wide),100vw - 2*var(--ap-gutter));position:relative;left:50%;transform:translateX(-50%);margin:2em 0 3em}
.ap-podstranky a{text-decoration:none;display:block}
.ap-podstranky .ap-thumb{aspect-ratio:1;background:var(--ap-light);overflow:hidden}
.ap-podstranky img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ap-podstranky a:hover img{transform:scale(1.04)}
.ap-podstranky h3{font-size:1.15rem;margin:.8em 0 0;text-align:center;text-transform:uppercase}
@media (max-width:900px){.ap-podstranky{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ap-podstranky{grid-template-columns:1fr}}

/* Predchádzajúca / ďalšia */
.ap-pager{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #0002;margin-top:3em;padding-top:1.5em}
.ap-pager a{text-decoration:none;display:flex;flex-direction:column;max-width:48%}
.ap-pager small{opacity:.6;font-size:.85rem}
.ap-pager .ap-pager__next{text-align:right;margin-left:auto}

/* ---------- Pätička ---------- */
.ap-footer{background:var(--ap-gray);text-align:center;padding:72px var(--ap-gutter) 64px}
.ap-footer__name{font-size:1.8rem;font-weight:500;margin:0 0 .9em}
.ap-footer p{margin:0 0 1.6em}
.ap-footer a{text-decoration:none}
.ap-footer .ap-social{justify-content:center}
.ap-footer__copy{font-size:.8rem;opacity:.7;margin-top:2em!important;margin-bottom:0!important}

/* Elementor – šablóna na plnú šírku nech nemá obmedzenia */
.elementor-page .ap-content--full{padding:0}

/* =========================================================================
   Voľná mriežka podľa Squarespace Fluid Engine (26 stĺpcov, odmerané pri 1440 px)
   Bloky sa umiestňujú cez style="grid-area: riadok/stĺpec/riadok/stĺpec".
   ========================================================================= */
html,body{overflow-x:clip}
.ap-fe{--ap-gap:clamp(8px,.764vw,11px);--ap-row:1.79vw;display:grid;grid-template-columns:repeat(26,minmax(0,1fr));grid-template-rows:repeat(var(--ap-rows,10),minmax(var(--ap-row),auto));gap:var(--ap-gap);width:100vw;margin:0 0 0 calc(50% - 50vw);padding:clamp(24px,3.4vw,50px) 0}
.ap-fe + .ap-fe{padding-top:0}
.ap-fe__b{min-width:0;position:relative}
.ap-fe__b > :first-child{margin-top:0}
.ap-fe__b > :last-child{margin-bottom:0}
.ap-fe__media img{width:100%;height:100%;object-fit:cover;margin:0}
.ap-fe__media{overflow:hidden}
.ap-fe p:not([class*="ap-t-"]){font-size:1rem}

/* Typografia blokov */
.ap-t-xl{font-size:clamp(2.4rem,var(--fs,8vw),12rem);line-height:1.12;font-weight:500;margin:0;letter-spacing:-.01em}
.ap-t-title{font-size:clamp(2rem,4.44vw,4rem);line-height:1.25;font-weight:500;margin:0 0 .3em}
.ap-t-h2{font-size:clamp(1.6rem,3.11vw,2.8rem);line-height:1.3;font-weight:500;margin:0 0 .4em}
.ap-t-h3{font-size:clamp(1.3rem,2.44vw,2.2rem);line-height:1.3;font-weight:500;margin:.6em 0}
.ap-t-l,.ap-fe p.ap-t-l{font-size:clamp(1.15rem,1.67vw,1.5rem);line-height:1.45}
.ap-t-about{font-size:clamp(1.15rem,1.78vw,1.6rem);line-height:1.5;font-weight:500;margin:0}
.ap-hr{border:0;border-top:1px solid #000;margin:0;opacity:1;position:absolute;left:0;right:0;top:50%}
.ap-wide{width:min(1325px,100vw - 2*var(--ap-gutter));margin-left:calc(50% - min(1325px,100vw - 2*var(--ap-gutter))/2);margin-right:0}
h2.ap-wide{margin-top:1.4em}

/* Údaje o výstave v mriežke */
.ap-meta--fe{border:0;padding:0;margin:0}
.ap-meta--fe p{font-size:1.1rem;margin:0 0 .25em}

/* Rozbaľovacie položky (Workshopy) */
.ap-acc{border-top:1px solid #000}
.ap-acc:last-child{border-bottom:1px solid #000}
.ap-acc summary{cursor:pointer;list-style:none;font-size:clamp(1.1rem,1.4vw,1.35rem);font-weight:500;padding:1em 2.2em 1em 0;position:relative}
.ap-acc summary::-webkit-details-marker{display:none}
.ap-acc summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.6em;font-weight:300}
.ap-acc[open] summary::after{content:"–"}
.ap-acc > :not(summary){margin:0 0 1em}

/* Celostránkové pásy */
.ap-video-hero{width:100vw;margin-left:calc(50% - 50vw);height:min(57.4vw,827px);overflow:hidden;background:#fff}
.ap-video-hero img,.ap-video-hero video{width:100%;height:100%;object-fit:cover;margin:0}
.ap-band{width:100vw;margin-left:calc(50% - 50vw);padding:clamp(48px,7vw,110px) max(var(--ap-gutter),8.3vw)}
.ap-band--gray{background:var(--ap-gray)}
.ap-inset{width:min(1325px,100vw - 2*var(--ap-gutter));margin:clamp(24px,5.5vw,80px) 0 clamp(24px,5.5vw,80px) calc(50% - min(1325px,100vw - 2*var(--ap-gutter))/2);aspect-ratio:1325/488;overflow:hidden;background:#000}
.ap-inset--video{aspect-ratio:1325/452}
.ap-inset img,.ap-inset video{width:100%;height:100%;object-fit:cover;margin:0}
.ap-masonry{width:100vw;margin:clamp(24px,4vw,60px) 0 clamp(24px,4vw,60px) calc(50% - 50vw);padding:0 var(--ap-gutter);columns:3;column-gap:24px}
.ap-masonry figure{break-inside:avoid;margin:0 0 24px}
.ap-masonry img{width:100%;cursor:zoom-in}
.ap-fe--vystava .ap-fe__media img{cursor:zoom-in}
.ap-2p-text{max-width:calc(12 * 100vw / 26);margin:0 auto}
.ap-2p-text > p:first-child{font-size:clamp(1.15rem,1.67vw,1.5rem)}

/* Zoznam výstav / večerov ako na Squarespace: 3 stĺpce, štvorce, názov vľavo */
.ap-podstranky{width:min(1325px,100vw - 2*var(--ap-gutter));left:auto;transform:none;margin:24px 0 72px calc(50% - min(1325px,100vw - 2*var(--ap-gutter))/2);gap:44px 29px}
.ap-podstranky .ap-thumb{background:#f2f2f0}
.ap-podstranky h3{font-size:1.1rem;font-weight:400;text-align:left;text-transform:none;margin:1em 0 0}

/* Mobil: bloky pod sebou v poradí čítania */
@media (max-width:767px){
  .ap-fe{display:flex;flex-direction:column;gap:20px;width:auto;margin:0;padding:24px 0}
  .ap-fe__b{z-index:auto!important}
  .ap-fe__media img{height:auto}
  .ap-hr{position:static}
  .ap-t-xl{font-size:clamp(2.4rem,13vw,4.5rem)}
  .ap-2p-text{max-width:none}
  .ap-masonry{columns:1}
  .ap-wide,.ap-inset{width:auto;margin-left:0}
}
@media (min-width:768px) and (max-width:1100px){.ap-masonry{columns:2}}
