:root{
  --ink:#11171C;
  --ink-soft:#3A4148;
  --paper:#F6EFE3;
  --paper-warm:#EFE4D0;
  --sand:#D9C3A0;
  --ocean:#0E3A4A;
  --ocean-deep:#072430;
  --coral:#D55A3A;
  --coral-soft:#E68A6B;
  --seafoam:#9DBFB8;
  --indigo:#1B2F5C;
  --gold:#B58A4A;
  --line:rgba(17,23,28,.12);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',sans-serif;
  font-size:16px;line-height:1.6;
  color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Fraunces',serif;font-weight:400;letter-spacing:-.01em;line-height:1.05}
.mono{font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.wrap{max-width:1320px;margin:0 auto;padding:0 32px}
.wrap-narrow{max-width:920px;margin:0 auto;padding:0 32px}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

/* ============ NAV ============ */
nav.top{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:18px 32px;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(246,239,227,0);
  backdrop-filter:blur(0);
  transition:all .4s ease;
  border-bottom:1px solid transparent;
}
nav.top.scrolled{
  background:rgba(246,239,227,.92);
  backdrop-filter:blur(14px);
  border-bottom-color:var(--line);
  padding:12px 32px;
}
nav.top .brand{display:flex;align-items:center;gap:10px;font-family:'Fraunces',serif;font-size:1.3rem;font-weight:500;letter-spacing:-.02em}
nav.top .brand img{height:38px;width:auto;display:block;transition:transform .25s}
nav.top .brand:hover img{transform:rotate(-3deg)}
nav.top.scrolled .brand img{height:32px}
nav.top .links{display:flex;gap:30px;font-size:.88rem;font-weight:500}
nav.top .links a{position:relative;padding:6px 0;transition:opacity .2s}
nav.top .links a:hover{opacity:.6}
nav.top .cta{
  font-size:.85rem;font-weight:500;
  padding:10px 22px;border-radius:99px;
  background:var(--ink);color:var(--paper);
  transition:all .25s ease;
  display:inline-flex;align-items:center;gap:8px;
}
nav.top .cta:hover{background:var(--coral);transform:translateY(-1px)}
@media(max-width:880px){nav.top .links{display:none}}

/* ============ HERO ============ */
.hero{
  position:relative;
  min-height:100vh;
  display:flex;align-items:flex-end;
  padding:120px 32px 60px;
  overflow:hidden;
  color:#fff;
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    linear-gradient(180deg,rgba(7,36,48,.35) 0%,rgba(7,36,48,.15) 35%,rgba(7,36,48,.85) 100%),
    url('img/Zanzibar-untold-movie-drone-picture.jpg') center/cover no-repeat;
  transform:scale(1.05);
  animation:slowZoom 18s ease-in-out infinite alternate;
}
@keyframes slowZoom{from{transform:scale(1.05) translateY(0)}to{transform:scale(1.12) translateY(-10px)}}
.hero .content{position:relative;z-index:2;max-width:1320px;margin:0 auto;width:100%}
.hero .eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:'DM Mono',monospace;font-size:.72rem;
  letter-spacing:.2em;text-transform:uppercase;
  padding:8px 16px;border:1px solid rgba(255,255,255,.4);
  border-radius:99px;margin-bottom:32px;
}
.hero .eyebrow .pulse{width:6px;height:6px;background:var(--coral);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}
.hero h1{
  font-size:clamp(3rem,9vw,7.5rem);
  font-weight:300;line-height:.95;letter-spacing:-.03em;
  margin-bottom:24px;max-width:18ch;
}
.hero h1 em{font-style:italic;font-weight:400;color:var(--coral-soft)}
.hero .sub{
  font-size:clamp(1rem,1.4vw,1.2rem);
  max-width:540px;color:rgba(255,255,255,.85);
  font-weight:300;margin-bottom:40px;
}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:16px 28px;border-radius:99px;
  font-weight:500;font-size:.92rem;
  transition:all .25s ease;cursor:pointer;border:none;
}
.btn-primary{background:var(--coral);color:#fff}
.btn-primary:hover{background:#c44a2e;transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(213,90,58,.55)}
.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-dark:hover{background:var(--ocean)}
.btn .arr{transition:transform .25s}
.btn:hover .arr{transform:translateX(4px)}

.hero .meta-bar{
  position:absolute;bottom:30px;right:32px;z-index:2;
  display:flex;flex-direction:column;align-items:flex-end;gap:6px;
  font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.15em;
  color:rgba(255,255,255,.7);text-transform:uppercase;
}
.hero .meta-bar .live{display:flex;align-items:center;gap:8px;color:#fff}
.hero .meta-bar .live::before{content:"";width:6px;height:6px;background:#5BE584;border-radius:50%;animation:pulse 1.5s infinite}
.scroll-cue{
  position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:2;
  color:rgba(255,255,255,.6);font-family:'DM Mono',monospace;font-size:.65rem;
  letter-spacing:.3em;text-transform:uppercase;
  display:flex;flex-direction:column;align-items:center;gap:12px;
}
.scroll-cue::after{content:"";width:1px;height:40px;background:linear-gradient(180deg,rgba(255,255,255,.6),transparent);animation:scrollLine 2s infinite}
@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1)}100%{transform:scaleY(0);transform-origin:bottom}}

/* ============ STATS STRIP ============ */
.stats{
  background:var(--ocean-deep);color:var(--paper);
  padding:48px 32px;
}
.stats .grid{
  max-width:1320px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);gap:48px;
}
.stats .item{display:flex;flex-direction:column;gap:8px}
.stats .num{font-family:'Fraunces',serif;font-size:3.2rem;font-weight:300;letter-spacing:-.03em;line-height:1;color:var(--coral-soft)}
.stats .num small{font-size:1.4rem;color:var(--seafoam);margin-left:4px}
.stats .lbl{font-size:.82rem;color:rgba(246,239,227,.7);letter-spacing:.02em}
@media(max-width:880px){.stats .grid{grid-template-columns:repeat(2,1fr);gap:32px}}

