/* Direct contact and compact shared footer. */
.contact-alt{gap:12px}
.contact-alt .label,.contact-alt p{margin:0}
.contact-alt .mail{flex-wrap:nowrap;gap:8px;min-width:0}
.contact-alt #mail{font-family:inherit;font-size:clamp(16px,4.5vw,22px);font-weight:500;line-height:1.4;color:var(--ink);text-decoration:none;letter-spacing:-.02em;white-space:nowrap}
.contact-alt #mail:hover{text-decoration:underline;text-underline-offset:4px}
.copy-mail{flex:none;display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.copy-mail:hover{background:var(--tint)}
.copy-mail:active{transform:scale(.96)}
.copy-mail:focus-visible,.contact-alt #mail:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.contact-alt .copy-status:empty{display:none}
.ft2 .f-nav a:nth-child(7){grid-column:1;grid-row:4}
.ft2 .f-nav{grid-template-rows:repeat(4,minmax(30px,auto))}
@media(min-width:760px){
  .closing .invite{grid-template-columns:minmax(0,1fr) auto}
  .closing .invite>.invite-body{grid-column:1;grid-row:1;min-width:0}
  .closing .invite>.avatar{grid-column:2;grid-row:1;justify-self:end}
}
@media(max-width:759px){
  #p-kontakt{padding-bottom:32px}
  #p-kontakt .contact{gap:28px}
  .contact-alt{justify-items:center;text-align:center;padding-top:24px}
  .contact-alt .mail{justify-content:center;max-width:100%}
  .contact-alt .label{font-size:12px}
  .contact-alt .contact-availability{font-size:13px;line-height:1.5;text-wrap:balance}
  .ft2 .wrap.ftw{gap:18px 18px!important;padding-top:24px}
  .ft2 .f-nav{grid-template-rows:none}
  .ft2 .f-nav a:nth-child(7){grid-column:1/-1;grid-row:auto}
  .ft2 .f-end{gap:14px 10px}
  .ft2 .f-social{grid-row:1}
  .ft2 .f-legal,.ft2 .f-pp{grid-row:2}
}


/* Desktop refinements: keep the mobile presentation unchanged. */
@media (min-width: 760px){
  .ft2 .f-logo svg{height:clamp(30px,3.3vw,43.5px)}
  .closing .invite{
    width:70%;
    margin-inline:auto;
    gap:clamp(24px,3vw,40px);
  }
  .closing .avatar{--d:clamp(108px,12vw,162px)}
  .closing .avatar-clip{border-radius:14px 14px calc(var(--d) / 2) calc(var(--d) / 2)}
  .closing .avatar img{
    filter:drop-shadow(0 14px 18px rgba(0,0,0,.2));
    transform:perspective(900px) rotateY(-7deg);
  }
  .closing .invite:hover .avatar img{
    filter:drop-shadow(0 18px 22px rgba(0,0,0,.24));
    transform:perspective(900px) rotateY(0deg) translateY(-4px) scale(1.03);
  }
}

/* Desktop footer: clear three-column hierarchy. Mobile footer rules above stay intact. */
@media(min-width:760px){
  .ft2 .wrap.ftw{
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,.9fr)!important;
    gap:28px clamp(36px,5vw,64px)!important;
    align-items:start;
    padding-block:36px 32px;
  }
  .ft2 .f-brand{grid-column:1;grid-row:1;align-content:start;gap:12px}
  .ft2 .f-logo svg{height:clamp(36px,3.1vw,44px)}
  .ft2 .f-slogan{margin:0;font-size:12px;line-height:1.5;letter-spacing:.1em;color:#aaa9a4}
  .ft2 .f-nav{
    grid-column:2;grid-row:1;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:18px repeat(3,32px);
    grid-auto-flow:column;
    column-gap:clamp(16px,2.2vw,32px);row-gap:2px;
    align-content:start;align-self:start;
  }
  .ft2 .f-nav::before,.ft2 .f-end::before{
    display:block;margin:0 0 8px;color:#85847e;
    font-family:var(--mono);font-size:11px;letter-spacing:.1em;
    line-height:18px;text-transform:uppercase;
  }
  .ft2 .f-nav::before{content:"Navigace";grid-column:1/-1;grid-row:1}
  .ft2 .f-nav a:nth-child(n){grid-column:auto;grid-row:auto}
  .ft2 .f-nav a[href="/kontakt/"]{display:none}
  .ft2 .f-nav a{min-height:32px;opacity:.82;transition:color .2s,opacity .2s}
  .ft2 .f-nav a:hover{color:#f26a55;opacity:1;text-decoration:none}
  .ft2 .f-end{
    grid-column:3;grid-row:1;
    display:grid;grid-template-columns:1fr;grid-template-rows:18px auto auto auto;
    justify-items:end;text-align:right;align-content:start;align-self:start;gap:8px;
  }
  .ft2 .f-end::before{content:"Najdete mě";grid-row:1}
  .ft2 .f-social{grid-row:2;gap:8px}
  .ft2 .f-social a{width:40px;height:40px;transition:color .2s,border-color .2s,background-color .2s,transform .2s}
  .ft2 .f-social a:hover{color:#fff;border-color:#f26a55;background:#292522;transform:translateY(-2px)}
  .ft2 .f-legal{grid-row:3;margin-top:12px;font-size:12.5px;color:#aaa9a4}
  .ft2 .f-pp{grid-row:4;font-size:12.5px;color:#aaa9a4}
  .ft2 .f-pp:hover{color:#f26a55}
}


/* Contact page desktop hero: align the copy to the page edge and remove the portrait. */
@media(min-width:760px){
  #p-kontakt .contact-head{grid-template-columns:minmax(0,1fr);justify-items:start}
  #p-kontakt .contact-head>.avatar{display:none}
  #p-kontakt .contact-intro{width:100%;justify-items:start;text-align:left}
}
