:root{
  --bg:#f6f1e7; --bg2:#efe6d6; --ink:#2b2220; --muted:#574a43; --line:#e0d4c0;
  --wine:#4d2729; --gold:#a9825d; --gold-deep:#8a6238; --white:#fbf8f2;
  --serif:'Fraunces',Georgia,serif; --sans:'Hanken Grotesk',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--gold-deep);color:#fff}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.06;letter-spacing:-.02em;text-wrap:balance}
p,li,.rdesc,.rtag{text-wrap:pretty}
.wrap{max-width:1180px;margin:0 auto;padding:0 30px}
.eyebrow{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--gold-deep)}
.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--sans);font-weight:600;font-size:15px;padding:15px 28px;border-radius:100px;cursor:pointer;border:1.5px solid transparent;transition:transform .2s,background .2s,color .2s}
.btn-primary{background:var(--wine);color:var(--white)}
@media(hover:hover) and (pointer:fine){.btn-primary:hover{background:#63363b;transform:translateY(-2px)}}
.btn:active{transform:scale(.97)}
.tile:active{transform:scale(.98)}
.btn:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px}
.reveal{opacity:0;transform:translateY(24px)}

/* NAV */
header{position:fixed;top:0;left:0;right:0;z-index:50;padding:18px 0;transition:padding .3s;--hdrp:0}
/* svetle pozadi se plynule vybarvuje podle scrollu (--hdrp ridi skript), zadny cut */
header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(246,241,231,.93);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line);opacity:var(--hdrp)}
header.solid{padding:11px 0}
.nav{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.1}
.brand svg{flex:none}
.brand em{display:block;font-style:italic;font-weight:400;font-size:13px;color:var(--gold-deep);letter-spacing:.04em}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:14.5px;font-weight:500;opacity:.85}
.nav-links a:hover{opacity:1}
.nav-cta{padding:10px 20px;font-size:13.5px}
.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;flex-direction:column;justify-content:center;gap:5px}
.nav-scrim{display:none}
.burger span{display:block;height:2px;width:24px;background:var(--ink);margin:0 auto}
/* nad tmavym herem je hlavicka svetla, po scrollu (.solid) se vraci tmavy text — plynule */
header,.brand em,.nav-links a{transition:color .4s ease}
.burger span{transition:background .4s ease}
.nav-cta{transition:color .4s ease,background .4s ease,border-color .4s ease,transform .2s}
header:not(.solid){color:#f4ece1}
header:not(.solid) .brand em{color:var(--gold)}
header:not(.solid) .burger span{background:#f4ece1}
header:not(.solid) .nav-cta{background:transparent;border-color:rgba(244,236,225,.55);color:#f4ece1}
@media(hover:hover) and (pointer:fine){header:not(.solid) .nav-cta:hover{background:#f4ece1;color:var(--ink)}}
body.lock .burger span{background:var(--ink)}

/* MASTHEAD — tmave hero, foto vpravo prechazi do pozadi */
.masthead{position:relative;background:var(--ink);color:#f4ece1;min-height:min(92vh,780px);display:flex;align-items:center;padding:clamp(120px,16vh,180px) 0 clamp(60px,8vh,90px);overflow:hidden;border-radius:0 0 50% 50%/0 0 clamp(30px,6vw,84px) clamp(30px,6vw,84px)}
.mast-photo{position:absolute;top:0;right:0;bottom:0;width:min(52%,760px);z-index:1}
.mast-photo img{width:100%;height:100%;object-fit:cover;object-position:62% 30%;-webkit-mask-image:linear-gradient(to right,transparent,#000 18%);mask-image:linear-gradient(to right,transparent,#000 18%)}
.mast-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,560px) 1fr;align-items:center;width:100%}
/* svetlejsi zlata: #a9825d na tmave nesplnuje AA pro maly text */
.mast-eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#c9a373;font-weight:600;margin-bottom:26px}
.mast-h{font-family:'Sentient',var(--serif);font-size:clamp(3rem,6vw,5.4rem);font-weight:500;letter-spacing:-.01em;line-height:1.04;color:#f8f1e6}
.mast-h em{font-style:italic;font-weight:400;color:#efe3d2}
.mast-lead{font-size:clamp(1.02rem,1.25vw,1.18rem);color:#cbbdb2;max-width:44ch;line-height:1.7;margin-top:26px}
.mast-act{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:36px}
.btn-light{background:#f4ece1;color:var(--ink)}
@media(hover:hover) and (pointer:fine){.btn-light:hover{background:#fff;transform:translateY(-2px)}}
.mast-tel{font-family:var(--serif);font-size:1.2rem;color:#f4ece1;border-bottom:1px solid rgba(244,236,225,.35);padding-bottom:3px;transition:border-color .2s}
.mast-tel:hover{border-color:var(--gold)}
.mast-rate{display:flex;align-items:center;gap:12px;margin-top:clamp(36px,6vh,56px);padding-top:26px;border-top:1px solid rgba(244,236,225,.16);max-width:380px;font-size:14.5px;color:#cbbdb2}
.mast-rate .stars{color:#c9a373;letter-spacing:3px;font-size:14px}
.mast-rate .star-p{background:linear-gradient(90deg,#c9a373 78%,rgba(201,163,115,.25) 78%);-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:1020px){.mast-photo{width:58%}}
@media(max-width:820px){
  .masthead{min-height:0;display:block;padding:104px 0 52px}
  .mast-grid{grid-template-columns:1fr}
  .mast-photo{position:relative;inset:auto;width:100%;height:min(96vw,460px);margin-top:38px}
  .mast-photo img{object-position:55% 18%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 16%);mask-image:linear-gradient(to bottom,transparent,#000 16%)}
}
.svc-group{scroll-margin-top:90px}
.tile{display:block;position:relative;padding:18px 16px 16px;margin:-18px -16px -16px;border-radius:12px;transition:background .25s,transform .16s cubic-bezier(.23,1,.32,1)}
.tile:hover{background:rgba(169,130,93,.09)}
.tile-go{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:var(--gold-deep);opacity:0;transform:translateX(-4px);transition:.25s}
.tile:hover .tile-go{opacity:1;transform:none}

/* PROC GALERIE KRASY */
.why{position:relative;padding:clamp(84px,10vw,132px) 0 0;text-align:center;overflow:hidden}
/* logo za textem a pod nim, viditelne ale neprekricene */
.why-mark{position:absolute;left:50%;top:clamp(110px,15vw,190px);transform:translateX(-50%);width:min(580px,84vw);aspect-ratio:293/170;color:var(--gold);opacity:.1;pointer-events:none;z-index:0}
.why .wrap>*:not(.why-mark){position:relative;z-index:1}
.why .wrap{position:relative}
.why-defs{display:flex;flex-direction:column;gap:clamp(14px,2vw,22px);margin:clamp(28px,3.5vw,42px) auto clamp(48px,6vw,64px)}
.why-defs p{font-family:var(--serif);font-size:clamp(1.7rem,3.4vw,2.7rem);line-height:1.25;color:var(--ink);letter-spacing:-.01em}
.why-defs b{font-weight:500;font-style:italic;color:var(--wine)}
.why-defs .eq{color:var(--gold);padding:0 10px;font-weight:400}
.why-defs .hl{position:relative;white-space:nowrap}
/* zlata linka se "dokresli" pri scrollu, viz skript dole */
.why-defs .hl::after{content:"";position:absolute;left:.02em;right:.02em;bottom:-.08em;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.77,0,.175,1)}
.why-defs .hl.draw::after{transform:scaleX(1)}
.why-text{max-width:60ch;margin:0 auto;text-align:left}
.why-text p{color:var(--muted);line-height:1.75;margin-bottom:16px}
.why-text p:first-child{font-size:1.12rem;color:var(--ink)}
.why-text .why-quote{font-family:var(--serif);font-style:italic;font-size:1.25rem;line-height:1.55;color:var(--ink);margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}

/* NAVRAT / COMEBACK */
.comeback{padding:clamp(70px,9vw,120px) 0}
.comeback-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:center}
.comeback-photos{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;align-items:end}
.cp-main{position:relative;aspect-ratio:4/5;border-radius:18px;overflow:hidden}
.cp-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;opacity:0;transition:opacity 1.4s ease}
.cp-main img.on{opacity:1}
.cp-side{aspect-ratio:3/4;border-radius:18px;overflow:hidden;margin-bottom:26px}
.cp-side img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.comeback-text h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:14px 0 22px}
.comeback-text p{color:var(--muted);font-size:1.05rem;line-height:1.75}
.comeback-text .quote{margin-top:28px;font-family:var(--serif);font-style:italic;font-size:1.25rem;color:var(--ink);line-height:1.5}
.comeback-text .quote span{display:block;margin-top:12px;font-family:var(--sans);font-style:normal;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep)}

/* PRISTUP */
.approach{background:var(--bg2);padding:clamp(60px,8vw,100px) 0}
/* tmavsi zlata: --gold-deep na bg2 dava 4.37:1, pod AA pro maly text */
.approach .eyebrow{color:#7d5730}
.approach-head{max-width:640px;margin-bottom:40px}
.approach-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.approach-head p{color:var(--muted);margin-top:12px}
.ap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ap-card{border-top:2px solid var(--gold);padding-top:18px}
.ap-card h3{font-size:1.2rem;margin-bottom:10px}
.ap-card p{color:var(--muted);font-size:14.5px}

/* SLUZBY */
.index{padding:clamp(70px,9vw,120px) 0}
.index-head{max-width:680px;margin-bottom:16px}
.index-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.index-head p{color:var(--muted);font-size:14px;margin-top:8px}
.svc-group{margin-top:clamp(64px,8vw,96px)}
.svc-group:first-of-type{margin-top:56px}
.svc-group-head{border-bottom:2px solid var(--ink);padding-bottom:18px;margin-bottom:6px}
.svc-group-head .gnum{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--gold-deep);display:block;margin-bottom:10px}
.svc-group-head h3{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.1rem)}
.svc-group-head p{color:var(--muted);font-size:14.5px;max-width:52ch;margin-top:8px}
.row{display:grid;grid-template-columns:1fr auto auto;gap:6px 28px;align-items:baseline;padding:32px 0;border-top:1px solid var(--line)}
.svc-group .row:last-of-type{border-bottom:1px solid var(--line)}
.row .rname{font-family:var(--serif);font-size:clamp(1.2rem,2.2vw,1.5rem);font-weight:500}
.row .rtag{display:block;font-family:var(--serif);font-style:italic;color:var(--gold-deep);font-size:15px;margin-top:4px}
.row .rdesc{display:block;font-family:var(--sans);font-size:14.5px;color:var(--muted);font-weight:400;margin-top:8px;max-width:52ch}
.row .rsteps{display:block;font-size:13.5px;color:var(--gold-deep);margin-top:8px;max-width:56ch}
.row .rdur{color:var(--muted);font-size:13.5px;white-space:nowrap;font-variant-numeric:tabular-nums;align-self:start}
.row .rprice{font-family:var(--serif);font-size:1.15rem;white-space:nowrap;font-variant-numeric:tabular-nums;align-self:start}
.svc-note{margin-top:18px;color:var(--muted);font-size:13.5px;font-style:italic}
.index-note{margin-top:40px;color:var(--muted);font-size:14px;padding-top:20px;border-top:1px solid var(--line)}

/* RITUAL HIGHLIGHT */
.ritual{position:relative;background:var(--wine);color:#f3e9e2;padding:clamp(90px,12vw,150px) 0;margin-top:70px;text-align:center;overflow:hidden}
.ritual::before{content:"";position:absolute;inset:-40%;background:radial-gradient(ellipse 50% 40% at 50% 50%,rgba(169,130,93,.22),transparent 70%);animation:breathe 9s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}
.ritual .wrap{max-width:680px;position:relative}
.ritual .eyebrow{color:var(--gold);display:inline-flex;align-items:center;gap:14px}
.ritual .eyebrow::before,.ritual .eyebrow::after{content:"";width:36px;height:1px;background:rgba(169,130,93,.55)}
.ritual h2{color:#fbf6f0;font-size:clamp(2rem,4.6vw,3.2rem);margin:18px 0 22px;font-style:italic}
.ritual p{color:#f0e4dc;font-size:1.05rem}
.ritual-list{list-style:none;margin:30px 0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 0}
.ritual-list li{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--gold);padding:0 18px}
.ritual-list li+li{border-left:1px solid rgba(169,130,93,.4)}
.ritual-prices{display:flex;gap:56px;flex-wrap:wrap;justify-content:center;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.ritual-prices div span{display:block}
.ritual-prices .l{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#c9a49a;margin-bottom:4px}
.ritual-prices .v{font-family:var(--serif);font-size:1.35rem;color:#fbf6f0}

/* GALERIE */
.gallery{padding:clamp(70px,9vw,120px) 0}
.g-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.g-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
.g-head p{color:var(--muted);font-size:14px;max-width:36ch}
/* flex misto gridu: pri poctu, ktery nedeli sirku mrizky beze zbytku (13.8.
   pribyly dve fotky, 10 ve ctyrech sloupcich = 4+4+2), grid necha zbytek viset
   u leveho kraje. Flex s wrap posledni radu vycentruje, at je fotek kolikoliv. */
.g-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.g-grid figure{flex:0 0 calc(25% - 10.5px);aspect-ratio:3/4;overflow:hidden;border-radius:12px;margin:0}
.g-grid img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.23,1,.32,1)}
@media(hover:hover) and (pointer:fine){.g-grid figure:hover img{transform:scale(1.05)}}
.g-note{margin:clamp(26px,3.4vw,40px) 0 0;text-align:center;color:var(--muted);font-size:14.5px;line-height:1.7}
.g-note a{color:var(--wine);text-decoration:underline;text-underline-offset:3px}

/* RECENZE */
.reviews{background:var(--ink);color:#f3ece2;padding:clamp(70px,9vw,120px) 0}
.rv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:40px}
.rv-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem);color:#fbf6f0}
.rv-score{font-family:var(--serif);font-size:15px;color:var(--gold)}
.rv-score b{font-size:1.6rem;color:#fbf6f0;font-weight:500;margin-right:6px}
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rv-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:26px 24px;display:flex;flex-direction:column;gap:14px}
.rv-stars{color:var(--gold);font-size:14px;letter-spacing:2px}
.rv-card p{font-size:15px;line-height:1.65;color:#e8ddd1;flex:1}
.rv-card span{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#b3a190;font-weight:600}
.rv-link{display:inline-block;margin-top:36px;font-size:14.5px;font-weight:600;color:#fbf6f0;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:2px}
.rv-link:hover{border-color:#fff}
/* Iwona 14.8.: objednaci tlacitko pod recenzemi, vedle odkazu na Google */
.rv-act{display:flex;align-items:center;flex-wrap:wrap;gap:18px 30px;margin-top:36px}
.rv-act .rv-link{margin-top:0}

/* O IWONE */
.about{padding:clamp(90px,11vw,150px) 0}
.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(48px,6vw,88px);align-items:center}
.about h2{margin-bottom:26px}
.about p{line-height:1.75}
.about .paths{margin-top:38px;gap:30px 34px}
.about .path{padding-left:18px}
.about .path b{margin-bottom:7px}
.about .path span{line-height:1.65}
.about-img{aspect-ratio:4/5;border-radius:16px;overflow:hidden}
.about-img img{width:100%;height:100%;object-fit:cover}
.about h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin:14px 0 22px}
.about p{color:var(--muted);margin-bottom:16px}
.about .paths{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:24px 28px}
.about .path{padding-left:16px;border-left:2px solid var(--gold)}
.about .path b{display:block;font-family:var(--serif);font-size:1.05rem;margin-bottom:4px}
.about .path span{color:var(--muted);font-size:14px}

/* AKADEMIE */
.women{background:var(--bg2);padding:clamp(70px,9vw,120px) 0}
.women-inner{max-width:820px}
.women h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:14px 0 24px}
.women-text{columns:2;column-gap:48px;color:var(--muted)}
.women-text p{break-inside:avoid;margin-bottom:16px;line-height:1.7}
.w-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.w-card{border-top:2px solid var(--gold);padding-top:18px}
.w-card h3{font-size:1.25rem;margin-bottom:8px}
.w-card p{font-size:14.5px;color:var(--muted)}
.w-consult{margin-top:56px;padding-top:36px;border-top:1px solid var(--line)}
.w-consult h3{font-family:var(--serif);font-size:1.3rem;margin-bottom:18px}
.wc-row{display:grid;grid-template-columns:1fr auto auto;gap:6px 28px;align-items:baseline;padding:18px 0;border-top:1px solid var(--line)}
.wc-row:last-of-type{border-bottom:1px solid var(--line)}
.wc-row .rname{font-family:var(--serif);font-size:1.1rem}
.wc-row .rtag{display:block;font-family:var(--serif);font-style:italic;color:var(--gold-deep);font-size:14px;margin-top:3px}
.wc-row .rdesc{display:block;font-size:14px;color:var(--muted);margin-top:6px;max-width:48ch}
.wc-row .rprice{font-family:var(--serif);white-space:nowrap}
.wc-row .rdur{color:var(--muted);font-size:13px;white-space:nowrap}
.w-note{margin-top:38px;font-size:15px}
.w-note a{font-weight:600;color:var(--wine);border-bottom:1px solid var(--gold-deep);padding-bottom:1px}

/* KONTAKT */
.contact{padding:clamp(70px,9vw,120px) 0}
.c-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.c-info h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin:12px 0 30px}
.c-block{margin-bottom:26px}
.c-block .l{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);font-weight:600;margin-bottom:6px}
.c-block .v{font-family:var(--serif);font-size:1.2rem}
.c-hours-note{font-size:13.5px;line-height:1.6;color:var(--muted);margin-top:12px;max-width:42ch}
.legal{background:var(--bg2);border-top:1px solid var(--line);padding:34px 0}
.legal summary{cursor:pointer;font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--gold-deep)}
.legal summary:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px}
.legal-body{margin-top:18px;max-width:70ch}
.legal-body p{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:10px}
.foot-legal{display:block;margin-top:14px;opacity:.75;line-height:1.7}
.foot-legal a{border-bottom:1px solid rgba(255,255,255,.3)}
[data-todo]{background:rgba(217,119,6,.22);padding:0 5px;border-radius:3px}
.map-consent{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--bg2);text-align:center;padding:24px}
.map-consent p{font-size:13.5px;color:var(--muted);max-width:34ch}
.c-hours div{display:flex;justify-content:space-between;max-width:280px;padding:6px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.c-hours span:first-child{color:var(--muted)}
.c-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.c-map{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);min-height:420px;align-self:stretch}
.map-alt{font-size:13px;color:var(--gold-deep);font-weight:600;border-bottom:1px solid var(--line)}
.c-map iframe{width:100%;height:100%;min-height:420px;border:0;display:block}

/* FORMULAR */
.c-form{margin-top:44px;padding-top:34px;border-top:1px solid var(--line)}
.c-form h3{font-family:var(--serif);font-size:1.2rem;margin-bottom:6px}
.c-form p{color:var(--muted);font-size:14px;margin-bottom:20px}
.c-form form{display:grid;gap:14px}
.c-form label{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;display:block;margin-bottom:6px}
.c-form input,.c-form textarea{width:100%;font-family:var(--sans);font-size:15px;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--white);color:var(--ink)}
.c-form input:focus,.c-form textarea:focus{outline:2px solid var(--gold-deep);outline-offset:1px;border-color:var(--gold-deep)}
.c-form textarea{resize:vertical;min-height:110px}
.c-form button{justify-self:start}

.note-bar{background:var(--bg2);border-top:1px solid var(--line);padding:13px 0;font-size:13px;color:var(--muted);text-align:center}
footer{background:var(--ink);color:#cfc5b8;padding:46px 0 30px}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:22px;align-items:flex-end}
.foot .brand{color:#fff}
.foot .brand em{color:var(--gold)}
.foot small{color:#96897b;font-size:13px}
.foot-links{display:flex;gap:20px;font-size:14px}

@media(max-width:900px){
  .g-grid figure{flex-basis:calc(50% - 7px)}
  .rv-grid{grid-template-columns:1fr}
  .about-grid{grid-template-columns:1fr;gap:36px}
  .about .paths{grid-template-columns:1fr}
  .comeback-grid{grid-template-columns:1fr;gap:36px}
  .comeback-photos{order:2}
  .women-text{columns:1}
  .w-grid{grid-template-columns:1fr;gap:26px}
  .ap-grid{grid-template-columns:1fr!important;gap:30px}
  .c-grid{grid-template-columns:1fr}
  .row{grid-template-columns:1fr auto}
  .row .rdur{grid-column:1/-1;order:3}
  .wc-row{grid-template-columns:1fr auto}
}
@media(max-width:820px){
  .nav-links{position:fixed;inset:0 0 0 auto;width:min(80vw,320px);background:var(--bg);flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:40px;transform:translateX(100%);transition:transform .3s;box-shadow:-20px 0 60px -30px rgba(0,0,0,.4)}
  /* jen posunute mimo viewport zustavalo fokusovatelne a cteno screen readerem */
  .nav-links{visibility:hidden;transition:transform .3s,visibility .3s}
  .nav-links.open{transform:none;visibility:visible}
  /* panel je svetly, takze svetly text z hlavicky nad tmavym herem by tu nebyl videt */
  .nav-links{color:var(--ink)}
  #menu .nav-cta{background:var(--wine);color:var(--white);border-color:transparent}
  .nav-links a{font-size:22px;font-family:var(--serif)}
  .burger{display:flex}
  body.lock{overflow:hidden}
  /* prsty potrebuji vetsi cil nez 35px - menu je hlavni ovladani na telefonu */
  .nav-links{gap:14px}
  .nav-links a{padding:6px 0}
  /* Iwona 27.7.: po otevreni menu klepla vedle panelu a nic se nestalo.
     Scrim ztmavi pozadi a zaroven je plochou na zavreni klepnutim.
     Lezi POD hlavickou (z-50), aby burger zustal svetly a klikatelny. */
  .nav-scrim{display:block;position:fixed;inset:0;z-index:8;margin:0;padding:0;border:0;
    width:100%;background:rgba(43,34,32,.42);opacity:0;visibility:hidden;
    transition:opacity .3s,visibility .3s}
  .nav-scrim.on{opacity:1;visibility:visible}
  .ritual-prices{gap:24px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.why-defs .hl::after{transform:scaleX(1)}}
.tile-grid{grid-template-columns:repeat(5,1fr)}
.tile-grid .tile h3{font-size:1.05rem}
@media(max-width:900px){
  .tile-grid{grid-template-columns:repeat(2,1fr)!important;gap:18px}
  /* 5 dlazdic ve 2 sloupcich nechavalo posledni osirelou, roztahnout ji */
  .tile-grid .tile:last-child{grid-column:1/-1}
}
/* O mne: ctyri smery, stridave strany. Fotka drzi stejny pomer i radius jako .why2
   na uvodce, aby stranka mela stejny raz jako zbytek webu. */
.ways{padding:clamp(10px,2vw,26px) 0 clamp(60px,7vw,96px)}
/* uvodni odstavec nese celou sekci, proto serif a vetsi stupen - drzi vahu
   proti h1 a nepusobi jako popisek */
.ways-lead{max-width:44ch;font-family:var(--serif);font-weight:400;
  font-size:clamp(1.3rem,2.5vw,1.78rem);line-height:1.42;letter-spacing:-.015em;color:var(--ink);
  margin:0 0 clamp(52px,6.5vw,86px);padding-bottom:clamp(30px,4vw,44px);border-bottom:1px solid var(--line)}
.way{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(34px,5vw,76px);align-items:center;
  margin-bottom:clamp(34px,4.5vw,62px)}
/* vlasova linka mezi smery - stejny prvek jako uz drzi .ways-lead, takze
   sekce dostane rytmus bez noveho ornamentu */
.way+.way{border-top:1px solid var(--line);padding-top:clamp(34px,4.5vw,62px)}
/* prohozeny radek musi prohodit i sirky sloupcu, jinak by fotka jednou vysla
   uzsi a jednou sirsi a rada by nedrzela rytmus */
.way-flip{grid-template-columns:1.05fr .95fr}
.way:last-child{margin-bottom:0}
.way-flip .way-photo{order:2}
/* Galerie krasy: fotky visi jako kusy v galerii - zlata pasparta odsazena
   smerem OD textu, aby nikdy nelezla pod copy. Ramecek klipuje .ways
   (overflow:hidden), 20px se do 30px odsazeni .wrap vejde. */
.way-photo{aspect-ratio:4/5;position:relative;background:var(--bg2);border-radius:18px}
.way-photo img{width:100%;height:100%;object-fit:cover;border-radius:18px;position:relative;z-index:1}
.way-photo::after{content:'';position:absolute;inset:0;background:var(--bg2);border-radius:18px;
  transform:translate(-22px,22px);z-index:0}
.way-flip .way-photo::after{transform:translate(22px,22px)}
/* zubaty rytmus: prohozene radky klesnou niz, aby rada nesla jako tabulka */
.way-flip .way-photo,.way-flip .way-copy{margin-top:clamp(0px,3.4vw,52px)}
.way-copy h2{font-size:clamp(1.7rem,3.2vw,2.5rem);margin:0 0 20px;letter-spacing:-.02em}
.way-copy p{color:var(--muted);line-height:1.78;font-size:1.08rem;margin:0;max-width:42ch}
/* citat z jejiho vlastniho clanku v Magazinu - prerusi rytmus ctyr radku
   a da sekci lidsky hlas. Text je jeji, doslova, vcetne odkazu na zdroj. */
.way-quote{border-top:1px solid var(--line);padding-top:clamp(44px,5.5vw,76px);
  margin-bottom:clamp(34px,4.5vw,62px);text-align:center}
.way-quote blockquote{margin:0 auto;max-width:26ch;font-family:var(--serif);font-style:italic;
  font-size:clamp(1.45rem,3.2vw,2.2rem);line-height:1.3;letter-spacing:-.02em;color:var(--ink)}
.way-quote-src{display:inline-block;margin-top:24px;font-size:15px;color:var(--muted);
  border-bottom:1px solid var(--line);padding-bottom:3px}
.way-quote-src:hover{border-bottom-color:var(--gold);color:var(--ink)}
.way-quote+.way{border-top:1px solid var(--line);padding-top:clamp(34px,4.5vw,62px)}
.way-more{display:inline-block;margin-top:20px;font-size:14.5px;font-weight:600;color:var(--wine);
  border-bottom:1px solid var(--gold);padding-bottom:2px}
.way-more:hover{border-bottom-color:var(--wine)}
@media(max-width:900px){
  .way{grid-template-columns:1fr;gap:26px}
  .way-flip .way-photo{order:-1}
  .way-photo{aspect-ratio:3/4;max-height:56vh}
  .way-copy p{max-width:none}
}

/* Magazin: prehled clanku + samotny clanek */
/* overflow:hidden stejne jako u .pull - vodoznak jinak precuhne pres pravy
   okraj a na mobilu vznikne vodorovne rolovani */
.mag{padding:clamp(10px,2vw,26px) 0 clamp(60px,7vw,96px);position:relative;overflow:hidden}
.mag .wrap{position:relative}
/* stejny motiv jako u citatu na uvodce a v Akademii - jeden clanek by jinak
   na strance plaval a paticka by ho opticky prebila */
.mag-mark{position:absolute;right:-2%;top:50%;transform:translateY(-50%);width:min(460px,64vw);
  aspect-ratio:293/170;color:var(--gold);opacity:.08;pointer-events:none;z-index:0}
.mag-list{display:grid;gap:clamp(20px,2.6vw,30px);max-width:760px;position:relative;z-index:1}
.mag-card{display:block;padding:clamp(26px,3.4vw,40px);background:var(--white);border-radius:18px;
  border:1px solid var(--line);transition:border-color .25s,transform .25s}
.mag-card time{display:block;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-deep);font-weight:600}
.mag-card h2{font-size:clamp(1.4rem,2.5vw,1.95rem);margin:12px 0 12px;letter-spacing:-.02em;line-height:1.25}
.mag-card p{color:var(--muted);line-height:1.75;margin:0}
.mag-more{display:inline-block;margin-top:18px;font-size:14.5px;font-weight:600;color:var(--wine);
  border-bottom:1px solid var(--gold);padding-bottom:2px}
@media(hover:hover) and (pointer:fine){
  .mag-card:hover{border-color:var(--gold);transform:translateY(-2px)}
  .mag-card:hover .mag-more{border-bottom-color:var(--wine)}
}

.post{padding:clamp(10px,2vw,26px) 0 clamp(60px,7vw,96px)}
.post-date{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);
  font-weight:600;margin:0 0 clamp(26px,3.4vw,38px)}
.post-body{max-width:62ch}
.post-body p{color:var(--muted);line-height:1.85;margin:0 0 18px;font-size:1.04rem}
.post-body h2{font-size:clamp(1.45rem,2.6vw,2rem);margin:clamp(34px,4vw,48px) 0 18px;letter-spacing:-.02em}
.post-lead{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,1.7rem);
  line-height:1.4;color:var(--wine)!important;margin:clamp(26px,3vw,34px) 0!important}
.post-news{margin:0 0 18px;padding:clamp(22px,2.8vw,30px);background:var(--bg2);border-radius:16px}
.post-news dt{font-family:var(--serif);font-size:1.1rem;color:var(--ink);margin-bottom:4px}
.post-news dd{margin:0 0 16px;color:var(--muted);line-height:1.75}
.post-news dd:last-child{margin-bottom:0}
.post-sign{font-family:var(--serif);font-style:italic;font-size:1.15rem;color:var(--ink)!important;
  margin-top:clamp(30px,3.6vw,42px)!important}
.post-sign span{display:block;margin-top:6px}
.post-back{display:inline-block;margin-top:clamp(36px,4.4vw,56px);font-size:14.5px;font-weight:600;
  color:var(--wine);border-bottom:1px solid var(--gold);padding-bottom:2px}
.post-back:hover{border-bottom-color:var(--wine)}

.thanks{padding:96px 0;background:var(--bg2);border-top:1px solid var(--line)}
.thanks-inner{max-width:46ch;margin-inline:auto;text-align:center}
.brand-name em{display:block;line-height:1.2}
.mark{width:60px;height:35px;color:var(--gold);flex:none}
.foot-lockup{align-items:flex-start;gap:12px;flex-direction:column;text-align:left}
.foot-lockup .mark{width:74px;height:43px}
.foot-lockup .est{display:block;font-style:normal;font-family:var(--sans);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-top:7px;opacity:.85}
@media(max-width:820px){.mark{width:50px;height:29px}}
.thanks h2{font-size:clamp(1.9rem,4vw,2.9rem);margin-bottom:28px}
.thanks p{font-family:var(--serif);font-style:italic;font-size:1.2rem;line-height:1.6;margin-bottom:16px;color:var(--ink)}
.thanks .sign{margin:40px auto 0;width:min(300px,72%);height:auto}
@media(max-width:820px){.thanks{padding:68px 0}}
.homecare{background:var(--bg2);padding:64px 0}
.homecare .eyebrow{display:block;margin-bottom:14px}
.homecare p{color:var(--muted);font-size:1.05rem;line-height:1.75;max-width:62ch}
@media(max-width:820px){.homecare{padding:52px 0}}
@media(max-width:820px){
  .ritual-list{flex-direction:column;gap:13px}
  .ritual-list li{padding:0}
  .ritual-list li+li{border-left:0}
}
/* cena a cas v Akademii se pod 900px lamaly stejne jako v ceniku, chybela jim ta oprava */
@media(max-width:900px){
  .wc-row .rdur{grid-column:1/-1;order:3}
}
/* na dotyku neni hover, takze "Prohlednout" bylo na mobilu neviditelne */
@media(hover:none){
  .tile-go{opacity:1;transform:none}
}
/* zlata na vinove nesplnovala WCAG AA (3,7:1), svetlejsi odstin jen pro tuto sekci */
.ritual{--gold:#c9a373}

/* ---- PODSTRANKY: hlavicka je tady vzdy svetla, neni pod ni tmave hero ---- */
body.sub header{--hdrp:1}
body.sub{padding-top:0}
.page-hero{padding:clamp(130px,17vh,180px) 0 clamp(40px,6vw,64px);background:var(--bg2);border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2.1rem,4.6vw,3.4rem);margin-top:12px}
.page-hero p{color:var(--muted);margin-top:16px;max-width:56ch;line-height:1.75}

/* ---- UVOD: cesta k prirozenosti + citat ---- */
.intro{padding:clamp(74px,9vw,116px) 0 clamp(60px,7vw,84px);text-align:center}
.intro h2{font-size:clamp(2rem,4.2vw,3.1rem)}
.intro-lead{color:var(--muted);font-size:1.1rem;line-height:1.75;max-width:52ch;margin:22px auto 0}
.pull{padding:clamp(70px,11vw,150px) 0;text-align:center}
.pull blockquote{max-width:20ch;margin:0 auto;font-family:'Sentient',var(--serif);font-style:italic;font-weight:400;font-size:clamp(1.7rem,3.3vw,2.35rem);line-height:1.34;color:var(--ink);letter-spacing:-.015em}
.pull .sig{margin-top:clamp(34px,5vw,52px);font-family:var(--serif);font-size:1.15rem}
.pull .sig span{display:block;margin-top:8px;font-family:var(--sans);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);font-weight:600}

/* ---- PROC GALERIE KRASY: dva sloupce, text vlevo, fotka vpravo ---- */
.why2{padding:clamp(70px,9vw,120px) 0;background:var(--bg2)}
.why2-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,84px);align-items:center}
.why2 h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:14px 0 26px}
.why2-defs{margin-bottom:30px}
.why2-defs p{font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1.45;color:var(--ink)}
.why2-defs p b{font-weight:500;font-style:italic}
.why2-text p{color:var(--muted);line-height:1.78;margin-bottom:16px}
.why2-text p:first-child{color:var(--ink);font-size:1.08rem}
.why2-photo{aspect-ratio:4/5;border-radius:18px;overflow:hidden}
.why2-photo img{width:100%;height:100%;object-fit:cover}
.photo-todo{display:flex;align-items:center;justify-content:center;text-align:center;background:var(--bg);border:1.5px dashed var(--line);color:var(--muted);font-size:13.5px;padding:24px;line-height:1.6}
@media(max-width:900px){.why2-grid{grid-template-columns:1fr;gap:34px}.why2-photo{order:-1}}

/* ---- HARMONIKA SLUZEB ---- */
.acc{max-width:900px;margin:0 auto}
.acc-item{border-bottom:1px solid var(--line)}
.acc-item:first-child{border-top:1px solid var(--line)}
.acc-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:0;cursor:pointer;text-align:left;padding:clamp(24px,3.2vw,34px) 4px;font-family:var(--serif);font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:500;color:var(--ink);letter-spacing:-.02em;transition:color .2s}
.acc-head:hover{color:var(--wine)}
.acc-head:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}
.acc-sub{display:block;font-family:var(--sans);font-size:14px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:8px;max-width:46ch}
.acc-ico{flex:none;position:relative;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--gold);transition:background .25s,transform .35s}
.acc-ico::before,.acc-ico::after{content:"";position:absolute;left:50%;top:50%;background:var(--gold-deep);transform:translate(-50%,-50%);transition:opacity .25s,transform .35s}
.acc-ico::before{width:11px;height:1.5px}
.acc-ico::after{width:1.5px;height:11px}
.acc-head[aria-expanded="true"] .acc-ico{background:rgba(169,130,93,.14);transform:rotate(180deg)}
.acc-head[aria-expanded="true"] .acc-ico::after{opacity:0}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.4,0,.2,1)}
.acc-panel>div{overflow:hidden}
.acc-item.open .acc-panel{grid-template-rows:1fr}
.acc-body{padding:0 4px 34px}
.acc-body .row:first-of-type{border-top:1px solid var(--line)}
@media(prefers-reduced-motion:reduce){.acc-panel{transition:none}}

/* ---- KONTAKTNI PODSTRANKA ---- */
.contact-page{padding:clamp(56px,7vw,90px) 0 clamp(70px,9vw,120px)}

/* =========================================================
   ITERACE 2 (feedback Toma 21.7.)
   ========================================================= */

/* ---- SPACING: sekce byly tak vysoke, ze se ani jedna nevesla na 1080p obrazovku ---- */
.intro{padding:clamp(52px,6vw,76px) 0 clamp(34px,4vw,48px)}
.pull{padding:clamp(40px,5.5vw,78px) 0 clamp(52px,6.5vw,92px)}
.why2{padding:clamp(52px,6.5vw,84px) 0}
.approach{padding:clamp(48px,6vw,78px) 0}
.reviews{padding:clamp(52px,6.5vw,84px) 0}
.gallery,.about,.women,.contact,.index{padding:clamp(52px,6.5vw,84px) 0}
.comeback{padding:clamp(48px,6vw,78px) 0}
.thanks{padding:clamp(56px,7vw,84px) 0}
.rv-head{margin-bottom:28px}
.why2-text p{margin-bottom:13px}

/* ---- HLAVICKA: telefon byl plny vinovy pill, tedy nejvyraznejsi prvek cele listy ---- */
.nav-cta{font-family:var(--sans);font-weight:600;font-size:13.5px;letter-spacing:.01em;padding:9px 0 3px;border:0;border-bottom:1px solid rgba(87,74,67,.3);border-radius:0;background:none;color:inherit;opacity:.9;transition:border-color .25s,opacity .25s,color .4s}
.nav-cta:hover{opacity:1;border-color:var(--gold-deep)}
header:not(.solid) .nav-cta{background:none;border-color:rgba(244,236,225,.4);color:#f4ece1}
@media(hover:hover) and (pointer:fine){header:not(.solid) .nav-cta:hover{background:none;color:#fff;border-color:var(--gold);transform:none}}
/* aktivni polozka menu nebyla nijak videt, i kdyz aria-current byl nastaveny */
.nav-links a[aria-current="page"]{opacity:1;position:relative}
.nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1.5px;background:var(--gold)}

/* pristupnost: preskocit na obsah */
.skip{position:absolute;left:-9999px;z-index:100}
.skip:focus{left:16px;top:16px;background:var(--wine);color:var(--white);padding:12px 20px;border-radius:8px;font-weight:600;font-size:14px}

/* ---- ZAHLAVI PODSTRANEK: bezovy pruh s linkou pusobil jako odrizly kus navigace ---- */
.page-hero{padding:clamp(112px,14vh,150px) 0 clamp(28px,3.5vw,44px);background:none;border-bottom:0}
.page-hero h1{font-size:clamp(2.1rem,4.4vw,3.2rem);margin-top:10px}
.page-hero p{color:var(--muted);margin-top:14px;max-width:54ch;line-height:1.7}

/* ---- MUJ PRISTUP: cisla srovnaji opticky ruzne dlouhe sloupce ---- */
.ap-card{border-top:1.5px solid var(--gold);padding-top:16px}
.ap-num{display:block;font-family:var(--serif);font-size:12.5px;letter-spacing:.16em;color:var(--gold-deep);margin-bottom:12px;font-weight:600}
.ap-card h3{font-size:1.15rem;margin-bottom:9px}
.ap-card p{color:var(--muted);font-size:14.5px;line-height:1.7}
.approach-head{margin-bottom:28px}

/* ---- HARMONIKA SLUZEB: bylo to holych 5 radku, chybela hierarchie i info ---- */
.acc{max-width:960px;margin:0 auto}
.acc-item{border-bottom:1px solid var(--line);transition:background .3s}
.acc-item:first-child{border-top:1px solid var(--line)}
.acc-head{width:100%;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:0 26px;background:none;border:0;cursor:pointer;text-align:left;padding:clamp(22px,2.6vw,30px) clamp(10px,1.6vw,22px);font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.02em;transition:color .25s,background .3s}
.acc-num{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.16em;color:var(--gold);align-self:start;padding-top:8px}
.acc-txt{min-width:0;font-size:clamp(1.3rem,2.5vw,1.85rem)}
.acc-sub{display:block;font-family:var(--sans);font-size:14px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:7px;max-width:52ch;line-height:1.6}
.acc-hint{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--gold-deep);white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.9}
@media(hover:hover) and (pointer:fine){
  .acc-item:hover{background:rgba(169,130,93,.12)}
  .acc-head:hover{color:var(--wine)}
}
.acc-head:focus-visible{outline:2px solid var(--gold-deep);outline-offset:-4px}
.acc-ico{flex:none;position:relative;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--gold);transition:background .25s,transform .4s}
.acc-ico::before,.acc-ico::after{content:"";position:absolute;left:50%;top:50%;background:var(--gold-deep);transform:translate(-50%,-50%);transition:opacity .25s}
.acc-ico::before{width:12px;height:1.5px}
.acc-ico::after{width:1.5px;height:12px}
.acc-head[aria-expanded="true"] .acc-ico{background:rgba(169,130,93,.16);transform:rotate(180deg)}
.acc-head[aria-expanded="true"] .acc-ico::after{opacity:0}
.acc-item.open{background:rgba(169,130,93,.1)}
.acc-item.open>h2>.acc-head{color:var(--wine)}
.acc-item.open .acc-hint{opacity:0}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.4,0,.2,1)}
.acc-panel>div{overflow:hidden}
.acc-item.open .acc-panel{grid-template-rows:1fr}
.acc-body{padding:0 clamp(10px,1.6vw,22px) 30px}
.acc-body .row:first-of-type{border-top:1px solid var(--line)}
.acc-body .row{padding:24px 0}
@media(prefers-reduced-motion:reduce){.acc-panel{transition:none}}
@media(max-width:700px){
  .acc-head{grid-template-columns:auto 1fr auto;gap:0 16px}
  .acc-num{display:none}
  .acc-hint{display:none}
}
.index-foot{max-width:960px;margin:44px auto 0;padding-top:26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
.index-note{margin:0;color:var(--muted);font-size:14px;padding:0;border:0}

/* ---- PATICKA: vpravo nahore zela prazdna dira, obsah byl vlevo dole ---- */
footer{background:var(--ink);color:#cfc5b8;padding:clamp(48px,6vw,68px) 0 26px}
.foot{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:34px 40px;align-items:start;padding-bottom:32px}
.foot-brand small{display:block;margin-top:16px;color:#96897b;font-size:13px;max-width:34ch;line-height:1.6}
.foot-col{display:flex;flex-direction:column;gap:11px}
.foot-h{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:4px}
.foot-col a{font-size:14px;color:#cfc5b8;line-height:1.55;transition:color .2s}
.foot-col a:hover{color:#fff}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;gap:14px 40px;flex-wrap:wrap}
.foot-legal{color:#8b7f72;font-size:12.5px;line-height:1.7;margin:0;opacity:1}
.foot-legal a{border-bottom:1px solid rgba(255,255,255,.22)}
.foot-legal a:hover{color:#fff}
@media(max-width:820px){
  .foot{grid-template-columns:1fr;gap:30px}
  .foot-bottom{flex-direction:column;gap:8px}
}

/* ---- ostatni ---- */
body:not(.sub) .approach{background:var(--bg);border-top:1px solid var(--line)}
body.sub .index{padding-top:clamp(24px,3vw,38px)}
body.sub .gallery,body.sub .about,body.sub .women{padding-top:clamp(28px,3.5vw,44px)}
.comeback-text .btn{display:inline-flex}

/* zavirani bez animace, aby sel presne dopocitat posun scrollu (viz app.js) */
.acc-item.noanim .acc-panel{transition:none}

/* podnadpis se lamal uz po ~45 znacich, 52ch bylo mereno pri vetsim pismu */
.acc-sub{max-width:74ch}
/* spodni linka harmoniky + linka nad patickou sekce delaly prazdny pruh */
.index-foot{border-top:0;margin-top:32px;padding-top:0}

/* "Stare ja" a "Dekuji" mely obe bg2 a splyvaly v jeden blok */
.thanks{background:var(--bg)}

/* =========================================================
   ITERACE 3 (feedback Toma 21.7. vecer)
   ========================================================= */

/* ---- TELEFON V HLAVICCE: podtrzeni pryc, ma byt nenapadny ---- */
.nav-cta{border-bottom:0;padding:9px 0;opacity:.75}
.nav-cta:hover{opacity:1;color:var(--gold-deep)}
header:not(.solid) .nav-cta{border-bottom:0}
@media(hover:hover) and (pointer:fine){header:not(.solid) .nav-cta:hover{color:var(--gold);border-color:transparent}}

/* ---- PROC GALERIE KRASY: motto jako cisty nadpis, ne radek textu ---- */
.why2 h2{font-size:clamp(2rem,3.8vw,2.9rem);margin:0 0 30px}
.why2-defs{margin-bottom:32px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.why2-defs p{display:block;margin-bottom:18px}
.why2-defs p:last-child{margin-bottom:0}
.why2-defs b{display:block;font-family:var(--serif);font-weight:500;font-style:normal;font-size:clamp(1.5rem,2.6vw,2rem);color:var(--wine);letter-spacing:-.015em;line-height:1.15}
.why2-defs span{display:block;margin-top:5px;font-family:var(--sans);font-size:15px;color:var(--muted);line-height:1.6}
.why2-photo{aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--bg)}
.why2-photo img{width:100%;height:100%;object-fit:cover;object-position:52% 35%}

/* ---- MUJ PRISTUP: 3 sloupce s linkou nahore = nejgenerictejsi AI vzor.
       Misto toho mekke panely, cisla pryc, nestejne dlouhy text uz nevadi ---- */
.approach{background:var(--bg2)}
body:not(.sub) .approach{background:var(--bg2);border-top:0}
.approach-head{margin-bottom:30px}
.ap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.ap-card{background:var(--white);border:1px solid rgba(224,212,192,.9);border-top:1px solid rgba(224,212,192,.9);border-radius:16px;padding:clamp(24px,2.6vw,32px);height:100%;display:flex;flex-direction:column}
.ap-card h3{font-size:1.18rem;margin:0 0 12px;line-height:1.25}
.ap-card h3::after{content:"";display:block;width:26px;height:1.5px;background:var(--gold);margin-top:12px}
.ap-card p{color:var(--muted);font-size:14.5px;line-height:1.72;margin:0}
.ap-num{display:none}
@media(max-width:900px){.ap-grid{grid-template-columns:1fr!important;gap:16px}}

/* ---- PRECHOD RECENZE -> PATICKA: dva tmave bloky na sobe splyvaly v jeden ---- */
.reviews{background:linear-gradient(180deg,var(--ink) 0%,var(--ink) 62%,#241d1b 100%)}
footer{background:#241d1b;position:relative}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(169,130,93,.5),transparent)}
/* na svetlych podstrankach chybel patice horni predel uplne */
body.sub footer{background:var(--ink)}

/* ---- KONTAKT: mezi uvodem stranky a obsahem zela prazdno ---- */
.contact-page{padding-top:clamp(20px,2.4vw,32px)}
.c-map{min-height:0;height:100%}

/* ITERACE 4: prechod recenze -> paticka byl porad skoro neviditelny */
.reviews{background:linear-gradient(180deg,var(--ink) 0%,var(--ink) 55%,#231c1a 100%);padding-bottom:clamp(64px,8vw,100px)}
footer{background:#1b1513}
footer::before{background:linear-gradient(90deg,transparent,rgba(169,130,93,.55) 35%,rgba(169,130,93,.55) 65%,transparent)}
body.sub footer{background:#1b1513}
.foot-col a,.foot-brand small{color:#c6bbae}
.foot-legal{color:#8a7d70}

/* ITERACE 5: mapa se roztahovala pres celou vysku sloupce a byla prazdna */
.c-map{align-self:start;height:auto;aspect-ratio:4/3;min-height:0}
.c-map iframe{min-height:0;aspect-ratio:4/3;height:auto}
.c-grid{gap:clamp(32px,4vw,56px)}
@media(max-width:900px){.c-map{aspect-ratio:3/2}}

/* =========================================================
   ITERACE 6 — cenik od nuly, kontakt, akademie, o mne
   ========================================================= */

/* ---- LOGO ZA CITATEM: sekce byla prazdna plocha ---- */
.pull{position:relative;overflow:hidden}
.pull .wrap{position:relative}
.pull-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);width:min(560px,80vw);aspect-ratio:293/170;color:var(--gold);opacity:.09;pointer-events:none;z-index:0}
.pull blockquote,.pull .sig{position:relative;z-index:1}

/* =========================================================
   CENIK — postaven znovu: karty misto radku tabulky
   ========================================================= */
.svc-intro{color:var(--muted);line-height:1.78;max-width:62ch;margin:0 0 26px;font-size:15.5px}
.svc-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.svc{background:var(--white);border:1px solid rgba(224,212,192,.85);border-radius:16px;padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;transition:border-color .25s,transform .25s,box-shadow .25s}
@media(hover:hover) and (pointer:fine){
  .svc:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 14px 34px -26px rgba(43,34,32,.5)}
}
.svc-name{font-family:var(--serif);font-size:clamp(1.15rem,1.9vw,1.4rem);font-weight:500;line-height:1.2;margin:0}
.svc-quote{font-family:var(--serif);font-style:italic;font-size:14.5px;color:var(--gold-deep);margin:8px 0 0}
.svc-desc{color:var(--muted);font-size:14.5px;line-height:1.72;margin:14px 0 0}
.svc-steps{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
.svc-steps li{position:relative;padding-left:18px;font-size:13.5px;color:var(--muted);line-height:1.5}
.svc-steps li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;border:1px solid var(--gold)}
.svc-meta{margin-top:auto;padding-top:18px;display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.svc .svc-meta{margin-top:22px;border-top:1px solid var(--line)}
.svc-dur{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:600;white-space:nowrap}
.svc-price{font-family:var(--serif);font-size:1.2rem;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.acc-body .svc-note{margin-top:20px;font-size:13.5px;color:var(--muted);font-style:italic;line-height:1.7;max-width:74ch}
.acc-body .svc-note a{color:var(--wine);border-bottom:1px solid var(--gold-deep);font-style:normal;font-weight:600}
@media(max-width:820px){.svc-list{grid-template-columns:1fr}}

/* =========================================================
   KONTAKT — mapa uz nestoji vedle textu, ale pod nim pres celou sirku
   ========================================================= */
.contact-page .c-grid{display:block}
.c-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,44px);padding-bottom:clamp(28px,3.4vw,40px);border-bottom:1px solid var(--line)}
.c-cols .c-block{margin:0}
.c-block .v a{border-bottom:1px solid var(--line)}
.c-block .v a:hover{border-color:var(--gold-deep)}
.c-link{display:inline-block;margin-top:10px;font-size:13.5px;font-weight:600;color:var(--gold-deep);border-bottom:1px solid var(--line)}
.c-link:hover{border-color:var(--gold-deep)}
.c-hours div{max-width:none}
.c-cta{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;padding:clamp(26px,3.4vw,40px) 0 clamp(30px,3.6vw,42px)}
.c-cta p{color:var(--muted);font-size:14.5px;line-height:1.7;max-width:56ch;margin:0}
.c-cta .btn{flex:none}
.c-cta-rez{flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;gap:18px}
.c-cta-lead{margin:0;max-width:34ch;font-family:var(--serif);font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.4;color:var(--ink);letter-spacing:-.01em}
.c-cta-note{color:var(--muted);font-size:13.5px;line-height:1.7;max-width:54ch;margin:2px auto 0}
.c-map{align-self:auto;width:100%;aspect-ratio:21/8;height:auto;min-height:0;border-radius:18px}
.c-map iframe{aspect-ratio:21/8;width:100%;height:100%}
.c-terms{margin-top:20px;font-size:13.5px;color:var(--muted)}
.c-terms a{color:var(--wine);border-bottom:1px solid var(--gold-deep)}
@media(max-width:900px){
  .c-cols{grid-template-columns:1fr;gap:26px}
  .c-map{aspect-ratio:4/3}
  .c-map iframe{aspect-ratio:4/3}
}

/* =========================================================
   AKADEMIE BYTI — ornamenty za textem, sekce byla holy text
   ========================================================= */
.women{position:relative;overflow:hidden;background:var(--bg2)}
.ak-deco{position:absolute;inset:0;pointer-events:none;z-index:0}
/* oblouk = stejny motiv jako spodni hrana hera */
.ak-arch{position:absolute;top:clamp(-90px,-6vw,-40px);right:-6%;width:min(520px,52vw);aspect-ratio:1/1.15;border:1px solid rgba(169,130,93,.32);border-radius:50% 50% 46% 46%/60% 60% 40% 40%}
.ak-ring{position:absolute;border-radius:50%;border:1px solid rgba(169,130,93,.3)}
.ak-ring-a{width:min(210px,26vw);aspect-ratio:1;left:-70px;top:34%}
.ak-ring-b{width:min(120px,16vw);aspect-ratio:1;right:16%;bottom:12%;border-color:rgba(169,130,93,.45)}
.ak-mark{position:absolute;right:4%;bottom:-4%;width:min(420px,46vw);aspect-ratio:293/170;color:var(--gold);opacity:.1}
.women .wrap{position:relative;z-index:1}
.women-inner{max-width:660px}
.women-text{columns:1;color:var(--muted)}
.women-text p{margin-bottom:15px;line-height:1.78}
.women-text p:first-child{font-size:1.08rem;color:var(--ink)}
.w-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(36px,4.4vw,56px)}
.w-card{background:var(--white);border:1px solid rgba(224,212,192,.85);border-top:1px solid rgba(224,212,192,.85);border-radius:16px;padding:clamp(22px,2.4vw,30px);height:100%}
.w-card h3{font-size:1.15rem;margin:0 0 12px;line-height:1.25}
.w-card h3::after{content:"";display:block;width:26px;height:1.5px;background:var(--gold);margin-top:12px}
.w-card p{font-size:14.5px;color:var(--muted);line-height:1.72;margin:0}
.w-foot{margin-top:clamp(32px,4vw,48px);padding-top:24px;border-top:1px solid var(--line);max-width:70ch}
.w-foot p{font-size:15px;color:var(--muted);line-height:1.75;margin:0}
.w-foot a{font-weight:600;color:var(--wine);border-bottom:1px solid var(--gold-deep)}
@media(max-width:900px){
  .w-grid{grid-template-columns:1fr;gap:14px}
  .ak-arch,.ak-ring-a{display:none}
}

/* =========================================================
   O MNE — spacing: fotka byla vyssi nez text, sekce se rozjizdely
   ========================================================= */
body.sub .about{padding:clamp(24px,3vw,40px) 0 clamp(46px,5.5vw,72px)}
.about-grid{grid-template-columns:.85fr 1.15fr;gap:clamp(34px,4.4vw,64px);align-items:start}
.about-img{aspect-ratio:4/5;position:sticky;top:96px}
.about-grid>div:last-child{padding-top:4px}
.about p{margin-bottom:14px}
.about .paths{margin-top:28px;gap:20px 24px}
.about .path b{font-size:1.02rem}
.about .path span{font-size:13.8px;line-height:1.65}
.comeback{padding:clamp(44px,5.5vw,72px) 0}
.comeback-grid{align-items:center}
.thanks{padding:clamp(50px,6vw,76px) 0}
.thanks p{margin-bottom:13px}
.thanks .sign{margin-top:32px}
@media(max-width:900px){.about-img{position:static}}

/* ITERACE 7 */
/* cena mela byt zaraz u spodni hrany karty, pozdejsi pravidlo prebilo margin-top:auto */
.svc .svc-meta{margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
/* nenactena mapa byla pres pul obrazovky prazdna plocha */
.c-map{aspect-ratio:3/1}
.c-map iframe{aspect-ratio:3/1}
.map-consent p{max-width:40ch;font-size:14px}
@media(max-width:900px){.c-map,.c-map iframe{aspect-ratio:4/3}}
/* vodoznak v Akademii pretahoval pozornost od textu */
.ak-mark{opacity:.07}

/* ITERACE 8: fotka na O mne byla vyssi nez text vedle ni */
.about-img{aspect-ratio:1/1.12}
.about-grid{grid-template-columns:.8fr 1.2fr}

/* =========================================================
   ITERACE 9 — vzduch v ceniku, uprava ornamentu
   ========================================================= */

/* karty sluzeb byly namackane, hlavne zespoda pod cenou */
.svc{padding:clamp(26px,2.8vw,36px) clamp(24px,2.6vw,34px) clamp(24px,2.6vw,32px)}
.svc-name{line-height:1.25}
.svc-quote{margin-top:10px;font-size:15px}
.svc-desc{margin-top:18px;font-size:15px;line-height:1.8}
.svc-steps{margin-top:20px;gap:10px}
.svc-steps li{font-size:14px;line-height:1.6;padding-left:20px}
.svc .svc-meta{margin-top:auto;padding-top:22px}
.svc-list{gap:20px}
.svc-meta+*{margin-top:0}
/* mezi cenou a spodni hranou karty chybel dech */
.svc-price{line-height:1.3}
.acc-body{padding-bottom:38px}
.acc-body .svc-note{margin-top:26px;line-height:1.8}
.svc-intro{margin-bottom:30px;line-height:1.8}

/* ---- AKADEMIE: maly kruh vpravo dole pryc, oblouk vpravo nahore delsi ---- */
.ak-ring-b{display:none}
.ak-arch{top:clamp(-160px,-9vw,-70px);right:-12%;width:min(760px,66vw);aspect-ratio:1/1.25}

/* =========================================================
   ITERACE 10 — vzduch UVNITR karet, ne jen kolem nich
   ========================================================= */
.svc-name{font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.3}
.svc-quote{margin-top:14px;font-size:15.5px;line-height:1.5}
.svc-desc{margin-top:22px;font-size:15px;line-height:1.9;letter-spacing:.004em}
.svc-steps{margin-top:26px;gap:13px}
.svc-steps li{font-size:14.5px;line-height:1.7;padding-left:22px}
.svc-steps li::before{top:.62em}
.svc .svc-meta{padding-top:26px}
.svc-dur{letter-spacing:.15em}

/* stejny dech i v ostatnich kartach, at web drzi jeden rytmus */
.ap-card p,.w-card p{font-size:15px;line-height:1.85}
.ap-card h3,.w-card h3{margin-bottom:14px}
.ap-card h3::after,.w-card h3::after{margin-top:14px}
.ap-card,.w-card{padding:clamp(26px,2.8vw,34px)}

/* vice odkazu ve sloupci Ozvete se pod sebou */
.c-block .c-link{display:block;margin-top:12px}

/* podtrzeni u display:block se roztahlo pres cely sloupec a cetlo se jako oddelovac */
.c-block .c-link{display:block;width:fit-content}
.c-block .v a{display:inline-block}

/* scrollbar: default sedy pruh na krem./tmavem webu vypada jako cizi prvek */
html{scrollbar-color:var(--gold) var(--bg2);scrollbar-width:thin}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:var(--bg2)}
::-webkit-scrollbar-thumb{background:#c3a684;border-radius:100px;border:3px solid var(--bg2)}
::-webkit-scrollbar-thumb:hover{background:var(--gold-deep)}

/* ==== CTENI NA TELEFONU (musi byt uplne na konci, drivejsi verze prebijely
   pozdejsi bloky v tomhle souboru) ====
   Ctecí text nesmi na mobilu klesnout pod ~15,5px. Klientky jsou z velke casti
   zeny 40+ a sede 13,5px pismo na telefonu uz se lusti. Desktop zustava beze zmeny. */
@media(max-width:820px){
  /* .c-cta p je veta o hodinach, kterou Iwona vyslovne chvalila - v nasazene
     variante (bez rezervacniho URL) je to holy <p>, ne .c-cta-note */
  .acc-body .svc-note,.c-cta-note,.c-cta p{font-size:15.5px}
  .acc-sub,.index-note{font-size:15px}
  .svc-steps li{font-size:15.5px;line-height:1.65}
  .g-note,.ap-card p,.w-card p,.w-foot p,.svc-intro,.svc-desc{font-size:16px}
  .foot-col a,.foot-brand small{font-size:15px}
  .rv-link,.rv-score,.rv-card p{font-size:15.5px}
}

/* === O mne: vodoznak loga (nahradil dekorativni nit, 2026-07-27) ===
   Nit vedla diagonalne pres celou sekci a rozbijela klidny grid. Misto ni
   stejny motiv, jaky uz drzi .pull-mark / .why-mark / .ak-mark jinde na webu.
   overflow:hidden stejne jako u .pull a .mag, jinak vodoznak precuha
   pres pravy okraj a dela vodorovne rolovani na mobilu. */
.ways{position:relative;overflow:hidden}
.ways>.wrap,.ways>.way{position:relative;z-index:1}
.ways-mark{position:absolute;right:3%;top:clamp(4px,1.5vw,22px);width:min(400px,48vw);
  aspect-ratio:293/170;color:var(--gold);opacity:.09;pointer-events:none;z-index:0}
@media(max-width:900px){
  /* na mobilu je lead pres celou sirku, vodoznak by se s nim tloukl */
  .ways-mark{width:min(300px,62vw);opacity:.06;right:-8%}
}

/* === O mne, jen desktop (2026-07-27) ===
   Na PC zustavala mrtva mezera mezi fotkou a textem a kratky odstavec vedle
   vysoke fotky pusobil ztracene. Copy proto lezi jako list papiru pres okraj
   fotky - mezera zmizi a vznikne vrstveni. Mobil ma vlastni jednosloupcovy
   layout pod 900px a tenhle blok se ho nedotyka. */
@media(min-width:901px){
  /* text nesmi lezet pres fotku - bloky zustavaji vedle sebe. Mrtvou mezeru
     resi mensi podil fotky, nizsi pomer a vetsi stupen pisma, ne prekryv. */
  .way{grid-template-columns:.88fr 1.12fr;gap:clamp(30px,3.4vw,56px)}
  .way-flip{grid-template-columns:1.12fr .88fr}
  .way-photo{aspect-ratio:5/6}
  .way-copy h2{font-size:clamp(1.9rem,3.6vw,2.75rem)}
  .way-copy p{font-size:1.12rem;line-height:1.8;max-width:46ch}
}


/* === O mne: ornamenty podle Akademie byti (2026-07-27) ===
   Sekce lezela na holem pozadi bez jedineho tvaru, proto pusobila prazdne.
   Prebiram presne rodinu, kterou uz web ma: tonovany podklad, oblouk zprava,
   kruh zleva, vodoznak vpravo dole a zlata cárka pod nadpisem. Zadny novy
   tvar - jen stejny slovnik jako .ak-arch / .ak-ring / .ak-mark. */
.ways{background:var(--bg2);padding-top:clamp(46px,5.5vw,84px)}
/* pasparta musi byt svetlejsi nez podklad, jinak na bg2 zmizi */
.way-photo::after{background:var(--bg)}
.ways-arch{position:absolute;top:clamp(-90px,-6vw,-40px);right:-6%;width:min(520px,52vw);
  aspect-ratio:1/1.15;border:1px solid rgba(169,130,93,.32);
  border-radius:50% 50% 46% 46%/60% 60% 40% 40%;pointer-events:none;z-index:0}
.ways-ring{position:absolute;left:-70px;top:26%;width:min(210px,26vw);aspect-ratio:1;
  border-radius:50%;border:1px solid rgba(169,130,93,.3);pointer-events:none;z-index:0}
.ways-mark{top:auto;bottom:3%;right:-2%;width:min(540px,56vw);opacity:.12}
.way-copy h2::after{content:"";display:block;width:26px;height:1.5px;background:var(--gold);margin-top:14px}
.way-quote,.way-quote+.way,.way+.way{border-top-color:rgba(169,130,93,.3)}
@media(max-width:900px){
  .ways-ring{display:none}
  .ways-arch{top:clamp(-120px,-14vw,-60px);right:-22%;width:min(420px,72vw)}
  .ways-mark{width:min(320px,68vw);opacity:.09;right:-10%;bottom:2%}
}

/* === O mne: uvod s jejim portretem (2026-07-28) ===
   Portret prisel az 27.7. vecer s fotkami ke clanku. Do te doby sekce zadnou
   jeji fotku nemela a proto pusobila neosobne. Ramecek i pomer drzi stejny
   jako .way-photo, at uvod sedne do rady se ctyrmi smery pod nim. */
.ways-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,4vw,64px);
  align-items:center;margin-bottom:clamp(46px,5.5vw,78px)}
.ways-lead{margin-bottom:0;padding-bottom:0;border-bottom:0}
.ways-portrait{margin:0;position:relative;aspect-ratio:4/5;border-radius:18px}
.ways-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;
  border-radius:18px;position:relative;z-index:1}
.ways-portrait::after{content:'';position:absolute;inset:0;background:var(--bg);
  border-radius:18px;transform:translate(22px,22px);z-index:0}
@media(max-width:900px){
  .ways-intro{grid-template-columns:1fr;gap:26px}
  .ways-portrait{aspect-ratio:3/4;max-height:56vh}
  .ways-portrait::after{transform:translate(14px,14px)}
}

/* === Magazin: fotky v clanku (2026-07-28) ===
   Fotografie jsou na vysku 2:3, coz by pri sirce textu delalo pres 1000 px
   vysoky obrazek. Orizneme je na 4:5 a vytahneme sirs nez text, aby clanek
   dychal a fotka nebyla sloupec. */
.post-fig{margin:clamp(30px,3.6vw,46px) 0;position:relative}
.post-fig img,.post-duo img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;border-radius:18px;display:block}
.post-fig{aspect-ratio:4/5;max-width:none}
.post-duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.8vw,22px);
  margin:clamp(30px,3.6vw,46px) 0}
.post-duo figure{margin:0;aspect-ratio:4/5}
@media(min-width:901px){
  /* vytazeni z mery textu - obrazek je sirsi nez odstavec, jako v casopise.
     POZOR: originaly jsou na vysku 2:3. Pri pomeru 3:2 se z nich uriznou
     hlavy - proto zustava 4:5 a tezisto orezu je nad stredem. */
  .post-fig,.post-duo{width:min(112%,calc(100vw - 160px))}
}
@media(max-width:600px){
  .post-duo{grid-template-columns:1fr}
}

/* === O mne: ornament ke kazdemu smeru zvlast (2026-07-28) ===
   Ctyri ruzne tvary, zadny se neopakuje. Vsechny ziji UVNITR .way-copy, ktery
   se s fotkou nikdy neprekryva - tim je zaruceno, ze ornament nejde pred fotku
   ani pod ni. Text je nad nimi, cist se da bez omezeni.
   Kazdy radek ma hlavni tvar a k nemu druhy ze stejne rodiny (soustredny nebo
   vnoreny), aby dvojice pusobila umyslne a ne jako dva nahodne oblouky.
   Jen desktop: na mobilu je jednosloupcovy layout bez prazdnych kapes. */
@media(min-width:901px){
  /* kruh v levem okraji sekce uz konkuroval ornamentum radku */
  .ways-ring{display:none}

  .way-copy{position:relative}
  .way-copy>*{position:relative;z-index:1}
  .way-copy::before,.way-copy::after{content:"";position:absolute;z-index:0;pointer-events:none;
    border:1px solid rgba(169,130,93,.4)}
  .way-copy::after{border-color:rgba(169,130,93,.32)}

  /* 1. Salon - vejce jako .ak-arch, uvnitr souosé kolecko (text vpravo) */
  .way-orn-1 .way-copy::before{right:-2%;bottom:-40%;width:min(330px,72%);aspect-ratio:1/1.15;
    border-radius:50% 50% 46% 46%/60% 60% 40% 40%}
  .way-orn-1 .way-copy::after{right:16.5%;bottom:0%;width:min(128px,28%);aspect-ratio:1;
    border-radius:50%}

  /* 2. Konzultace - dva soustredne kruhy pod textem (text vlevo) */
  .way-orn-2 .way-copy::before{left:3%;bottom:-72%;width:min(268px,58%);aspect-ratio:1;
    border-radius:50%}
  .way-orn-2 .way-copy::after{left:9.9%;bottom:-58.5%;width:min(148px,32%);aspect-ratio:1;
    border-radius:50%}

  /* 3. Akademie byti - otevrena brana, uvnitr mensi brana (text vpravo) */
  .way-orn-3 .way-copy::before{right:1%;bottom:-34%;width:min(320px,70%);aspect-ratio:1/1.05;
    border-radius:100% 100% 0 0/70% 70% 0 0;border-bottom:0}
  .way-orn-3 .way-copy::after{right:9%;bottom:-34%;width:min(190px,42%);aspect-ratio:1/1.1;
    border-radius:100% 100% 0 0/70% 70% 0 0;border-bottom:0}

  /* 4. Mentoring - list, uvnitr druhy mensi na stejne ose (text vlevo) */
  .way-orn-4 .way-copy::before{left:2%;bottom:-66%;width:min(300px,64%);aspect-ratio:1.45/1;
    border-radius:66% 0 66% 0}
  .way-orn-4 .way-copy::after{left:7.5%;bottom:-53%;width:min(180px,38%);aspect-ratio:1.45/1;
    border-radius:66% 0 66% 0}
}

/* ---- REZERVACE V HLAVICCE (30.7.) ----
   Vpravo nahore uz neni telefon, ale odkaz do rezervacniho systemu.
   V mobilnim menu je to plne tlacitko, potrebuje vlastni padding -
   .nav-cta ma na mobilu padding:9px 0, takze pozadi lepilo na text. */
/* Mobilni menu je svisly seznam serifovych polozek. Rezervace je jedna z nich,
   jen zlata - pilulka by rytmus seznamu rozbila. Podtrzenim odlisit nejde,
   to v tomhle menu znamena aktivni stranku (viz .nav-links a.active).
   Breakpoint je 820px, tam se menu lame na burger. */
@media(max-width:820px){
  #menu .nav-cta{background:none;border:0;border-radius:0;opacity:1;
    font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:0;
    padding:6px 0;margin:0;color:var(--gold-deep)}
}

/* Desktop: rezervace v hlavicce dostane zlaty prstenec, at je vyraznejsi
   nez ostatni polozky menu. Na tmavem heru svetlejsi --gold, na svetlem
   header.solid tmavsi --gold-deep (kontrast na krem pozadi). */
@media(min-width:821px){
  .nav-links .nav-cta{padding:9px 20px;border:1px solid var(--gold-deep);border-radius:999px;
    color:var(--gold-deep);opacity:1;transition:background .3s ease,color .3s ease,border-color .3s ease}
  header:not(.solid) .nav-links .nav-cta{border:1px solid var(--gold);color:var(--gold)}
}
@media(min-width:821px) and (hover:hover) and (pointer:fine){
  .nav-links .nav-cta:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:var(--white)}
  header:not(.solid) .nav-links .nav-cta:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
}

/* MAPA (Leaflet) */
#map{width:100%;height:100%;min-height:420px}
.leaflet-container{background:var(--bg);font-family:var(--sans)}
/* OSM dlazdice jsou barevne; filtrem je stahneme do klidne kremove palety webu */
.leaflet-tile-pane{filter:grayscale(1) sepia(.28) saturate(.9) contrast(1.32) brightness(.97)}
.map-pin{display:block;width:22px;height:22px;border-radius:50%;background:var(--gold-deep);border:3px solid var(--white);box-shadow:0 2px 8px rgba(0,0,0,.3)}
.leaflet-tooltip{background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:8px;
  font-family:var(--sans);font-size:13px;font-weight:600;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.leaflet-tooltip-right::before{border-right-color:var(--line)}
.leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.8)}

/* MUJ PRISTUP — dva sloupce: fotka vlevo do kraje okna, tri body pod sebou vpravo.
   Negativni margin vytahne fotku z mrizky .wrap az k okraji; overflow:hidden na sekci
   hlida, aby z toho pri sirokem scrollbaru nevznikl vodorovny pretok. */
.approach{overflow:hidden}
.ap2{display:grid;grid-template-columns:minmax(0,41%) minmax(0,1fr);gap:clamp(34px,4.6vw,72px);align-items:center}
.ap2-photo{line-height:0;margin-left:calc(-1 * max(30px,(100vw - 1180px)/2 + 30px))}
.ap2-photo img{width:100%;height:auto;display:block;border-radius:0 16px 16px 0}
.ap2 .ap-grid{grid-template-columns:1fr;gap:clamp(24px,3vh,34px)}
.ap2 .approach-head{margin-bottom:clamp(22px,3vh,32px)}
@media(max-width:900px){
  .ap2{grid-template-columns:1fr;gap:clamp(28px,4vh,40px)}
  .ap2-photo{margin-left:-30px;margin-right:-30px}
  .ap2-photo img{border-radius:0}
  .ap2 .ap-grid{gap:26px}
}

/* === O mne: prvni smer bez fotky (2026-09-03) ===
   Iwona 3.9.: pod jejim portretem stala fotka vlasu a na mobilu se obe velke
   fotky srazily tesne pod sebe ("je to tam jak pest na oko"). Blok Salon
   proto zustava jen textovy. Jednosloupcovy layout, sirka textu drzena, aby
   radky nesly pres celou stranku. */
.way-solo{grid-template-columns:1fr}
@media(min-width:901px){
  /* bez fotky by text stal v uzkem sloupci a vpravo zustala prazdna plocha.
     Blok proto jede jako editorialni radek: nadpis vlevo, odstavec vpravo,
     stejny pomer sloupcu jako u bloku s fotkou, takze rytmus sekce drzi. */
  .way-solo{grid-template-columns:1fr}
  .way-solo .way-copy{display:grid;grid-template-columns:.88fr 1.12fr;
    gap:clamp(30px,3.4vw,56px);align-items:start}
  .way-solo .way-copy h2{margin-bottom:0}
  .way-solo .way-copy p{max-width:46ch}
}
