/* Podstránky Chaty Odra (Rezervace a podmínky, poděkování).
   Staví na proměnných a komponentách ze styles.css — stejná typografie, barvy i spacing. */

.subpage{background:var(--cream)}
.subpage .site-header{border-bottom:1px solid var(--line)}
.subpage .desktop-nav a[aria-current=page],.subpage .mobile-nav a[aria-current=page],.subpage .footer-nav a[aria-current=page]{color:var(--green);font-weight:700}

/* --- Úvod stránky --- */
.terms-page{padding-bottom:30px}
.terms-hero{padding-block:78px 44px;max-width:840px;margin-inline:auto;text-align:center}
.terms-hero h1{font-size:clamp(44px,5.4vw,70px);line-height:1.08}
.terms-hero h1 em{font-weight:400;color:#788364}
.terms-lead{font-size:14px;line-height:1.95;max-width:560px;margin:26px auto 0}
.terms-quicklinks{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:34px}
.terms-quicklinks a{border:1px solid var(--line);border-radius:30px;padding:9px 18px;font-size:11px;font-weight:600;background:#fffefa;transition:border-color .2s,background .2s}
.terms-quicklinks a:hover{border-color:#a9b79a;background:#eff2e8}

/* --- Zvýrazněná informace o nezávaznosti --- */
.terms-callout{display:flex;align-items:flex-start;gap:15px;border:1px solid #c9b98a;background:#f5f1e0;border-radius:6px;padding:20px 24px;margin-block:12px 30px;max-width:1256px}
.terms-callout>span{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border-radius:50%;border:1px solid #9b8a52;color:#7a6a34;font-family:var(--serif);font-size:14px;margin-top:1px}
.terms-callout p{font-size:12.5px;line-height:1.85;color:#6d6444}
.terms-callout strong{color:#574f31;font-weight:600}

/* --- Bloky --- */
.terms-section{padding-block:44px;border-top:1px solid var(--line)}
.terms-section>h2{font-size:clamp(30px,3.1vw,42px);margin-bottom:26px}
.terms-intro,.terms-source{font-size:12px;line-height:1.9;max-width:640px}
.terms-source{margin-top:20px;color:#77806f}
.terms-source a,.terms-card a,.terms-steps a{text-decoration:underline;text-underline-offset:3px;color:#5d6b4f}
.terms-source a:hover,.terms-card a:hover,.terms-steps a:hover{color:var(--green)}

/* --- Postup rezervace --- */
.terms-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;counter-reset:step}
.terms-steps>li{position:relative;background:#fffefa;border:1px solid var(--line);border-radius:6px;padding:26px 22px 24px}
.terms-step-number{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--green);color:var(--cream);font-size:12px;font-weight:700;margin-bottom:16px}
.terms-steps h3{font:20px var(--serif);letter-spacing:-.4px;line-height:1.3}
.terms-steps p{font-size:12px;line-height:1.85;margin-top:9px}

/* --- Karty --- */
.terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.terms-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.terms-card{background:#fffefa;border:1px solid var(--line);border-radius:6px;padding:28px 26px}
.terms-card>svg{width:26px;height:26px;color:#7d8e66;margin-bottom:14px}
.terms-card h3{font:21px var(--serif);letter-spacing:-.4px;line-height:1.3}
.terms-card p{font-size:12px;line-height:1.85}
.terms-card h3+p{margin-top:9px}
.terms-card-label{font-size:9px!important;letter-spacing:1.9px;font-weight:700;color:#6f7d67;margin-bottom:12px}
.terms-card-accent{background:#eef1e6;border-color:#cfd8c3}
.terms-price{font-size:15px;color:var(--green)!important;margin-bottom:6px!important}
.terms-price strong{font:44px var(--serif);letter-spacing:-1.6px;font-weight:400}
.terms-price small{font-size:12px;color:var(--muted)}
.terms-price-extra{font-size:12px;padding-top:12px;border-top:1px solid var(--line)}
.terms-price-extra strong{color:var(--green);font-weight:600}
.terms-note{font-size:11.5px!important;line-height:1.85;margin-top:14px;color:#77806f}

/* --- Storno --- */
.terms-cancel{list-style:none;margin:22px 0 0;padding:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fffefa}
.terms-cancel>li{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;padding:19px 24px}
.terms-cancel>li+li{border-top:1px solid var(--line)}
.terms-cancel-when{font:20px var(--serif);color:var(--green);letter-spacing:-.4px}
.terms-cancel-what{font-size:12.5px;font-weight:600;color:#5f6d54}
.terms-cancel>li:first-child{background:#eff3e7}
.terms-cancel>li:first-child .terms-cancel-what{color:#4f6b3f}
.terms-cancel>li.is-strict{background:#f6eae4}
.terms-cancel>li.is-strict .terms-cancel-what{color:#8a5340}

/* --- Závěrečná výzva --- */
.terms-cta{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center;background:#e5e8db;border-radius:8px;padding:46px 48px;margin-block:44px 70px}
.terms-cta h2{font-size:clamp(30px,3.2vw,42px)}
.terms-cta>div>p:last-child{font-size:12.5px;line-height:1.9;margin-top:16px;max-width:400px}
.terms-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.terms-cta-actions .contact-links{flex-direction:column;gap:11px}

/* --- Poděkování --- */
.thanks-page{max-width:620px;margin-inline:auto;text-align:center;padding-block:96px 110px}
.thanks-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 26px;border-radius:50%;background:#e1e9d5;border:1px solid #bdcdaa;color:#648049}
.thanks-icon svg{width:33px;height:33px}
.thanks-page h1{font-size:clamp(42px,5vw,62px);line-height:1.12}
.thanks-page h1 em{font-weight:400;color:#788364}
.thanks-lead{font-size:13.5px;line-height:1.95;margin-top:22px}
.thanks-page .contact-links{justify-content:center;margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.thanks-actions{display:flex;flex-direction:column;align-items:center;gap:22px;margin-top:34px}

@media(max-width:1000px){
  .terms-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .terms-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .terms-cta{grid-template-columns:1fr;gap:30px;padding:38px}
}
@media(max-width:640px){
  .terms-hero{padding-block:48px 32px;text-align:left}
  .terms-lead{font-size:12.5px;margin-inline:0;max-width:none}
  .terms-quicklinks{justify-content:flex-start;margin-top:26px}
  .terms-quicklinks a{font-size:10px;padding:8px 14px}
  .terms-callout{padding:16px;gap:11px;margin-bottom:22px}
  .terms-callout p{font-size:11.5px}
  .terms-section{padding-block:34px}
  .terms-steps,.terms-grid,.terms-grid-three{grid-template-columns:minmax(0,1fr);gap:14px}
  .terms-steps>li,.terms-card{padding:22px 20px}
  .terms-cancel>li{flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px}
  .terms-cancel-when{font-size:18px}
  .terms-price strong{font-size:38px}
  .terms-cta{padding:30px 22px;margin-block:34px 52px}
  .terms-cta-actions{align-items:stretch}
  .terms-cta-actions .button{justify-content:space-between}
  .thanks-page{padding-block:62px 76px}
  .thanks-page .contact-links{align-items:center}
}
