:root{--page:#050505;--bg:#0e0e0e;--card:#171717;--card-line:#2c2923;--rule:#3a3325;--rule-2:#34302a;--promo-bg:#1b150a;
--gold:#c8a464;--gold-soft:#d9bf8c;--gold-pale:#e6d6b2;--gold-dim:#6d5c3a;--on-gold:#111111;
--white:#ffffff;--ink:#e9e6df;--ink-2:#d0ccc3;--ink-3:#b9b5aa;--mute:#8d8575;--mute-2:#7d7a70;
--gl:max(16px,env(safe-area-inset-left,0px));--gr:max(16px,env(safe-area-inset-right,0px));color-scheme:dark}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:Inter,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
[hidden]{display:none!important}
.preheader{display:none;max-height:0;overflow:hidden;opacity:0}
.wrap{max-width:640px;margin:0 auto;background:var(--bg)}
.serif{font-family:'Playfair Display',Georgia,'Times New Roman',serif}
.goldline{height:2px;background:linear-gradient(90deg,var(--bg),var(--gold) 18%,var(--gold) 82%,var(--bg))}

/* header */
.top{text-align:center;padding:46px 40px 42px}
/* sigla NOZOMI: aspectul e în sigla.css (același peste tot), aici doar mărimea */
.top-sigla{font-size:40px}
.kicker{font-size:11.5px;letter-spacing:.28em;color:var(--gold);font-weight:600;text-transform:uppercase}
.top .kicker{margin:40px 0 22px}
h1{text-wrap:balance;font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:43px;line-height:1.13;color:var(--white)}
h1 .gold{display:block;color:var(--gold);font-style:italic;font-weight:400;margin-top:2px}
.lede{text-wrap:balance;max-width:470px;margin:24px auto 0;color:var(--ink-2);font-size:16.5px;line-height:1.7}

/* hero */
.hero{position:relative}
.hero img{width:100%;height:auto}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,transparent,var(--bg))}

/* letter */
.letter{padding:30px 56px 22px}
.letter p{color:var(--ink-2);font-size:16.5px;line-height:1.78;margin-bottom:18px}
.letter strong{color:var(--white);font-weight:600}

/* promo */
.promo{margin:10px 44px 14px;border:1px solid var(--gold);text-align:center;padding:30px 30px 32px;background:linear-gradient(180deg,var(--promo-bg),var(--bg))}
.promo .kicker{font-size:11px}
.promo .big{font-family:'Playfair Display',Georgia,serif;font-size:44px;font-weight:500;color:var(--gold);line-height:1.1;margin:10px 0 12px}
.promo p{color:var(--ink-2);font-size:15.5px;max-width:420px;margin:0 auto 22px}

/* section title */
.sec-title{display:flex;align-items:center;gap:18px;padding:46px 44px 28px}
.sec-title:before,.sec-title:after{content:"";flex:1;height:1px;background:var(--rule)}
.sec-title span{font-size:11.5px;letter-spacing:.3em;color:var(--gold);font-weight:600;white-space:nowrap}

/* tour card */
.card{margin:0 28px 34px;background:var(--card);border:1px solid var(--card-line)}
.card .photo img{width:100%;height:auto}
.card .body{padding:30px 36px 36px}
.meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin-bottom:14px}
.badge{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--bg);background:var(--gold);padding:5px 10px;max-width:100%;line-height:1.5}
/* ștampila SOLD OUT (epuizat: da), peste poza turului; mărimile sunt în em */
.card .photo{position:relative}
.stamp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);font-size:40px;color:var(--gold);white-space:nowrap;text-align:center;line-height:1;pointer-events:none}
.stamp .o{border:.106em solid currentColor;padding:.09em;border-radius:.18em;background:rgba(14,12,10,.55)}
.stamp .i{border:.038em solid currentColor;border-radius:.09em;padding:.24em .5em .22em}
.stamp b{display:block;font-weight:700;font-size:1em;line-height:1;letter-spacing:.11em;padding-left:.11em}
.stamp span{display:block;font-weight:600;font-size:.27em;line-height:1;letter-spacing:.32em;padding-left:.32em;margin-top:.7em}
.stamp.mini{position:relative;left:auto;top:auto;transform:rotate(-4deg);font-size:20px;margin:4px 6px}
.stamp.mini span{font-size:.4em}
h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:31px;line-height:1.2;color:var(--white);margin-bottom:10px}
.sub{color:var(--gold-soft);font-weight:600;font-size:15.5px;margin-bottom:18px}
.card p{color:var(--ink-2);font-size:15.5px;line-height:1.75;margin-bottom:14px}
.route{margin:22px 0 4px;padding:0}
.route .lbl{font-size:10px;letter-spacing:.28em;color:var(--mute);font-weight:600;margin-bottom:6px}
.route .stops{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:16px;line-height:1.7;color:var(--gold-pale)}
.route .dot{color:var(--gold);padding:0 3px;font-style:normal}
.route .stop{white-space:nowrap}
.facts{display:grid;grid-template-columns:var(--cols,1.45fr .68fr 1.25fr);margin:24px 0 28px;border-top:1px solid var(--rule-2);border-bottom:1px solid var(--rule-2)}
.fact{padding:14px 14px 15px}
.fact+.fact{border-left:1px solid var(--rule-2)}
.fact:first-child{padding-left:0}
.fact .k{font-size:9.5px;letter-spacing:.26em;color:var(--gold);font-weight:600;margin-bottom:3px}
.fact .v{font-family:'Playfair Display',Georgia,serif;font-size:15.5px;color:var(--white);line-height:1.35}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px}
.btn{display:inline-block;background:var(--gold);color:var(--on-gold);text-decoration:none;font-weight:700;font-size:13px;letter-spacing:.05em;padding:16px 28px}
.link{color:var(--gold-soft);font-size:13.5px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--gold-dim)}

