/* Přístav – statická kopie webu janmestek5.wixstudio.com/my-site-3 */

/* ---------- Fonty (Poppins, lokálně) ---------- */
@font-face{font-family:"Poppins";font-weight:200;font-display:swap;src:url("../fonts/poppins-200-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:"Poppins";font-weight:200;font-display:swap;src:url("../fonts/poppins-200-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:"Poppins";font-weight:300;font-display:swap;src:url("../fonts/poppins-300-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:"Poppins";font-weight:300;font-display:swap;src:url("../fonts/poppins-300-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:"Poppins";font-weight:400;font-display:swap;src:url("../fonts/poppins-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:"Poppins";font-weight:400;font-display:swap;src:url("../fonts/poppins-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:"Poppins";font-weight:500;font-display:swap;src:url("../fonts/poppins-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:"Poppins";font-weight:500;font-display:swap;src:url("../fonts/poppins-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:"Poppins";font-weight:700;font-display:swap;src:url("../fonts/poppins-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:"Poppins";font-weight:700;font-display:swap;src:url("../fonts/poppins-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}

/* ---------- Základ ---------- */
:root{
  --black:#000;
  --white:#fff;
  --pad:clamp(20px,3.125vw,48px);   /* 45px na 1440 */
  --font:"Poppins",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-weight:300;color:var(--black);background:var(--white);line-height:1.4;overflow-x:hidden}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Hlavička ---------- */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;justify-content:space-between;align-items:flex-start;padding:clamp(18px,2.4vw,34px) var(--pad);color:var(--black);pointer-events:none}
.site-header>*{pointer-events:auto}
.header--plain{color:#fff;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.site-header{transition:color .35s ease,text-shadow .35s ease}
.site-header.is-dark{color:var(--black);text-shadow:none}
.menu-open .site-header,.menu-open .site-header.is-dark{color:var(--white)}
.brand{display:block}
.brand__name{display:block;font-size:clamp(20px,1.8vw,26px);font-weight:300;letter-spacing:.81em;line-height:1.2;text-transform:uppercase}
.brand__tag{display:block;margin-top:6px;font-size:14px;letter-spacing:.05em;font-weight:300}
.nav{display:flex;gap:clamp(60px,10vw,160px);margin-top:.6rem;margin-right:clamp(0px,8vw,120px)}
.nav a,.btn-arrow{display:inline-flex;align-items:center;gap:6px;font-size:20px;font-weight:300;line-height:1}
.nav a svg,.btn-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .25s}
.nav a:hover svg,.btn-arrow:hover svg{transform:translate(3px,3px)}
.nav a[aria-current="page"]{opacity:.55}
.menu-toggle{display:none;background:none;border:0;padding:8px;color:inherit;cursor:pointer}
.menu-toggle span{display:block;width:28px;height:1.5px;background:currentColor;margin:7px 0;transition:.25s}
.menu-open .menu-toggle span:first-child{transform:translateY(4.25px) rotate(45deg)}
.menu-open .menu-toggle span:last-child{transform:translateY(-4.25px) rotate(-45deg)}
.menu-overlay{position:fixed;inset:0;z-index:40;background:var(--black);color:var(--white);display:none;flex-direction:column;justify-content:center;align-items:center;gap:1.4rem}
.menu-overlay a{font-size:30px;font-weight:300;letter-spacing:.1em;text-transform:uppercase}
.menu-open .menu-overlay{display:flex}
.menu-open .site-header{color:var(--white)}
.menu-open{overflow:hidden}

/* ---------- Intro (video) ---------- */
.intro{position:relative;min-height:100vh;min-height:100svh;background:#000 center/cover no-repeat;color:var(--white);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;text-align:center;padding:0 var(--pad) clamp(70px,12vh,140px)}
.intro__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.intro__video--mobile{display:none}
.intro::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,.25) 55%,rgba(0,0,0,.35));pointer-events:none}
.intro__inner{position:relative;z-index:2}
.intro__title{font-size:clamp(34px,6vw,86px);font-weight:300;text-shadow:0 2px 40px rgba(0,0,0,.55);letter-spacing:.81em;margin-right:-.81em;text-transform:uppercase;line-height:1.1}
.intro__sub{text-shadow:0 1px 24px rgba(0,0,0,.6);font-weight:400;margin-top:.8rem;font-size:clamp(14px,1.6vw,22px);letter-spacing:.2em;font-weight:300}
.intro__enter{margin-top:clamp(28px,5vh,56px);display:inline-flex;align-items:center;gap:10px;padding:14px 34px;border:1px solid rgba(255,255,255,.85);font-size:16px;letter-spacing:.3em;font-weight:300;text-transform:uppercase;transition:background .25s,color .25s}
.intro__enter:hover{background:var(--white);color:var(--black)}
.intro__enter svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.2}
.sound-toggle{position:absolute;z-index:3;right:var(--pad);bottom:clamp(20px,4vh,40px);background:none;border:1px solid rgba(255,255,255,.7);color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.sound-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.sound-toggle .on{display:none}
.sound-toggle[aria-pressed="true"] .on{display:block}
.sound-toggle[aria-pressed="true"] .off{display:none}

/* ---------- Sekce domovské stránky ---------- */
.sec{position:relative;overflow:hidden;background:#000 center/cover no-repeat;color:var(--white)}
.sec--hero{min-height:100vh;min-height:100svh;color:var(--white);padding:clamp(100px,11vw,160px) var(--pad) 0;background:#000}
.hero__bg{position:absolute;inset:0;background:center/cover no-repeat;transform-origin:50% 40%;will-change:transform}
.sec--hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,.05) 60%);pointer-events:none}
.sec--hero>.hero__title{position:relative;z-index:2}
.hero__title{text-shadow:0 2px 30px rgba(0,0,0,.35);will-change:transform,opacity;max-width:1000px;margin:0 auto;text-align:center;font-size:clamp(26px,4.17vw,60px);font-weight:600;line-height:1.4;letter-spacing:0}
.sec--text::before,.sec--mid::before{content:"";position:absolute;inset:0;background:linear-gradient(to left,rgba(0,0,0,.42),rgba(0,0,0,.08) 70%);pointer-events:none}
.sec--text>*,.sec--mid>*{position:relative;z-index:1}
.sec--text{min-height:clamp(480px,49.5vw,720px);display:flex;align-items:center;justify-content:flex-end;padding:var(--pad)}
.sec--text-low{align-items:flex-end;padding-bottom:clamp(40px,7vw,100px)}
.copy{width:min(560px,100%);font-size:clamp(15px,1.25vw,18px);font-weight:300;line-height:1.7}
.copy p+p{margin-top:1.4em}
.copy strong{font-weight:500}
.copy--bold{font-weight:500}
.sec--mid{min-height:clamp(560px,58.7vw,845px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--pad);padding:var(--pad)}
.sec--mid .copy{grid-column:2;justify-self:end}
.tall{position:absolute;z-index:1;left:var(--pad);top:50%;width:clamp(200px,26vw,380px);aspect-ratio:2/3;overflow:hidden;transform:translateY(-50%)}
.tall img{width:100%;height:118%;object-fit:cover;will-change:transform}
.arch{display:grid;grid-template-columns:1fr 1fr;background:var(--white);color:var(--black)}
.arch__text{padding:clamp(60px,10vw,150px) var(--pad);display:flex;flex-direction:column;justify-content:center}
.arch__title{font-size:clamp(34px,4.17vw,60px);font-weight:700;line-height:1;text-transform:uppercase}
.arch__arrow{display:block;width:clamp(36px,3.5vw,50px);height:auto;margin:clamp(14px,1.6vw,22px) 0 clamp(28px,3vw,44px);fill:none;stroke:var(--black);stroke-width:1.2}
.arch__copy{max-width:470px;font-size:clamp(15px,1.15vw,17px);line-height:2;font-weight:300}
.arch__copy p+p{margin-top:2em}
.arch__img{position:relative;overflow:hidden;min-height:clamp(420px,56vw,805px);margin:0 var(--pad) 0 0}
.arch__img img{position:absolute;inset:-9% 0;width:100%;height:118%;object-fit:cover;will-change:transform}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--pad);padding:0 var(--pad) clamp(40px,5vw,72px);background:var(--white)}
.pair__img{position:relative;overflow:hidden;aspect-ratio:3/4;min-height:0}
.pair__img img{position:absolute;inset:-9% 0;width:100%;height:118%;object-fit:cover;will-change:transform}