/* ============ SECTION HEADER ============ */
.sec{padding:120px 0;position:relative}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:72px;padding:0 32px;max-width:1320px;margin-left:auto;margin-right:auto}
.sec-head .left{max-width:600px}
.sec-head .kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.sec-head .kicker .line{width:36px;height:1px;background:var(--coral)}
.sec-head .kicker .mono{color:var(--coral)}
.sec-head h2{font-size:clamp(2.4rem,5.5vw,4.4rem);font-weight:300;letter-spacing:-.02em}
.sec-head h2 em{font-style:italic;color:var(--coral)}
.sec-head .right{max-width:380px;color:var(--ink-soft);font-size:1rem}

/* ============ STORY (Ciprian) ============ */
.story{background:var(--paper-warm)}
.story .inner{
  max-width:1320px;margin:0 auto;padding:0 32px;
  display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;
}
.story .portrait{
  position:relative;aspect-ratio:4/5;
  background:url('img/ciprian-iftime-despre-mine-zanzibarezul-blog-the-rock-zanzibar-1024x683.jpg') center/cover;
  border-radius:4px;overflow:hidden;
}
.story .portrait::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(11,23,28,.5));
}
.story .portrait .caption{
  position:absolute;bottom:24px;left:24px;right:24px;color:#fff;z-index:2;
}
.story .portrait .caption strong{display:block;font-family:'Fraunces',serif;font-size:1.3rem;font-weight:500;margin-bottom:4px}
.story .portrait .caption span{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;opacity:.8}
.story h2{font-size:clamp(2rem,4vw,3.4rem);font-weight:300;margin-bottom:24px;letter-spacing:-.02em}
.story h2 em{font-style:italic;color:var(--coral)}
.story p{font-size:1.06rem;color:var(--ink-soft);margin-bottom:18px;font-weight:300}
.story .pull{
  font-family:'Fraunces',serif;font-style:italic;
  font-size:1.5rem;line-height:1.4;color:var(--ocean);
  padding:24px 0 24px 24px;border-left:2px solid var(--coral);
  margin:28px 0;
}
.story .sign{
  display:flex;align-items:center;gap:14px;margin-top:32px;
  font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-soft);
}
.story .sign img{width:40px;height:40px;border-radius:50%;object-fit:cover}
@media(max-width:880px){.story .inner{grid-template-columns:1fr;gap:48px}}

