@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,500;1,6..96,400&family=Jost:wght@300;400;500&display=swap');
:root{
  --bg:#FFFFFF; --cream:#F7F2EC; --cream2:#FBF7F2; --ink:#2A2521; --ink2:#4A433D;
  --soft:#8B8178; --hair:#E9E1D8; --accent:#9C8878;
  --serif:"Bodoni Moda",Georgia,"Times New Roman",serif;
  --sans:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --p1:#EADCCF; --p2:#E5E2D7; --p3:#F0E7DB; --p4:#E9DAD3; --p5:#DFDBD1; --p6:#ECE1D6;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.85;font-size:16px;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
.narrow{max-width:780px;margin:0 auto;padding:0 40px}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:300;line-height:1.1}
.eyebrow{font-family:var(--sans);font-weight:400;letter-spacing:.36em;text-transform:uppercase;font-size:11px;color:var(--accent)}
.eyebrow-c{display:block;text-align:center;margin-bottom:22px}
.ilink{font-family:var(--sans);font-weight:400;letter-spacing:.28em;text-transform:uppercase;font-size:11.5px;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:5px;display:inline-block;transition:.3s}
.ilink:hover{color:var(--accent);border-color:var(--accent)}
.btn{font-family:var(--sans);font-weight:400;letter-spacing:.26em;text-transform:uppercase;font-size:11.5px;color:var(--ink);border:1px solid var(--ink);padding:16px 38px;display:inline-block;transition:.3s;background:transparent;cursor:pointer}
.btn:hover{background:var(--ink);color:#fff}
.center{text-align:center}

.protobar{background:var(--cream);color:var(--soft);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:9px 16px;border-bottom:1px solid var(--hair)}

header.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}
header.nav .inner{display:flex;align-items:center;justify-content:space-between;height:88px;gap:20px}
.brand{font-family:var(--serif);font-weight:400;font-size:25px;letter-spacing:.28em;text-transform:uppercase;white-space:nowrap}
.brand small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:.4em;color:var(--accent);margin-top:4px;text-align:center}
.navright{display:flex;align-items:center;gap:26px}
nav.links{display:flex;align-items:center;gap:30px}
nav.links a{font-family:var(--sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink2);white-space:nowrap}
nav.links a:hover,nav.links a.active{color:var(--accent)}
.lang{display:flex;gap:8px;align-items:center}
.lang button{background:none;border:0;cursor:pointer;color:var(--soft);letter-spacing:.16em;font-family:var(--sans);font-size:11px;padding:2px}
.lang button.on{color:var(--ink);border-bottom:1px solid var(--accent)}
.lang span{color:var(--hair)}
.burger{display:none;background:none;border:0;font-size:22px;cursor:pointer;color:var(--ink)}