/* ---------- Kontakt ---------- */
.contact-hero{height:clamp(420px,44.8vw,646px);background:#000 center/cover no-repeat}
.contact{padding:clamp(40px,4vw,60px) var(--pad) clamp(60px,7vw,100px)}
.contact__title{font-size:clamp(38px,4.17vw,60px);font-weight:700;line-height:1.1;text-transform:uppercase}
.contact__arrow{display:block;width:50px;height:50px;margin:18px 0 clamp(28px,3vw,44px);fill:none;stroke:var(--black);stroke-width:1.2}
.form{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;max-width:720px}
.field{display:flex;flex-direction:column;gap:6px}
.field--full{grid-column:1/-1}
.field label{font-size:14px;font-weight:300}
.field label i{font-style:normal;margin-left:2px}
.field input,.field textarea{font:inherit;font-size:16px;font-weight:300;padding:10px 2px;border:0;border-bottom:1px solid var(--black);background:transparent;border-radius:0;outline:none;color:var(--black)}
.field input:focus,.field textarea:focus{border-bottom-width:2px}
.field textarea{min-height:130px;resize:vertical}
.form__submit{justify-self:start;font:inherit;font-size:16px;letter-spacing:.2em;text-transform:uppercase;padding:14px 44px;border:1px solid var(--black);background:var(--black);color:var(--white);cursor:pointer;transition:background .25s,color .25s}
.form__submit:hover{background:var(--white);color:var(--black)}

/* ---------- Patička ---------- */
.site-footer{background:var(--black);color:var(--white);padding:clamp(28px,3vw,44px) var(--pad)}
.site-footer nav{display:flex;flex-wrap:wrap;gap:12px clamp(28px,5vw,72px)}
.site-footer a{font-size:16px;letter-spacing:.2em;text-transform:uppercase;font-weight:300}
.site-footer a:hover{opacity:.6}

/* ---------- Animace při scrollu ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
.no-js .reveal{opacity:1;transform:none}

/* ---------- Mobil ---------- */
@media (max-width:820px){
  .nav{display:none}
  .menu-toggle{display:block;margin-top:-6px;margin-right:-8px}
  .brand__name{font-size:18px}
  .intro__video--desktop{display:none}
  .intro__video--mobile{display:block}
  .sec--mid{grid-template-columns:1fr;align-content:end;padding-top:min(115vw,520px)}
  .sec--mid .copy{grid-column:1;justify-self:start}
  .tall{top:var(--pad);transform:none;width:min(60vw,300px)}
  .sec--text,.sec--text-low{justify-content:flex-start;align-items:flex-end;min-height:min(150vw,720px)}
  .arch{grid-template-columns:1fr}
  .arch__img{margin:0 var(--pad);min-height:120vw;order:2}
  .arch__text{padding-bottom:40px}
  .pair{grid-template-columns:1fr}
  .form{grid-template-columns:1fr}
}

/* ---------- Odhalení fotek maskou ---------- */
.mask{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.77,0,.18,1)}
.mask.is-in{clip-path:inset(0 0 0 0)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
@media (prefers-reduced-motion:reduce){.mask{clip-path:none;transition:none}}
.no-js .mask{clip-path:none}