/* ============ JOURNEYS (Pachete) ============ */
.journeys{background:var(--paper)}
.journey-grid{
  max-width:1320px;margin:0 auto;padding:0 32px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;
}
.journey{
  position:relative;background:#fff;border-radius:6px;overflow:hidden;
  border:1px solid var(--line);
  transition:all .35s ease;cursor:pointer;
}
.journey:hover{transform:translateY(-6px);box-shadow:0 30px 60px -20px rgba(7,36,48,.18)}
.journey .img{aspect-ratio:4/3;background-size:cover;background-position:center;position:relative;overflow:hidden}
.journey .img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.4))}
.journey:nth-child(1) .img{background-image:url('img/Sejur-Zanzibar-de-8-zile-in-Toamna-2026-de-la-1390Europersoana.jpg')}
.journey:nth-child(2) .img{background-image:url('img/Sejur-Zanzibar-10-zile-Vara-2026-de-la-1690euro-800x480.jpg')}
.journey:nth-child(3) .img{background-image:url('img/Pachet-de-Vacanta-Ianuarie-2027-800x480.jpg')}
.journey:nth-child(4) .img{background-image:url('img/safari-sejur-zanzibar-toamna-2026-de-la-2290europersoana-800x480.jpg')}
.journey:nth-child(5) .img{background-image:url('img/haihui-in-doi.jpg')}
.journey:nth-child(6) .img{background-image:url('img/sejur-in-zanzibar-cu-zanzibarezul-800x480.jpg')}
.journey .tag{position:absolute;top:16px;left:16px;z-index:2;font-family:'DM Mono',monospace;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;padding:6px 12px;border-radius:99px;background:rgba(255,255,255,.92);color:var(--ink);backdrop-filter:blur(6px)}
.journey .tag.live{background:rgba(213,90,58,.95);color:#fff}
.journey .body{padding:26px 24px 28px}
.journey .head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.journey h3{font-size:1.5rem;font-weight:500}
.journey .price{font-family:'Fraunces',serif;font-size:1.35rem;font-weight:500;color:var(--coral);white-space:nowrap}
.journey .price small{font-family:'Inter',sans-serif;font-size:.7rem;color:var(--ink-soft);display:block;font-weight:400;text-align:right;margin-top:-2px}
.journey .meta{display:flex;gap:14px;color:var(--ink-soft);font-size:.82rem;margin-bottom:14px}
.journey .meta span{display:flex;align-items:center;gap:6px}
.journey .desc{color:var(--ink-soft);font-size:.92rem;margin-bottom:18px;line-height:1.55}
.journey .foot{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--line)}
.journey .foot .avail{font-family:'DM Mono',monospace;font-size:.7rem;color:var(--ocean);letter-spacing:.1em}
.journey .foot .avail.few{color:var(--coral)}
.journey .foot .more{font-size:.85rem;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:6px}
.journey:hover .foot .more{color:var(--coral)}
@media(max-width:1080px){.journey-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.journey-grid{grid-template-columns:1fr}}