/* strip */
.strip{padding:34px 44px 26px;text-align:center}
.strip .kicker{margin-bottom:20px}
.strip .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.strip img{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--card-line)}
.strip .cap{margin-top:9px;font-size:11px;letter-spacing:.24em;color:var(--gold-soft);text-transform:uppercase}

/* closing */
.closing{text-align:center;padding:44px 48px 46px}
.closing:before{content:"";display:block;height:1px;background:var(--rule);margin:0 0 46px}
.closing h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:35px;line-height:1.2;color:var(--white);margin:16px 0 14px}
.closing .txt{color:var(--ink-2);font-size:16.5px;max-width:440px;margin:0 auto;text-wrap:balance}
.quote{text-wrap:balance;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:23px;line-height:1.45;color:var(--gold);max-width:430px;margin:30px auto 0;padding-top:26px;position:relative}
.quote:before{content:"";position:absolute;top:0;left:50%;width:44px;margin-left:-22px;height:1px;background:var(--gold)}
.signoff{font-family:'Playfair Display',Georgia,serif;font-size:26px;color:var(--white);margin:26px 0 24px}
.person img{width:92px;height:92px;border-radius:50%;object-fit:cover;margin:0 auto 12px;border:2px solid var(--gold)}
.person .nm{font-family:'Playfair Display',Georgia,serif;font-size:20px;color:var(--white)}
.person .rl{font-size:10.5px;letter-spacing:.2em;color:var(--mute);text-transform:uppercase;margin-top:3px}
.closing .btn{margin:26px 0 4px}
.closing .txt+.txt{margin-top:14px}
.letter .btn{margin-top:6px}
.pdf-link{display:inline-block;margin-top:22px;color:var(--gold-soft);font-size:13.5px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--gold-dim)}
footer .pdf-link{margin-top:0;font-size:12.5px}

/* footer */
footer{text-align:center;padding:36px 40px 44px;border-top:1px solid var(--rule)}
footer .foot-sigla{font-size:24px}
footer .slogan{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:var(--gold-soft);font-size:15px;margin:20px 0 14px}
footer .contact{font-size:13px;color:var(--ink-3);letter-spacing:.04em}
footer .contact a{color:var(--gold-soft);text-decoration:none}
footer .note{font-size:11.5px;color:var(--mute-2);margin-top:18px;line-height:1.6}

@media (min-width:700px){body{background:var(--page)}}
@media (max-width:560px){
 .wrap{padding-left:var(--gl);padding-right:var(--gr)}
 .hero,.goldline{margin-left:calc(var(--gl) * -1);margin-right:calc(var(--gr) * -1)}
 .top{padding:38px 6px 34px}
 h1{font-size:33px}
 .top-sigla{font-size:34px}
 .letter{padding:24px 10px 16px}
 .promo{margin:8px 0 12px;padding:26px 18px}
 .promo .big{font-size:36px}
 .sec-title{padding:36px 0 22px}
 .card{margin:0 0 28px}
 .card .body{padding:24px 20px 30px}
 h3{font-size:26px}
 .stamp{font-size:28px}
 .stamp span{font-size:.32em}
 .facts{grid-template-columns:1fr}
 .fact,.fact:first-child{padding:11px 0}
 .fact+.fact{border-left:0;border-top:1px solid var(--rule-2)}
 .strip{padding:28px 2px 20px}
 .strip .grid{gap:8px}
 .closing{padding:36px 8px 40px}
 .closing h2{font-size:29px}
 .quote{font-size:20px}
 footer{padding:36px 8px 44px}
}

/* modul PDF (folosit de editor.html când face PDF-ul) */
html.pdf-mode,html.pdf-mode body{background:var(--bg)}
.pdf-mode .wrap{max-width:none;width:640px}
.pdf-mode .no-pdf,.pdf-mode .warn{display:none!important}
.pdf-mode .grp{padding-bottom:6px;display:flow-root}
.pdf-mode .grp>.card:first-child{margin-top:28px}
/* html2canvas desenează textul cu ~3 px mai jos; compensăm doar în PDF */
.pdf-mode .btn{padding:12px 28px 20px}
.pdf-mode .badge{padding:2px 10px 8px}
/* la ștampilă decalajul e mai mare (≈ o jumătate de literă), măsurat pe html2canvas 1.4.1 */
.pdf-mode .stamp b{position:relative;top:-.51em}
.pdf-mode .stamp span{position:relative;top:-.69em}
/* la sigla (rânduri de orice mărime): auriu ≈ .51 din literă + .5 px, gri ≈ .53 + .6 px (măsurat de la 3 la 80 px) */
.pdf-mode .nz-sigla b{position:relative;top:calc(-.51em - .5px)}
.pdf-mode .nz-sigla span{position:relative;top:calc(-.53em - .6px)}
.pdf-mode .bgimg{background-size:cover;background-position:center;background-repeat:no-repeat}

.warn{background:#5a1d1d;color:#fff;padding:14px 18px;font-size:13px;line-height:1.55}
