/* TEST Domeniul Sălciilor — site demonstrativ. Paletă: ivoire, șampanie, verde-închis, bordo, auriu discret. v2 */
:root{
  --ivoire:#faf6ee; --hartie:#f2eadb; --sampanie:#e9dcc3; --linie:#d9c9a8;
  --cerneala:#2b2723; --text:#3d3832; --text-mic:#5c544a;
  --verde:#1f3a2e; --verde-2:#2c4d3e; --bordo:#6b2232; --bordo-2:#561a28;
  --aur:#b8975a; --aur-text:#7a5c22; --aur-deschis:#e3cf9f;
  --serif:Georgia,"Times New Roman",Times,serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --lat:1200px; --lent:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ivoire);color:var(--text);font:400 1.0625rem/1.7 var(--sans);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:var(--bordo);text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{color:var(--bordo-2)}
:focus-visible{outline:2px solid var(--bordo);outline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--cerneala);margin:0;font-kerning:normal;font-feature-settings:"kern","liga","onum"}
h1{font-size:clamp(2.4rem,6.4vw,4.9rem);line-height:1.04;letter-spacing:-.022em}
h2{font-size:clamp(1.9rem,4.2vw,3.1rem);line-height:1.1;letter-spacing:-.016em}
h3{font-size:clamp(1.35rem,2.2vw,1.65rem);line-height:1.25;letter-spacing:-.008em}
h1 em,h2 em{font-style:italic;color:var(--bordo);letter-spacing:-.01em}
p{margin:0 0 1.1em}
.sari{position:absolute;left:-9999px;top:0;background:var(--verde);color:#fff;padding:.7em 1.1em;z-index:60}
.sari:focus{left:12px;top:12px;color:#fff}
.cont{width:min(100% - 40px,var(--lat));margin-inline:auto}
.ingust{max-width:40rem}
.supra{display:inline-block;font:600 .75rem/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--aur-text);margin-bottom:1.3rem}
.supra::before{content:"";display:inline-block;width:2.2rem;height:1px;background:var(--aur);vertical-align:middle;margin-right:.9rem}
.lead{font-size:1.18rem;line-height:1.75;color:var(--text)}
.mic{font-size:.9rem;color:var(--text-mic)}

/* Banda demonstrativă */
.banda-demo{position:sticky;top:0;z-index:50;background:var(--verde);color:#f3ead6;font-size:.86rem;line-height:1.45;border-bottom:1px solid #375a4a}
.banda-demo .cont{display:flex;flex-wrap:wrap;gap:.35rem 1.2rem;align-items:center;justify-content:center;padding:.6rem 0;text-align:center}
.banda-demo a{color:#fff;font-weight:600;text-decoration:underline;white-space:nowrap;padding:.25rem 0}
.banda-demo a:hover{color:var(--aur-deschis)}

/* Antet */
.antet{border-bottom:1px solid var(--linie);background:rgba(250,246,238,.97)}
.antet .cont{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 0;flex-wrap:wrap}
.marca{display:flex;flex-direction:column;text-decoration:none;color:var(--cerneala);line-height:1.1}
.marca b{font:400 1.5rem/1.1 var(--serif);letter-spacing:-.01em}
.marca span{font:600 .66rem/1.4 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--aur-text);margin-top:.35rem}
.nav ul{list-style:none;display:flex;gap:.2rem 1.6rem;margin:0;padding:0;flex-wrap:wrap;align-items:center}
.nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--cerneala);font-size:.95rem;letter-spacing:.04em;border-bottom:1px solid transparent;transition:border-color .6s var(--lent),color .6s var(--lent)}
.nav a:hover{border-bottom-color:var(--aur);color:var(--bordo)}
.nav a[aria-current="page"]{border-bottom-color:var(--bordo);color:var(--bordo)}
.nav .btn{min-height:44px;padding:0 1.3rem;border:1px solid var(--bordo);color:var(--bordo)}
.nav .btn:hover{background:var(--bordo);color:#fff}
@media(max-width:620px){
  .antet .cont{padding:.8rem 0}
  .nav{width:100%;overflow-x:auto;scrollbar-width:none}
  .nav ul{flex-wrap:nowrap;gap:1.1rem;white-space:nowrap}
}

/* Disponibilitate (bandă sub antet) */
.disponibil{background:var(--hartie);border-bottom:1px solid var(--linie);font-size:.92rem}
.disponibil .cont{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center;justify-content:center;padding:.65rem 0;text-align:center}
.disponibil b{font-family:var(--serif);font-weight:400;font-style:italic;font-size:1.05rem;color:var(--verde)}
.disponibil a{font-weight:600}

/* Butoane */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.9rem;font:600 .82rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .7s var(--lent),color .7s var(--lent),border-color .7s var(--lent)}
.btn-plin{background:var(--bordo);color:#fff}
.btn-plin:hover{background:var(--bordo-2);color:#fff}
.btn-contur{border-color:var(--cerneala);color:var(--cerneala);background:transparent}
.btn-contur:hover{background:var(--cerneala);color:var(--ivoire)}
.btn-pe-verde{border-color:var(--aur-deschis);color:#fbf5e8}
.btn-pe-verde:hover{background:var(--aur-deschis);color:var(--verde)}
.butoane{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2.2rem}

/* Secțiuni */
.sectiune{padding:clamp(4.5rem,10vw,8.5rem) 0}
.sectiune.hartie{background:var(--hartie)}
.sectiune.verde{background:var(--verde);color:#ece2cc}
.sectiune.verde h2,.sectiune.verde h3{color:#fbf5e8}
.sectiune.verde h2 em{color:var(--aur-deschis)}
.sectiune.verde .supra{color:var(--aur-deschis)}
.sectiune.verde .supra::before{background:var(--aur-deschis)}
.sectiune.verde a:not(.btn){color:var(--aur-deschis)}
.cap{display:grid;gap:1.4rem;margin-bottom:clamp(2.5rem,6vw,4.5rem)}
@media(min-width:900px){.cap.doua{grid-template-columns:1.1fr .9fr;align-items:end;gap:4rem}}
.filet{height:1px;background:linear-gradient(90deg,transparent,var(--aur),transparent);border:0;margin:0}

/* Erou */
.erou{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,8vw,7rem)}
.erou-grila{display:grid;gap:2.5rem}
@media(min-width:960px){.erou-grila{grid-template-columns:1fr 1fr;gap:5rem;align-items:center}}
.erou h1{margin-bottom:1.6rem}
.erou-pagina{padding:clamp(3.5rem,8vw,6.5rem) 0 clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--linie)}
.erou-pagina h1{max-width:16ch;margin-bottom:1.4rem}
.fapte{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linie);margin-top:2.6rem}
.fapte div{padding:1.2rem .4rem 0 0}
.fapte b{display:block;font:400 1.7rem/1.1 var(--serif);color:var(--cerneala)}
.fapte span{display:block;margin-top:.35rem;font-size:.82rem;line-height:1.4;letter-spacing:.04em;color:var(--text-mic)}
@media(max-width:480px){.supra{letter-spacing:.16em}.supra::before{width:1.4rem;margin-right:.6rem}}

/* Ilustrații (se înlocuiesc 1:1 cu fotografii reale .webp) */
.foto{position:relative;margin:0;overflow:hidden;background:var(--sampanie);min-height:220px}
.foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 2.4s var(--lent)}
.foto:hover img{transform:scale(1.035)}
.foto::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.45);pointer-events:none;z-index:1}
.foto figcaption,.foto .leg{position:absolute;left:14px;bottom:14px;z-index:2;margin:0;padding:.35rem .7rem;background:rgba(250,246,238,.94);color:var(--cerneala);font:italic 400 .9rem/1.3 var(--serif);border-left:2px solid var(--aur)}