/* ============ VILLA SHOWCASE ============ */
.villa{
  position:relative;background:var(--ocean-deep);color:var(--paper);
  padding:120px 0;overflow:hidden;
}
.villa::before{
  content:"ANANDA";position:absolute;top:5%;left:-2%;
  font-family:'Fraunces',serif;font-size:24vw;font-weight:300;
  color:rgba(157,191,184,.06);letter-spacing:-.04em;pointer-events:none;
}
.villa .inner{max-width:1320px;margin:0 auto;padding:0 32px;position:relative;z-index:1}
.villa-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:60px;flex-wrap:wrap}
.villa-head .lead h2{font-size:clamp(2.4rem,5vw,4rem);font-weight:300;letter-spacing:-.02em;margin-bottom:18px}
.villa-head .lead h2 em{font-style:italic;color:var(--coral-soft)}
.villa-head .lead p{max-width:520px;color:rgba(246,239,227,.7);font-weight:300}
.villa-head .stats-mini{display:flex;gap:40px}
.villa-head .stats-mini .item .n{font-family:'Fraunces',serif;font-size:2.4rem;font-weight:300;color:var(--coral-soft)}
.villa-head .stats-mini .item .l{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(246,239,227,.5);margin-top:4px}
.villa-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,260px);gap:14px}
.villa-gallery .ph{background-size:cover;background-position:center;border-radius:4px;position:relative;overflow:hidden;transition:transform .5s}
.villa-gallery .ph:hover{transform:scale(1.02)}
.villa-gallery .ph:nth-child(1){grid-row:span 2;background-image:url('img/Ananda-Villa-Zanzibar-2048x1152.jpg')}
.villa-gallery .ph:nth-child(2){background-image:url('img/ananda-villa-zanzibar-garden-1-1024x682.jpg')}
.villa-gallery .ph:nth-child(3){background-image:url('img/ananda-villa-zanzibar-garden-3-1024x682.jpg')}
.villa-gallery .ph:nth-child(4){background-image:url('img/ananda-villa-zanzibar-garden-5-1024x682.jpg')}
.villa-gallery .ph:nth-child(5){background-image:url('img/ananda-villa-zanzibar-garden-7-1024x682.jpg')}
.villa-gallery .ph .lbl{position:absolute;bottom:16px;left:16px;font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#fff;background:rgba(11,23,28,.5);backdrop-filter:blur(8px);padding:6px 12px;border-radius:99px}
.villa-360{
  display:inline-flex;align-items:center;gap:12px;
  margin-top:40px;padding:14px 26px;border-radius:99px;
  background:var(--coral);color:#fff;font-size:.92rem;font-weight:500;
  cursor:pointer;transition:all .25s;
}
.villa-360:hover{background:#c44a2e;transform:translateY(-2px)}
.villa-360 .icon{width:18px;height:18px;border:2px solid #fff;border-radius:50%;position:relative}
.villa-360 .icon::before{content:"";position:absolute;inset:-3px;border:1px dashed rgba(255,255,255,.6);border-radius:50%;animation:spin 4s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:880px){.villa-gallery{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,200px)}.villa-gallery .ph:nth-child(1){grid-row:span 1}}

/* ============ EXPERIENCE GRID (Safari / Retreat / Africanisme) ============ */
.experiences{background:var(--paper-warm)}
.exp-grid{max-width:1320px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.exp{position:relative;aspect-ratio:3/4;border-radius:6px;overflow:hidden;cursor:pointer;background-size:cover;background-position:center;transition:transform .5s}
.exp:hover{transform:translateY(-4px)}
.exp:nth-child(1){background-image:url('img/safari-sejur-zanzibar-toamna-2026-de-la-2290europersoana-800x480.jpg')}
.exp:nth-child(2){background-image:url('img/ananda-villa-zanzibar-garden-10-1024x682.jpg')}
.exp:nth-child(3){background-image:url('img/kombe.jpg')}
.exp::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,36,48,.05) 30%,rgba(7,36,48,.85));z-index:1}
.exp .content{position:absolute;inset:0;z-index:2;padding:36px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}
.exp .num{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.2em;opacity:.7}
.exp h3{font-size:2rem;font-weight:300;margin-bottom:10px;letter-spacing:-.01em}
.exp h3 em{font-style:italic;color:var(--coral-soft)}
.exp p{font-size:.92rem;color:rgba(255,255,255,.8);font-weight:300;max-width:90%}
.exp .go{margin-top:18px;display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:4px;align-self:flex-start}
.exp:hover .go{color:var(--coral-soft);border-color:var(--coral-soft)}
@media(max-width:880px){.exp-grid{grid-template-columns:1fr}}

