/* ROANGA® PULSE – sdílený základ obou verzí. Tokeny 1:1 ze schváleného webu (noe.roanga.pages.dev). */
@import url("fonts.css");

:root{
  --paper:#fcfcfc; --sage-light:#f6f8ef; --sage:#eef2e3; --mist:#dfe5d6;
  --forest:#043f2e; --forest-mid:#2a6f2b; --lime:#c8f169; --peach:#fad8a1;
  --ink:#0b0f0c; --fog:#6b7168; --bad:#b3433a; --badbg:#f6e4e1;
  --f-display:"Inter",system-ui,sans-serif; --f-text:"Be Vietnam Pro",system-ui,-apple-system,sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,monospace; --f-hand:"Caveat",cursive;
  --r-btn:6px; --r-tag:5px; --r-card:16px; --r-chamber:40px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul{margin:0}
ul{padding:0;list-style:none}
strong,b{font-weight:700}

.container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:24px}
.section{padding-block:56px}
@media (min-width:768px){.section{padding-block:88px}}
.center{text-align:center}
.nowrap-sm{white-space:normal}
@media (min-width:640px){.nowrap-sm{white-space:nowrap}}
.br-m{display:inline}
@media (min-width:640px){.br-m{display:none}}

/* Typografie */
.h1{font-family:var(--f-display);font-weight:800;letter-spacing:-.03em;line-height:1.06;font-size:30px}
@media (min-width:640px){.h1{font-size:clamp(34px,4.4vw,56px)}}
.h2{font-family:var(--f-display);font-weight:800;letter-spacing:-.03em;line-height:1.09;font-size:clamp(28px,3.8vw,46px)}
.h3{font-family:var(--f-display);font-weight:800;letter-spacing:-.02em;line-height:1.15;font-size:22px}
.h1 em,.h2 em,.h3 em{font-style:normal;color:var(--forest-mid)}
.on-dark .h1 em,.on-dark .h2 em,.on-dark .h3 em{color:var(--lime)}
.lead{font-size:16px;line-height:1.625}
@media (min-width:768px){.lead{font-size:19px}}
.fog{color:var(--fog)}
.small{font-size:13px;line-height:1.5}