/* hero (home) */
.hero{position:relative;height:calc(100vh - 89px);min-height:600px;overflow:hidden}
.slides,.slide{position:absolute;inset:0}
.slide{opacity:0;animation:fade 28s infinite}
.slide:nth-child(1){animation-delay:0s}.slide:nth-child(2){animation-delay:7s}
.slide:nth-child(3){animation-delay:14s}.slide:nth-child(4){animation-delay:21s}
@keyframes fade{0%{opacity:0}3.5%{opacity:1}25%{opacity:1}28.5%{opacity:0}100%{opacity:0}}
.ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.ph b{font-family:var(--sans);font-weight:400;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:rgba(90,75,60,.4)}
.hs1{background:linear-gradient(150deg,#F0E4D8,#E6D3C7 60%,#DcC7BA)}
.hs2{background:linear-gradient(160deg,#EFE7DA,#E0DAC9 55%,#D5CDBB)}
.hs3{background:linear-gradient(140deg,#F1E6Dd,#E7D6Cf 55%,#DdCcC5)}
.hs4{background:linear-gradient(150deg,#ECE6Dc,#DfE0D2 55%,#D3D4C5)}
.hero .veil{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.10),rgba(60,48,38,.16) 55%,rgba(60,48,38,.32))}
.hero-c{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:20px}
.hero .eyebrow{color:rgba(255,255,255,.9)}
.hero h1{font-size:clamp(44px,7vw,92px);font-weight:300;color:#fff;margin:22px 0 0;letter-spacing:.5px;text-shadow:0 2px 40px rgba(0,0,0,.28)}
.hero .tag{font-family:var(--sans);font-weight:300;font-size:clamp(13px,1.6vw,16px);letter-spacing:.06em;color:rgba(255,255,255,.94);margin:22px 0 34px;max-width:46ch}
.hero .ilink{color:#fff;border-color:rgba(255,255,255,.85)}
.hero .ilink:hover{color:#fff;border-color:#fff;opacity:.8}
.scrollcue{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:2;font-family:var(--sans);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.8);animation:bob 2.6s infinite}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

/* page hero (subpages) */
.phero{padding:90px 0 10px;text-align:center}
.phero h1{font-size:clamp(38px,5.4vw,68px);font-weight:300;margin-top:16px;letter-spacing:.5px}
.phero .sub{font-family:var(--sans);font-weight:300;font-size:16px;color:var(--soft);max-width:56ch;margin:18px auto 0;line-height:1.8}

section{padding:120px 0}
.statement{padding:150px 0}
.statement p{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.4vw,56px);line-height:1.28;text-align:center;color:var(--ink);max-width:19ch;margin:0 auto}
.statement .em{font-style:italic;color:var(--accent)}
.statement-sub{font-family:var(--sans)!important;font-weight:300!important;font-size:clamp(14px,1.6vw,17px)!important;line-height:1.75!important;color:var(--soft)!important;max-width:52ch!important;margin:34px auto 0!important;letter-spacing:.02em}
h2.title{font-size:clamp(32px,4.4vw,54px);font-weight:300;letter-spacing:.5px}
.sub{font-family:var(--sans);font-weight:300;font-size:16px;color:var(--soft);max-width:54ch;margin:18px auto 0;line-height:1.8}

.gallery{padding:20px 0 120px}
.g-full{width:100%;aspect-ratio:16/8;margin:14px 0;position:relative}
.g-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}
.g-two .cell{aspect-ratio:4/5;position:relative}
.g-three{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0}
.g-three .cell{aspect-ratio:3/4;position:relative}
.imgph{position:relative;overflow:hidden}
.imgph b{position:absolute;left:14px;bottom:12px;font-family:var(--sans);font-weight:400;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(90,75,60,.4)}
.fp1{background:linear-gradient(135deg,#EEE1D4,#E0CEC0)}.fp2{background:linear-gradient(135deg,#E9E4D6,#D6D2C1)}
.fp3{background:linear-gradient(135deg,#F0E3D9,#E2CfC7)}.fp4{background:linear-gradient(135deg,#E6E2D6,#D2CEBE)}
.fp5{background:linear-gradient(135deg,#EFE5DA,#DDCcC0)}.fp6{background:linear-gradient(135deg,#EBDDD4,#DAC7BC)}

.stories{background:var(--cream2)}
.story{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-top:80px}
.story:first-of-type{margin-top:64px}
.story.rev .txt{order:2}
.story .simg{aspect-ratio:4/5;position:relative}
.story .place{font-family:var(--sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent)}
.story .names{font-family:var(--serif);font-weight:300;font-size:clamp(30px,3.6vw,46px);margin:14px 0 18px;line-height:1.05}
.story .hook{font-family:var(--sans);font-weight:300;font-size:16.5px;color:var(--ink2);line-height:1.85;max-width:42ch}
.story .more{margin-top:26px}

.quote{padding:150px 0;text-align:center}
.quote .qm{font-family:var(--serif);font-size:80px;color:var(--accent);line-height:.3;opacity:.5}
.quote blockquote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(26px,3.6vw,42px);line-height:1.4;max-width:20ch;margin:34px auto 30px;color:var(--ink)}
.quote .who{font-family:var(--sans);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--soft)}

.about .cols{display:grid;grid-template-columns:1fr 1.05fr;gap:80px;align-items:center}
.about .aimg{aspect-ratio:4/5;position:relative}
.about h2{margin:16px 0 0}
.about .lead{font-family:var(--sans);font-weight:300;font-size:17px;color:var(--ink2);line-height:1.9;margin-top:22px;max-width:46ch}
.about h4{font-family:var(--sans);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin:26px 0 6px}
.about p.d{font-family:var(--sans);font-weight:300;font-size:15.5px;color:var(--ink2);max-width:46ch;line-height:1.85}

.steps{background:var(--cream2);text-align:center}
.stepgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:70px}
.step .n{font-family:var(--serif);font-weight:300;font-size:52px;color:var(--accent)}
.step h4{font-family:var(--serif);font-weight:400;font-size:26px;margin:6px 0 12px}
.step p{font-family:var(--sans);font-weight:300;font-size:15px;color:var(--soft);max-width:30ch;margin:0 auto;line-height:1.8}

.pricegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:60px;border:1px solid var(--hair)}
.pk{padding:48px 34px;text-align:center;border-right:1px solid var(--hair)}
.pk:last-child{border-right:0}
.pk.star{background:var(--cream2)}
.pk .pname{font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--soft)}
.pk .star-l{font-family:var(--sans);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;height:12px}
.pk .pprice{font-family:var(--serif);font-weight:300;font-size:56px;color:var(--ink);margin:14px 0 20px}
.pk ul{list-style:none;font-family:var(--sans);font-weight:300}
.pk li{font-size:14px;color:var(--ink2);padding:9px 0;border-top:1px solid var(--hair)}
.pk li:first-child{border-top:0}
.dest{margin-top:26px;text-align:center;font-family:var(--sans);font-weight:300;font-size:15px;color:var(--ink2)}
.dest b{font-weight:500}
.price-note{text-align:center;font-family:var(--sans);font-weight:300;font-style:italic;font-size:14px;color:var(--soft);margin-top:30px;max-width:62ch;margin-left:auto;margin-right:auto}

.journal{background:var(--bg)}
.jgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:64px}
.jcard{display:block}
.jcard .jimg{aspect-ratio:3/2;position:relative;margin-bottom:22px}
.jcard .jcat{font-family:var(--sans);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}
.jcard h3{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.22;margin:10px 0 12px;color:var(--ink)}
.jcard p{font-family:var(--sans);font-weight:300;font-size:14px;color:var(--soft);line-height:1.75}
.jcard .more{margin-top:16px;font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--hair);padding-bottom:4px;display:inline-block}
.jcard:hover h3{color:var(--accent)}

.faqlist{max-width:820px;margin:56px auto 0}
details{border-bottom:1px solid var(--hair)}
summary{list-style:none;cursor:pointer;font-family:var(--serif);font-weight:400;font-size:24px;padding:24px 44px 24px 0;position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:4px;top:24px;font-size:24px;color:var(--accent);font-weight:300;font-family:var(--sans);transition:.25s}
details[open] summary:after{transform:rotate(45deg)}
details p{font-family:var(--sans);font-weight:300;font-size:15.5px;color:var(--ink2);padding:0 44px 26px 0;line-height:1.85;max-width:72ch}

.contact{background:var(--cream2)}
.contact .cols{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.contact h2{margin:14px 0 0}
.contact .lead{font-family:var(--sans);font-weight:300;font-size:17px;color:var(--ink2);margin-top:20px;line-height:1.85;max-width:40ch}
.reassure{font-family:var(--sans);font-weight:300;font-style:italic;font-size:15px;color:var(--accent);margin-top:26px}
.cinfo{font-family:var(--sans);font-weight:300;font-size:15px;color:var(--ink2);margin-top:30px;line-height:2.1}
.cinfo a:hover{color:var(--accent)}
form label{display:block;font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin:20px 0 8px}
form input,form textarea,form select{width:100%;font-family:var(--sans);font-weight:300;font-size:15px;padding:14px 2px;border:0;border-bottom:1px solid var(--hair);background:transparent;color:var(--ink);border-radius:0}
form select{-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7'><path d='M1 1l4 4 4-4' stroke='%239C8878' fill='none' stroke-width='1.2'/></svg>");background-repeat:no-repeat;background-position:right 4px center}
form input:focus,form textarea:focus,form select:focus{outline:none;border-color:var(--accent)}
form input::placeholder,form textarea::placeholder{color:#B8AEA3}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:26px}
form .btn{margin-top:34px}

/* article */
.article{max-width:760px;margin:0 auto;padding:70px 40px 40px}
.article .meta{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);text-align:center}
.article h1{font-size:clamp(34px,4.6vw,54px);font-weight:300;text-align:center;margin:18px 0 10px;line-height:1.12}
.article .lede{font-family:var(--sans);font-weight:300;font-size:19px;color:var(--soft);text-align:center;line-height:1.7;margin-bottom:20px}
.article .cover{aspect-ratio:16/9;margin:36px 0 46px;position:relative}
.article h2{font-family:var(--serif);font-weight:400;font-size:30px;margin:44px 0 14px}
.article h3{font-family:var(--serif);font-weight:500;font-size:21px;margin:30px 0 8px}
.article p{font-family:var(--sans);font-weight:300;font-size:17px;color:var(--ink2);line-height:1.9;margin-bottom:18px}
.article ul{margin:0 0 18px;padding-left:22px}
.article li{font-family:var(--sans);font-weight:300;font-size:17px;color:var(--ink2);line-height:1.8;margin:8px 0}
.article .cta-box{background:var(--cream2);border:1px solid var(--hair);border-radius:4px;padding:36px;text-align:center;margin:50px 0 10px}
.article .cta-box p{font-size:18px;margin-bottom:22px}

footer{background:#1C1815;padding:84px 0 52px;text-align:center}
footer .fbrand{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:.28em;text-transform:uppercase;color:#F3EBE2}
footer .fbrand small{display:block;font-family:var(--sans);font-size:8.5px;letter-spacing:.4em;color:rgba(243,235,226,.5);margin-top:6px}
footer .flinks{margin:28px 0;display:flex;gap:30px;justify-content:center;flex-wrap:wrap}
footer .flinks a{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(243,235,226,.72)}
footer .flinks a:hover{color:#fff}
footer .fsmall{font-family:var(--sans);font-weight:300;font-size:11px;letter-spacing:.1em;color:rgba(243,235,226,.42);margin-top:16px}

/* Tmavé záverečné CTA (filmový zlom do tmy na konci webu) */
.contact.dark{background:#241F1B;padding:130px 0 140px}
.contact.dark .eyebrow,.contact.dark .eyebrow-c{color:rgba(243,235,226,.6)}
.contact.dark .title{color:#F6EFE7}
.contact.dark .sub{color:rgba(243,235,226,.72)}
.contact.dark .btn{color:#F6EFE7;border-color:rgba(243,235,226,.6)}
.contact.dark .btn:hover{background:#F6EFE7;color:#241F1B}

@media(max-width:960px){
  .wrap,.narrow{padding:0 26px}
  section{padding:80px 0}
  .story,.about .cols,.contact .cols{grid-template-columns:1fr;gap:36px}
  .story.rev .txt{order:0}
  .stepgrid,.jgrid{grid-template-columns:1fr;gap:44px}
  .g-three{grid-template-columns:1fr 1fr}
  .pricegrid{grid-template-columns:1fr}
  .pk{border-right:0;border-bottom:1px solid var(--hair)}
  .pk:last-child{border-bottom:0}
  nav.links{gap:20px}
}
@media(max-width:680px){
  header.nav .inner{height:70px}
  nav.links{position:fixed;inset:70px 0 auto 0;background:var(--bg);flex-direction:column;gap:0;padding:8px 0;border-bottom:1px solid var(--hair);display:none}
  nav.links.open{display:flex}
  nav.links a{padding:15px 26px;width:100%}
  .burger{display:block}
  .brand{font-size:18px;letter-spacing:.2em}
  .g-two,.frow{grid-template-columns:1fr}
  .hero{min-height:82vh}
  section{padding:64px 0}
  .statement{padding:90px 0}
}

/* ---- Prispôsobenie pre WordPress (child téma Kyoto) ---- */
.protobar{display:none !important}
header.nav .links{list-style:none;margin:0;padding:0}
header.nav .links li{list-style:none;display:flex}
header.nav .links li a{font-family:var(--sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink2);white-space:nowrap}
header.nav .links li a:hover{color:var(--accent)}
@media(max-width:680px){ header.nav .links li{width:100%} header.nav .links li a{padding:15px 26px;width:100%} }