/* ============ DOCUMENTARY / BOOK ============ */
.media{background:var(--ink);color:var(--paper)}
.media .inner{max-width:1320px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.media .videowrap{position:relative;aspect-ratio:16/10;background:url('img/Zanzibar-untold-movie-drone-picture.jpg') center/cover;border-radius:6px;overflow:hidden;cursor:pointer}
.media .videowrap::after{content:"";position:absolute;inset:0;background:rgba(11,23,28,.35);transition:background .3s}
.media .videowrap:hover::after{background:rgba(11,23,28,.15)}
.media .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:88px;height:88px;border-radius:50%;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:transform .3s}
.media .videowrap:hover .play{transform:translate(-50%,-50%) scale(1.1)}
.media .play::after{content:"";width:0;height:0;border-left:18px solid var(--ink);border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:4px}
.media .duration{position:absolute;bottom:18px;right:18px;z-index:2;font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.12em;background:rgba(11,23,28,.7);padding:6px 12px;border-radius:99px;color:#fff}
.media .label{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--coral-soft);margin-bottom:18px}
.media h2{font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:300;letter-spacing:-.02em;margin-bottom:20px}
.media h2 em{font-style:italic;color:var(--coral-soft)}
.media p{color:rgba(246,239,227,.7);font-weight:300;margin-bottom:16px}
.media .badges{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.media .badge{padding:8px 16px;border:1px solid rgba(246,239,227,.2);border-radius:99px;font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(246,239,227,.7)}
.media .row{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
@media(max-width:880px){.media .inner{grid-template-columns:1fr;gap:48px}}

/* ============ TESTIMONIALS ============ */
.testimonials{background:var(--paper)}
.testi-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 32px;max-width:1320px;margin:0 auto;scrollbar-width:none}
.testi-track::-webkit-scrollbar{display:none}
.testi{
  flex:0 0 420px;background:#fff;border-radius:6px;padding:32px;
  border:1px solid var(--line);scroll-snap-align:start;
  display:flex;flex-direction:column;gap:18px;
}
.testi .stars{color:var(--gold);letter-spacing:2px;font-size:.9rem}
.testi .quote{font-family:'Fraunces',serif;font-size:1.15rem;font-weight:400;color:var(--ink);line-height:1.5;font-style:italic}
.testi .who{display:flex;align-items:center;gap:14px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.testi .who .av{width:46px;height:46px;border-radius:50%;background:var(--sand);display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:500;color:var(--ocean-deep);font-size:1.2rem}
.testi .who .info strong{display:block;font-weight:600;font-size:.92rem}
.testi .who .info span{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}

/* ============ FAQ ============ */
.faq{background:var(--paper-warm)}
.faq .inner{max-width:920px;margin:0 auto;padding:0 32px}
.faq h2{font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:300;letter-spacing:-.02em;margin-bottom:14px;text-align:center}
.faq h2 em{font-style:italic;color:var(--coral)}
.faq .sub{text-align:center;color:var(--ink-soft);margin-bottom:60px;font-size:1.05rem}
.faq-item{border-bottom:1px solid var(--line);padding:24px 0;cursor:pointer}
.faq-item .q{display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:'Fraunces',serif;font-size:1.3rem;font-weight:500}
.faq-item .icon{width:24px;height:24px;flex-shrink:0;position:relative;transition:transform .3s}
.faq-item .icon::before,.faq-item .icon::after{content:"";position:absolute;background:var(--ink);top:50%;left:50%;transform:translate(-50%,-50%)}
.faq-item .icon::before{width:14px;height:1.5px}
.faq-item .icon::after{width:1.5px;height:14px;transition:transform .3s}
.faq-item.open .icon::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item .a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s;color:var(--ink-soft);font-size:1rem}
.faq-item.open .a{max-height:300px;padding-top:18px}

/* ============ CONCIERGE FORM ============ */
.concierge{background:var(--ocean);color:var(--paper);position:relative;overflow:hidden}
.concierge::before{
  content:"";position:absolute;right:-10%;top:-20%;width:60%;aspect-ratio:1;
  background:radial-gradient(circle,var(--coral) 0%,transparent 70%);
  opacity:.15;
}
.concierge .inner{max-width:1320px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;position:relative;z-index:1}
.concierge .left{display:flex;flex-direction:column;justify-content:center}
.concierge .left .lbl{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--coral-soft);margin-bottom:18px}
.concierge h2{font-size:clamp(2.2rem,4.8vw,3.8rem);font-weight:300;letter-spacing:-.02em;margin-bottom:24px;line-height:1}
.concierge h2 em{font-style:italic;color:var(--coral-soft)}
.concierge .lead-p{color:rgba(246,239,227,.7);margin-bottom:40px;font-weight:300;max-width:440px}
.concierge .features{display:flex;flex-direction:column;gap:18px}
.concierge .feat{display:flex;gap:14px;align-items:flex-start}
.concierge .feat .num{font-family:'Fraunces',serif;font-size:1.4rem;color:var(--coral-soft);font-weight:500;min-width:28px}
.concierge .feat strong{display:block;font-weight:500;margin-bottom:4px}
.concierge .feat span{color:rgba(246,239,227,.65);font-size:.92rem;font-weight:300}