/* Grila asimetrică */
.mozaic{display:grid;gap:14px;grid-template-columns:1fr}
.mozaic .foto{min-height:300px}
@media(min-width:760px){
  .mozaic{grid-template-columns:repeat(6,1fr);grid-auto-rows:135px}
  .mozaic .foto{min-height:0}
  .m-a{grid-column:span 4;grid-row:span 4}.m-b{grid-column:span 2;grid-row:span 2}.m-c{grid-column:span 2;grid-row:span 2}
  .m-f{grid-column:span 3;grid-row:span 2}.m-g{grid-column:span 3;grid-row:span 2}
}
.erou-foto{min-height:440px}
@media(min-width:960px){.erou-foto{min-height:620px}}

/* Carduri */
.trei{display:grid;gap:clamp(2rem,4vw,3rem)}
@media(min-width:860px){.trei{grid-template-columns:repeat(3,1fr)}}
.doua-col{display:grid;gap:clamp(2rem,5vw,5rem)}
@media(min-width:860px){.doua-col{grid-template-columns:1fr 1fr;align-items:center}}
.card-salon .foto{min-height:340px;margin-bottom:1.6rem}
.card-salon h3{margin-bottom:.6rem}
.card-salon h3 a{color:inherit;text-decoration:none}
.card-salon h3 a:hover{color:var(--aur-deschis)}
.eticheta{font:600 .72rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--aur-text)}
.sectiune.verde .eticheta{color:var(--aur-deschis)}
.lista-fina{list-style:none;padding:0;margin:1.2rem 0 0;border-top:1px solid var(--linie)}
.lista-fina li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--linie);font-size:.96rem}
.lista-fina li span:last-child{color:var(--cerneala);text-align:right}
.sectiune.verde .lista-fina,.sectiune.verde .lista-fina li{border-color:#3f6352}
.sectiune.verde .lista-fina li span:last-child{color:#fbf5e8}
.citat{font:italic 400 clamp(1.5rem,3.2vw,2.3rem)/1.35 var(--serif);color:var(--cerneala);letter-spacing:-.01em;max-width:30ch;margin:0 auto;text-align:center}
.sectiune.verde .citat{color:#fbf5e8}
.centru{text-align:center}
.pasi{counter-reset:p;display:grid;gap:2rem;list-style:none;padding:0;margin:0}
@media(min-width:860px){.pasi{grid-template-columns:repeat(4,1fr)}}
.pasi li{counter-increment:p;border-top:1px solid var(--aur);padding-top:1.3rem}
.pasi li::before{content:counter(p,upper-roman);display:block;font:italic 1.3rem/1 var(--serif);color:var(--aur-text);margin-bottom:.9rem}
.sectiune.verde .pasi li::before{color:var(--aur-deschis)}
.pasi h3{font-size:1.3rem;margin-bottom:.5rem}

/* Întrebări */
.faq{max-width:52rem;border-top:1px solid var(--linie)}
.faq details{border-bottom:1px solid var(--linie)}
.faq summary{list-style:none;cursor:pointer;padding:1.2rem 2.5rem 1.2rem 0;font:400 1.3rem/1.35 var(--serif);color:var(--cerneala);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);font:300 1.8rem/1 var(--serif);color:var(--aur-text);transition:transform .5s var(--lent)}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{margin:0 0 1.3rem;color:var(--text-mic)}

/* Salon detaliat */
.salon{display:grid;gap:clamp(2rem,5vw,5rem);padding:clamp(3.5rem,8vw,6rem) 0;border-bottom:1px solid var(--linie)}
.salon:last-of-type{border-bottom:0}
@media(min-width:900px){.salon{grid-template-columns:1.15fr .85fr;align-items:center}.salon.invers .salon-foto{order:2}}
.salon-foto{display:grid;gap:14px;grid-template-columns:2fr 1fr}
.salon-foto .foto:first-child{grid-row:span 2;min-height:460px}
.salon-foto .foto{min-height:220px}
@media(max-width:600px){.salon-foto{grid-template-columns:1fr 1fr}.salon-foto .foto:first-child{grid-column:1/-1;grid-row:auto;min-height:300px}.salon-foto .foto{min-height:160px}}
.capacitati{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--linie);border:1px solid var(--linie);margin:1.6rem 0}
.capacitati div{background:var(--ivoire);padding:1rem 1.1rem}
.capacitati b{display:block;font:400 1.45rem/1.2 var(--serif);color:var(--cerneala)}
.capacitati span{font-size:.82rem;color:var(--text-mic);letter-spacing:.03em}

/* Meniuri */
.file{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;border-bottom:1px solid var(--linie)}
.file a{display:inline-flex;align-items:center;min-height:48px;padding:0 1.1rem;text-decoration:none;color:var(--cerneala);font-size:.95rem;letter-spacing:.04em;border-bottom:2px solid transparent;margin-bottom:-1px}
.file a:hover{border-bottom-color:var(--aur);color:var(--bordo)}
.meniu{display:grid;gap:clamp(2rem,5vw,4.5rem);padding:clamp(3rem,7vw,5rem) 0;border-bottom:1px solid var(--linie);scroll-margin-top:5rem}
@media(min-width:900px){.meniu{grid-template-columns:.8fr 1.2fr}}
.meniu .foto{min-height:380px}
.sezon{display:inline-block;margin-left:.6rem;font:600 .68rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde);background:#e6eedf;padding:.4rem .6rem;vertical-align:middle}
.fel{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1.4rem;padding:1.15rem 0;border-bottom:1px dotted var(--linie)}
.fel .nr{font:italic 1.05rem/1.6 var(--serif);color:var(--aur-text);grid-row:span 2}
.fel h3{font-size:1.2rem}
.fel p{margin:0;color:var(--text-mic);font-size:.96rem}
.pret{margin-top:1.6rem;font:italic 1.15rem/1.5 var(--serif);color:var(--bordo)}
.pret small{display:block;font:400 .82rem/1.4 var(--sans);font-style:normal;color:var(--text-mic)}

/* Galerie */
.filtre-galerie{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem}
.filtre-galerie button{min-height:44px;padding:0 1.1rem;border:1px solid var(--linie);background:transparent;color:var(--cerneala);font:600 .78rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.filtre-galerie button[aria-pressed="true"]{background:var(--verde);border-color:var(--verde);color:#fbf5e8}
.galerie{display:grid;gap:14px;grid-template-columns:1fr 1fr}
@media(min-width:700px){.galerie{grid-template-columns:repeat(4,1fr);grid-auto-rows:170px;grid-auto-flow:dense}}
.galerie button{all:unset;display:block;position:relative;cursor:zoom-in;min-height:180px}
.galerie button[hidden]{display:none}
@media(min-width:700px){.galerie button{min-height:0}}
.galerie button:focus-visible{outline:2px solid var(--bordo);outline-offset:3px}
.galerie .foto{position:absolute;inset:0;min-height:0}
.g2{grid-column:span 2}.r2{grid-row:span 2}
@media(max-width:699px){.r2{grid-row:auto}.galerie button.g2{min-height:220px}}
dialog.lumina{border:0;padding:0;background:transparent;max-width:min(94vw,1100px);width:100%}
dialog.lumina::backdrop{background:rgba(20,26,22,.86)}
.lumina .foto{display:block;min-height:min(70vh,660px)}
.lumina-bara{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--ivoire);padding:.6rem .6rem .6rem 1.2rem}
.lumina-bara p{margin:0;font:italic 1.05rem/1.4 var(--serif);color:var(--cerneala)}
.lumina-bara button{min-height:44px;min-width:44px;padding:0 1rem;border:1px solid var(--cerneala);background:transparent;color:var(--cerneala);font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.lumina-bara button:hover{background:var(--cerneala);color:var(--ivoire)}
.lumina-nav{display:flex;gap:.5rem}

/* Rezervare */
.rez{display:grid;gap:clamp(2rem,5vw,4rem)}
@media(min-width:980px){.rez{grid-template-columns:1.05fr .95fr;align-items:start}}
.calendar{background:#fffdf8;border:1px solid var(--linie);padding:clamp(1.1rem,3vw,2rem)}
.cal-cap{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1.2rem}
.cal-cap h2{font-size:clamp(1.5rem,3vw,1.9rem)}
.cal-cap button{min-width:48px;min-height:48px;border:1px solid var(--linie);background:transparent;color:var(--cerneala);font:1.2rem/1 var(--serif);cursor:pointer;transition:border-color .5s var(--lent)}
.cal-cap button:hover:not(:disabled){border-color:var(--bordo);color:var(--bordo)}
.cal-cap button:disabled{opacity:.35;cursor:default}
.cal-grila{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-zi-sapt{font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-mic);text-align:center;padding:.5rem 0}
.zi{position:relative;min-height:52px;border:1px solid transparent;background:transparent;font:400 1.02rem/1 var(--serif);color:var(--cerneala);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;transition:background-color .5s var(--lent),border-color .5s var(--lent)}
.zi::after{content:"";width:6px;height:6px;border-radius:50%}
.zi.liber{background:#f1f4ec}.zi.liber::after{background:#3e6b4f}
.zi.putin{background:#f8eedc}.zi.putin::after{background:#9a6a1c}
.zi.rezervat{background:transparent;color:#6f675d;text-decoration:line-through;text-decoration-color:#a8998a;cursor:not-allowed}.zi.rezervat::after{background:#a8998a}
.zi.trecut{color:#8b8378;cursor:default;background:transparent}.zi.trecut::after{display:none}
.zi:hover:not(:disabled){border-color:var(--aur)}
.zi[aria-pressed="true"]{background:var(--verde);color:#fff;border-color:var(--verde)}
.zi[aria-pressed="true"]::after{background:var(--aur-deschis)}
.legenda{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin:1.3rem 0 0;padding:0;list-style:none;font-size:.86rem;color:var(--text-mic)}
.legenda li{display:flex;align-items:center;gap:.5rem}
.legenda i{width:8px;height:8px;border-radius:50%;display:inline-block}
.stare{margin-top:1.2rem;padding:1rem 1.2rem;border-left:2px solid var(--aur);background:var(--hartie);font-size:.96rem;min-height:3.4em}
.estimare{margin-top:1rem;padding:1.1rem 1.2rem;border:1px solid var(--linie);background:#fffdf8}
.estimare b{font:400 1.6rem/1.2 var(--serif);color:var(--verde);display:block}
.estimare span{font-size:.88rem;color:var(--text-mic)}
.formular{display:grid;gap:1.15rem}
.formular .rand{display:grid;gap:1.15rem}
@media(min-width:560px){.formular .rand{grid-template-columns:1fr 1fr}}
.camp label{display:block;font:600 .74rem/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--cerneala);margin-bottom:.45rem}
.camp input,.camp select,.camp textarea{width:100%;min-height:52px;padding:.8rem 1rem;border:1px solid #b9a98a;border-radius:0;background:#fffdf8;color:var(--cerneala);font:400 1rem/1.4 var(--sans);transition:border-color .5s var(--lent)}
.camp textarea{min-height:120px;resize:vertical}
.camp input:focus,.camp select:focus,.camp textarea:focus{outline:none;border-color:var(--bordo);box-shadow:0 0 0 1px var(--bordo)}
.camp .ajutor{font-size:.82rem;color:var(--text-mic);margin:.4rem 0 0}
.formular .btn{width:100%}
.confirmare{display:none;padding:1.4rem 1.5rem;background:var(--verde);color:#f3ead6}
.confirmare.vizibil{display:block}
.confirmare h3{color:#fff;margin-bottom:.5rem}
.confirmare p{margin:0}
.text-legal{max-width:46rem}
.text-legal h2{font-size:1.6rem;margin:2.2rem 0 .8rem}
.text-legal ul{padding-left:1.2em}
.nota{font-size:.92rem;color:var(--text-mic);background:var(--hartie);padding:1rem 1.2rem;border-left:2px solid var(--aur)}

/* Subsol */
.subsol{background:#17291f;color:#d9cfb9;padding:clamp(3.5rem,7vw,5.5rem) 0 0;font-size:.95rem}
.subsol-grila{display:grid;gap:2.4rem;padding-bottom:3rem}
@media(min-width:860px){.subsol-grila{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.subsol h2{font-size:1.75rem;color:#fbf5e8;margin-bottom:.8rem}
.subsol h3{font:600 .72rem/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--aur-deschis);margin-bottom:1rem}
.subsol ul{list-style:none;margin:0;padding:0}
.subsol li{margin-bottom:.35rem}
.subsol a{color:#f3ead6;text-decoration:none;display:inline-block;padding:.3rem 0}
.subsol a:hover{color:var(--aur-deschis);text-decoration:underline}
.subsol p{margin:0 0 .4rem}
.subsol-juridic{border-top:1px solid #33493d;padding:1.2rem 0 1.4rem;font-size:.8rem;line-height:1.6;color:#c6bca6}
.subsol-juridic .cont{display:flex;flex-wrap:wrap;gap:.3rem 1.4rem;justify-content:space-between;align-items:center}
.subsol-juridic a{color:#efe5cf;text-decoration:underline;padding:.35rem 0}

/* Micro-animații lente */
@keyframes rasare{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.erou .text-erou{animation:rasare 1.4s var(--lent) both}
.erou .erou-foto{animation:rasare 1.8s .2s var(--lent) both}
@supports (animation-timeline:view()){
  .apare{animation:rasare linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .foto:hover img{transform:none}
}