/* Štítek */
.kicker{display:inline-block;white-space:nowrap;border-radius:var(--r-tag);background:var(--sage);color:var(--forest);font-family:var(--f-mono);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px}
.on-dark .kicker{background:#ffffff1f;color:var(--lime)}
.kicker.peach{background:var(--peach);color:var(--ink)}
.kicker.lime{background:var(--lime);color:var(--forest)}
.kicker.bad{background:var(--bad);color:#fff}
.kicker.badbg{background:var(--badbg);color:var(--bad)}
.kicker.plain{text-transform:none;letter-spacing:0;font-size:14px}
.tilt{transform:rotate(-1deg)}
.tilt-r{transform:rotate(1deg)}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border-radius:var(--r-tag);padding:6px 12px;font-family:var(--f-mono);font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:var(--sage);color:var(--forest)}
.on-dark .chip{background:#ffffff1f;color:var(--paper)}

/* Tlačítko */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--r-btn);background:var(--lime);color:var(--forest);font-family:var(--f-text);font-weight:700;font-size:17px;padding:16px 32px;text-decoration:none;border:0;cursor:pointer;transition:translate .15s;box-shadow:0 6px 20px -8px #043f2e66}
.btn:hover{translate:0 -2px}
.btn-big{font-size:19px;padding:20px 44px}
.btn-sm{font-size:15px;padding:10px 20px;box-shadow:none}
.btn-dark{background:var(--forest);color:var(--lime)}
.btn-full{width:100%}
@media (min-width:640px){.btn-full{width:auto}}

/* Karty */
.card{border-radius:var(--r-card);border:1px solid var(--mist);background:var(--paper);padding:28px}
.on-dark .card{background:#ffffff0f;border-color:#ffffff1f}
.chamber{background:var(--forest);color:var(--paper);border-radius:24px}
@media (min-width:768px){.chamber{border-radius:var(--r-chamber);margin-inline:24px}}

/* Horní pás a hlavička */
.topbar{background:var(--forest);color:var(--paper);font-size:12px;text-align:center;padding:10px 16px;line-height:1.4}
.topbar i{font-style:normal;color:var(--lime);margin-inline:4px}
.hdr{position:sticky;top:0;z-index:50;background:#f6f8efee;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--mist)}
.hdr .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.hdr img{height:24px;width:auto}

/* Video karty (recenze) */
.vids{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;margin-inline:auto}
@media (max-width:767px){.vids{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-24px;padding:4px 24px 12px;scrollbar-width:none}.vids::-webkit-scrollbar{display:none}.vids>*{flex:0 0 72%;scroll-snap-align:start}}
.vid{cursor:pointer}
.vid-wrap{position:relative;aspect-ratio:9/16;background:#0b1a14;border-radius:20px;overflow:hidden;margin-bottom:12px}
.vid-wrap video,.vid-wrap img{width:100%;height:100%;object-fit:cover}
.vid-name{position:absolute;top:12px;left:12px;background:var(--lime);color:var(--forest);border-radius:var(--r-tag);font-family:var(--f-mono);font-weight:800;font-size:11px;letter-spacing:.08em;padding:6px 10px;pointer-events:none}
.vid-hint{position:absolute;bottom:12px;left:12px;background:#0b0f0cb3;color:#fff;border-radius:8px;font-weight:700;font-size:12px;padding:6px 10px;pointer-events:none}
.vid-quote{display:block;text-align:center;font-family:var(--f-mono);font-weight:800;font-size:12px;letter-spacing:.04em;line-height:1.45;background:var(--sage);color:var(--forest);border-radius:var(--r-tag);padding:8px 12px}
.on-dark .vid-quote{background:#ffffff14;color:var(--paper)}

/* Cenovka */
.price-card{text-align:center;border-radius:20px;overflow:hidden}
.price-card .p-head{background:var(--lime);color:var(--forest);font-family:var(--f-display);font-weight:800;letter-spacing:-.02em;font-size:20px;padding:18px}
.price-card .p-body{background:var(--bad);padding:32px 16px 28px}
.price-card .p-price{font-family:var(--f-display);font-weight:800;letter-spacing:-.04em;color:#fff;font-size:clamp(56px,11vw,72px);line-height:1}
.price-card .kc{font-size:.45em;letter-spacing:0;margin-left:6px}
.price-card .p-old{position:relative;display:inline-block;margin-top:20px;font-family:var(--f-display);font-weight:800;font-size:24px;color:var(--ink)}
.price-card .p-old::after{content:"";position:absolute;left:-6px;right:-6px;top:50%;height:5px;border-radius:3px;background:var(--ink);transform:rotate(-5deg)}
@media (min-width:769px){.price-card .p-head{font-size:26px;padding:26px 24px}.price-card .p-body{padding:44px 24px 40px}.price-card .p-old{font-size:30px}}

/* Nabídka */
.offer{max-width:640px;margin-inline:auto;background:var(--paper);color:var(--ink);border-radius:24px;padding:28px 18px;display:flex;flex-direction:column;gap:24px}
@media (min-width:768px){.offer{border-radius:56px;padding:40px 32px}}
.box{border-radius:var(--r-card);padding:24px}
.box.sage{background:var(--sage)} .box.sage-light{background:var(--sage-light)} .box.forest{background:var(--forest);color:var(--paper)}
.ticks li{display:flex;gap:12px;align-items:flex-start;margin-top:10px}
.ticks li>span:first-child{font-weight:700;color:var(--forest-mid)}
.qa li{display:flex;gap:12px;align-items:flex-start;font-size:15px;margin-top:12px}
.qa li>span:first-child{font-size:18px;line-height:1;margin-top:2px}
.guarantee{text-align:center}
.guarantee svg{width:32px;height:32px;margin:0 auto;color:var(--lime)}
#checkout{scroll-margin-top:88px}

/* FAQ */
details.faq{border-bottom:1px solid var(--mist)}
details.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:20px;font-weight:700;font-size:17px}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-family:var(--f-display);font-size:28px;line-height:1;color:var(--forest-mid);transition:transform .15s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{padding-bottom:20px;color:var(--fog)}

/* Podpis */
.sign{font-family:var(--f-hand);font-weight:600;font-size:40px;color:var(--forest-mid);line-height:1}

/* Spodní lišta na mobilu */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#043f2ef2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid #ffffff1a;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));transform:translateY(110%);transition:transform .3s}
.sticky-cta.show{transform:none}
.sticky-cta .btn{width:100%;box-shadow:none}
.sticky-cta s{opacity:.55;font-weight:500;margin-right:2px}
@media (min-width:768px){.sticky-cta{display:none}}

/* Patička */
.footer{background:var(--ink);color:var(--fog);font-size:13px;text-align:center;padding:40px 24px 120px;line-height:1.6}
.footer img{height:40px;margin:0 auto 20px;opacity:.8}
.footer p+p{margin-top:8px}

/* Odhalení při scrollu */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .5s,transform .5s}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* Náhled mimo pulse.roanga.com: pokladna se nenačte (ORIGIN_NOT_ALLOWED) */
.preview-note{background:var(--peach);color:var(--ink);border-radius:var(--r-card);padding:14px 16px;font-size:14px;text-align:center;margin-bottom:12px}
details.faq p{max-width:65ch}