.form-card{
  background:var(--paper);color:var(--ink);
  border-radius:8px;padding:40px;
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form-row.full{grid-template-columns:1fr}
.field label{display:block;font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}
.field input,.field select,.field textarea{
  width:100%;padding:14px 16px;
  border:1px solid var(--line);background:#fff;
  border-radius:4px;font-family:inherit;font-size:.95rem;color:var(--ink);
  transition:border-color .2s;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--coral)}
.field textarea{min-height:90px;resize:vertical}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.chip{padding:8px 14px;border:1px solid var(--line);border-radius:99px;font-size:.82rem;cursor:pointer;transition:all .2s;background:#fff;user-select:none}
.chip:hover{border-color:var(--coral)}
.chip.active{background:var(--coral);color:#fff;border-color:var(--coral)}
.budget-row{display:flex;justify-content:space-between;margin-top:8px;font-family:'DM Mono',monospace;font-size:.72rem;color:var(--ink-soft);letter-spacing:.08em}
input[type="range"]{width:100%;-webkit-appearance:none;height:4px;background:var(--line);border-radius:2px;margin:14px 0}
input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--coral);cursor:pointer;border:3px solid #fff;box-shadow:0 2px 8px rgba(213,90,58,.4)}
.submit-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.submit-bar .note{font-family:'DM Mono',monospace;font-size:.7rem;color:var(--ink-soft);letter-spacing:.08em}
.submit-bar .note strong{color:var(--coral);font-weight:600}
@media(max-width:880px){.concierge .inner{grid-template-columns:1fr;gap:48px}.form-row{grid-template-columns:1fr}}

/* ============ MOMENTS MOSAIC ============ */
.moments{background:var(--paper);padding:0 0 120px}
.moments .strip-head{max-width:1320px;margin:0 auto;padding:0 32px 40px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.moments .strip-head .left .mono{color:var(--coral);margin-bottom:14px}
.moments .strip-head h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;letter-spacing:-.02em}
.moments .strip-head h2 em{font-style:italic;color:var(--coral)}
.moments .strip-head .meta{font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft)}
.moments .mosaic{max-width:1480px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:10px}
.moments .mosaic .m{background-size:cover;background-position:center;border-radius:4px;overflow:hidden;position:relative;transition:transform .4s ease}
.moments .mosaic .m:hover{transform:scale(1.02);z-index:2}
.moments .mosaic .m::after{content:"";position:absolute;inset:0;background:rgba(11,23,28,0);transition:background .3s}
.moments .mosaic .m:hover::after{background:rgba(11,23,28,.18)}
.moments .mosaic .m.tall{grid-row:span 2}
.moments .mosaic .m.wide{grid-column:span 2}
.moments .book-band{max-width:1320px;margin:80px auto 0;padding:0 32px;display:grid;grid-template-columns:1fr 1.4fr;gap:60px;align-items:center}
.moments .book-band .cover{position:relative;aspect-ratio:3/4;background:url('img/carte-Zanzibarezul-Jurnalul-unui-lunatic-in-Zanzibar.jpg') center/cover;border-radius:4px;box-shadow:0 30px 60px -20px rgba(7,36,48,.35),0 8px 20px -10px rgba(7,36,48,.2);transform:rotate(-2deg);transition:transform .4s}
.moments .book-band .cover:hover{transform:rotate(0deg) scale(1.02)}
.moments .book-band .info .lbl{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--coral);margin-bottom:18px}
.moments .book-band .info h3{font-size:clamp(2rem,4vw,3rem);font-weight:300;font-style:italic;letter-spacing:-.02em;margin-bottom:20px;line-height:1.05}
.moments .book-band .info p{color:var(--ink-soft);margin-bottom:14px}
.moments .book-band .info .actions{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:880px){.moments .mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.moments .book-band{grid-template-columns:1fr;gap:40px}}

/* ============ PRESS / TRUST ============ */
.press{padding:60px 0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.press .inner{max-width:1320px;margin:0 auto;padding:0 32px}
.press .lbl{text-align:center;font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:32px}
.press .logos{display:flex;justify-content:space-around;align-items:center;gap:40px;flex-wrap:wrap}
.press .logo{font-family:'Fraunces',serif;font-size:1.4rem;font-weight:500;color:var(--ink-soft);opacity:.55;letter-spacing:-.01em;transition:opacity .2s}
.press .logo:hover{opacity:1}

/* ============ FOOTER ============ */
footer{background:var(--ink);color:var(--paper);padding:80px 0 40px;position:relative}
footer .inner{max-width:1320px;margin:0 auto;padding:0 32px}
footer .grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px}
footer .brand h3{font-family:'Fraunces',serif;font-size:1.8rem;font-weight:500;margin-bottom:14px}
footer .brand p{color:rgba(246,239,227,.55);font-size:.92rem;max-width:280px;font-weight:300;margin-bottom:24px}
footer .newsletter{position:relative;max-width:320px}
footer .newsletter input{width:100%;padding:14px 50px 14px 16px;background:rgba(246,239,227,.06);border:1px solid rgba(246,239,227,.15);border-radius:99px;color:var(--paper);font-family:inherit;font-size:.88rem}
footer .newsletter input::placeholder{color:rgba(246,239,227,.4)}
footer .newsletter button{position:absolute;right:6px;top:6px;width:36px;height:36px;border-radius:50%;border:none;background:var(--coral);color:#fff;cursor:pointer;font-size:1.1rem}
footer h4{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--coral-soft);margin-bottom:18px}
footer ul{list-style:none}
footer ul li{margin-bottom:10px}
footer ul a{color:rgba(246,239,227,.7);font-size:.92rem;transition:color .2s}
footer ul a:hover{color:var(--paper)}
footer .bottom{padding-top:40px;border-top:1px solid rgba(246,239,227,.1);display:flex;justify-content:space-between;align-items:center;font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.1em;color:rgba(246,239,227,.4);flex-wrap:wrap;gap:14px}
footer .bottom .socials{display:flex;gap:14px}
footer .bottom .socials a{padding:6px 12px;border:1px solid rgba(246,239,227,.15);border-radius:99px;transition:all .2s}
footer .bottom .socials a:hover{border-color:var(--coral);color:var(--paper)}
@media(max-width:880px){footer .grid{grid-template-columns:1fr 1fr;gap:40px}}

/* ============ FLOATING WHATSAPP ============ */
.float-wa{
  position:fixed;bottom:28px;right:28px;z-index:90;
  display:flex;align-items:center;gap:10px;
  padding:14px 22px;border-radius:99px;
  background:#25D366;color:#fff;font-weight:500;font-size:.9rem;
  box-shadow:0 16px 36px -10px rgba(37,211,102,.5);
  transition:all .3s;cursor:pointer;
}
.float-wa:hover{transform:translateY(-3px);box-shadow:0 22px 44px -10px rgba(37,211,102,.65)}
.float-wa .icon{width:22px;height:22px;border-radius:50%;background:#fff;color:#25D366;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}

/* ============ AUDIO TOGGLE ============ */
.audio-toggle{
  position:fixed;bottom:28px;left:28px;z-index:90;
  width:52px;height:52px;border-radius:50%;
  background:rgba(17,23,28,.85);backdrop-filter:blur(10px);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:var(--paper);
  border:1px solid rgba(246,239,227,.15);
  transition:all .3s;
}
.audio-toggle:hover{background:var(--coral);border-color:var(--coral)}
.audio-toggle .bars{display:flex;gap:2px;align-items:center;height:16px}
.audio-toggle .bars span{width:2px;background:currentColor;border-radius:2px;animation:audioBar 1.2s ease-in-out infinite}
.audio-toggle .bars span:nth-child(1){height:6px;animation-delay:0s}
.audio-toggle .bars span:nth-child(2){height:14px;animation-delay:.15s}
.audio-toggle .bars span:nth-child(3){height:9px;animation-delay:.3s}
.audio-toggle .bars span:nth-child(4){height:12px;animation-delay:.45s}
.audio-toggle.muted .bars span{animation-play-state:paused;height:8px!important}
@keyframes audioBar{0%,100%{transform:scaleY(.5)}50%{transform:scaleY(1)}}

/* reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:translateY(0)}

@media(max-width:880px){
  .wrap,.wrap-narrow,.sec-head{padding-left:20px;padding-right:20px}
  .sec{padding:80px 0}
  .sec-head{flex-direction:column;align-items:flex-start;gap:24px}
}
