:root{
    --bg: #0b1220;
    --bg2:#0d1b2a;
    --card:#0f2136;
    --text:#e9f1ff;
    --muted:#b9c7df;
    --accent:#7dd3fc;
    --accent2:#22c55e;
    --line: rgba(255,255,255,.12);
    --shadow: 0 14px 40px rgba(0,0,0,.35);
    --radius: 16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: linear-gradient(180deg, var(--bg), var(--bg2));
    color: var(--text);
}

/* Layout helpers */
.container{
    width:min(1100px, calc(100% - 32px));
    margin:0 auto;
}

.section{
    padding:64px 0;
}
.section.alt{
    background: rgba(255,255,255,.03);
}
.section h2{
    margin:0 0 10px 0;
    font-size: clamp(24px, 2.4vw, 34px);
}
.section-sub{
    margin:0 0 22px 0;
    color: var(--muted);
}

/* Header / Nav */
.header{
    position: sticky;
    top:0;
    z-index: 999;
    background: rgba(10, 16, 30, .78);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--line);
}
.nav-row{
    display:flex;
    align-items:center;
    gap:14px;
    padding:10px 0;
}
.brand{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    color: var(--text);
    min-width: 180px;
}
.brand-logo{
    width:44px;
    height:44px;
    border-radius: 12px;
    object-fit:cover;
    border: 1px solid var(--line);
    background:#fff;
}
.brand-text strong{display:block; line-height:1.05}
.brand-text small{display:block; color:var(--muted); font-size:12px; margin-top:1px}

.nav{
    display:flex;
    gap:14px;
    align-items:center;
    margin-left:auto;
}
.nav a{
    color: var(--text);
    text-decoration:none;
    font-size:14px;
    padding:10px 8px;     /* puțin mai strâns */
    border-radius: 10px;
    white-space: nowrap; /* CHEIA – nu mai rupe pe rând nou */
}

.nav a:hover{
    background: rgba(255,255,255,.08);
}

.cta{
    margin-left: 10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius: 999px;
    background: rgba(34,197,94,.18);
    border: 1px solid rgba(34,197,94,.4);
    color: var(--text);
    text-decoration:none;
    font-weight: 700;
    font-size:14px;
}
.cta:hover{filter: brightness(1.05)}

/* Hamburger */
.nav-toggle{
    display:none;
    margin-left:auto;
    width:44px;
    height:44px;
    border-radius: 12px;
    border:1px solid var(--line);
    background: rgba(255,255,255,.06);
    cursor:pointer;
}
.nav-toggle span{
    display:block;
    width:20px;
    height:2px;
    background: var(--text);
    margin: 5px auto;
    border-radius: 2px;
}

/* Hero (winter vibe) */
.hero{
    position:relative;
    padding: 72px 0 46px 0;
    overflow:hidden;
}
.hero-bg{
    position:absolute;
    inset:0;
    background:
            radial-gradient(800px 400px at 20% 10%, rgba(125,211,252,.25), transparent 60%),
            radial-gradient(900px 450px at 85% 20%, rgba(255,255,255,.10), transparent 62%),
            linear-gradient(180deg, rgba(255,255,255,.08), transparent 55%);
    pointer-events:none;
}
.hero-inner{
    position:relative;
}
.badge{
    display:inline-flex;
    gap:8px;
    align-items:center;
    padding:8px 12px;
    border-radius: 999px;
    background: rgba(125,211,252,.12);
    border: 1px solid rgba(125,211,252,.25);
    color: var(--text);
    font-weight: 600;
    font-size: 13px;
}
.hero h1{
    margin:14px 0 10px 0;
    font-size: clamp(34px, 4.2vw, 56px);
    line-height:1.05;
}
.lead{
    margin:0;
    color: var(--muted);
    max-width: 720px;
    font-size: 16px;
    line-height:1.55;
}

/* NEW: facem .hero-actions și .quick să stea pe același rând (desktop) */
.hero-actions{
    display: inline-flex;          /* NEW */
    align-items: center;           /* NEW */
    vertical-align: middle;        /* NEW */
    gap:12px;
    margin-top: 18px;
    flex-wrap: wrap;
}
.quick{
    margin-top: 18px;
    display: inline-flex;          /* NEW */
    align-items: center;           /* NEW */
    vertical-align: middle;        /* NEW */
    gap:10px;
    flex-wrap: wrap;
}

/* NEW: când sunt una lângă alta, scoatem “spațiul” de sus de pe al doilea grup */
.hero-actions + .quick{
    margin-top: 0;                 /* NEW */
    margin-left: 12px;             /* NEW */
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 12px 16px;
    border-radius: 14px;
    text-decoration:none;
    font-weight:800;
    border:1px solid var(--line);
}
.btn.primary{
    background: rgba(125,211,252,.18);
    border-color: rgba(125,211,252,.45);
    color: var(--text);
}
.btn.ghost{
    background: rgba(255,255,255,.06);
    color: var(--text);
}
.btn.whatsapp{
    background: rgba(34,197,94,.18);
    border-color: rgba(34,197,94,.45);
    color: var(--text);
}
.btn:hover{filter:brightness(1.06)}

.pill{
    padding:8px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.05);
    color: var(--text);
    font-size: 13px;
}

.loc-actions{
    display:flex;
    gap:8px;
    align-items:center;
}

.loc-ic{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.06);
    text-decoration:none;
    user-select:none;
}

.loc-ic:visited{ color: inherit; } /* elimină mov-ul */
.loc-ic:hover{ filter: brightness(1.12); }
.loc-ic img{ display:block; }


/* Cards / grids */
.grid{
    display:grid;
    gap: 14px;
}
.grid.two{grid-template-columns: repeat(2, minmax(0,1fr));}
.grid.three{grid-template-columns: repeat(3, minmax(0,1fr));}
.photos-4{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    justify-content: center;   /* CHEIA */
}


.cards{
    margin-top: 18px;
    display:grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0,1fr));
}

.card{
    background: rgba(255,255,255,.05);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 16px;
    box-shadow: var(--shadow);
}

.card h3{margin:0 0 10px 0}
.card ul{margin:0; padding-left: 18px; color: var(--muted)}
.card p{color: var(--muted)}
.price{
    font-size: 28px;
    margin: 8px 0 6px 0;
    color: var(--text);
    font-weight: 900;
}
.card-img{
    width:100%;
    height:auto;
    object-fit: contain;
    max-height: 320px;   /* limită elegantă */
    border-radius: 14px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.08);
}

.ph img{
    width:100%;
    height:auto;
    max-height: 220px;
    object-fit: contain;
    border-radius: 14px;
    border:1px solid var(--line);
    background: rgba(255,255,255,.08);
}
.ph figcaption{
    margin-top: 8px;
    color: var(--muted);
    font-size: 13px;
    text-align: center;   /* siguranță */
}

/* Gallery */
.gallery{
    grid-template-columns: repeat(6, minmax(0,1fr));
}
.gimg{
    width: 100%;
    height: 180px;
    object-fit: contain;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.08);
}

/* Text helpers */
.muted{color: var(--muted)}
.prose p, .prose li{color: var(--muted); line-height:1.65}
.prose strong{color: var(--text)}

/* SEO details */
.seo details{
    background: rgba(255,255,255,.04);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 12px 14px;
}
.seo summary{
    cursor:pointer;
    font-weight: 800;
}
.seo summary:hover{filter: brightness(1.05)}

/* Footer */
.footer{
    border-top: 1px solid var(--line);
    padding: 22px 0;
    background: rgba(0,0,0,.15);
}
.footer-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap: 12px;
    flex-wrap: wrap;
}

/* Floating WhatsApp */
.floating-wa{
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 54px;
    height: 54px;
    border-radius: 999px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background: rgba(34,197,94,.18);
    border: 1px solid rgba(34,197,94,.5);
    box-shadow: var(--shadow);
    color: var(--text);
    font-size: 22px;
    z-index: 1000;
}
.floating-wa:hover{filter:brightness(1.08)}

/* Responsive */
@media (max-width: 980px){
    .photos-4{grid-template-columns: repeat(2, minmax(0,1fr));}
    .cards{grid-template-columns: 1fr;}
    .grid.three{grid-template-columns: 1fr;}
    .grid.two{grid-template-columns: 1fr;}
    .gallery{grid-template-columns: repeat(3, minmax(0,1fr));}
    .card-img{height: 200px;}
}

/* NEW: pe ecrane medii/mici le punem iar pe coloane ca să fie adaptiv */
@media (max-width: 740px){
    .hero-actions{
        display: flex;              /* NEW */
        width: 100%;                /* NEW */
    }
    .quick{
        display: flex;              /* NEW */
        width: 100%;                /* NEW */
        margin-left: 0;             /* NEW */
        margin-top: 12px;           /* NEW */
    }
    .hero-actions + .quick{
        margin-left: 0;             /* NEW */
    }
}

@media (max-width: 860px){
    .nav-toggle{display:block;}
    .cta{display:none;}

    .nav{
        position: absolute;
        top: 64px;
        right: 16px;
        left: 16px;
        display:none;
        flex-direction: column;
        gap: 6px;
        padding: 10px;
        border-radius: 16px;
        background: rgba(10, 16, 30, .92);
        border: 1px solid var(--line);
        box-shadow: var(--shadow);
    }
    .nav a{padding: 12px 10px;}
    .nav.open{display:flex;}
    .nav-row{position:relative;}
}

.pill-location{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap:10px;
}

.loc-actions{
    display:flex;
    gap:8px;
}

.loc-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.06);
    color: var(--text);
    text-decoration:none;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}
.loc-btn:hover{
    filter: brightness(1.12);
}

/* pe ecrane mici: butoanele cad sub text */
@media (max-width: 520px){
    .pill-location{
        flex-direction: column;
        align-items:flex-start;
    }
}

/* === LINKURI ALBE (GLOBAL) === */
a{
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
}

a:hover{
    color: #e5e7eb;          /* alb ușor gri la hover */
    text-decoration: underline;
}

a:visited{
    color: #ffffff;         /* elimină mov complet */
}


/* === IMAGINI FĂRĂ CROP + EFECT 3D DISCRET === */
img{
    width: 100%;
    height: auto;              /* cheia: NU mai forțează înălțimea */
    object-fit: contain;       /* NU mai taie */
    border-radius: 16px;
    background: rgba(255,255,255,.06);
    box-shadow:
            0 10px 22px rgba(0,0,0,.35),
            inset 0 0 0 1px rgba(255,255,255,.12);
}

.contact-form{
    display:grid;
    gap:12px;
    margin-top: 10px;
}

.contact-form label{
    display:grid;
    gap:6px;
    color: var(--muted);
    font-size: 14px;
}

.contact-form input,
.contact-form textarea{
    width:100%;
    padding: 10px 12px;
    border-radius: 12px;
    border:1px solid var(--line);
    background: rgba(255,255,255,.06);
    color: var(--text);
    outline: none;
}

.contact-form input:focus,
.contact-form textarea:focus{
    border-color: rgba(255,255,255,.35);
}

/* honeypot */
.hp{ display:none; }

/* === HEADER ACTIONS (Facebook + WhatsApp) === */
.header-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.social{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.06);
    text-decoration:none;
}

.social:hover{
    filter: brightness(1.12);
}

.social img{
    display:block;
}


/* === FIX: aliniere + stil identic pentru al 3-lea "buton" din hero === */

/* aliniere perfectă pe aceeași linie (baseline fix) */
.hero-actions,
.quick{
    vertical-align: middle;
    line-height: 1;
}

/* facem pill-ul de locație să arate ca un buton (.btn) */
.quick .pill-location{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 12px 16px;        /* ca .btn */
    border-radius: 14px;       /* ca .btn */
    border: 1px solid var(--line);
    background: rgba(255,255,255,.06);

    font-weight: 800;          /* ca .btn */
    font-size: 14px;           /* ca .btn */
    color: var(--text);

    min-height: 44px;          /* uniformizează înălțimea */
}

/* iconițele din dreapta să fie centrate pe înălțime */
.quick .pill-location .loc-actions{
    align-items: center;
}

/* === HERO: toate butoanele la aceeași înălțime === */

.hero-actions .btn,
.quick .pill-location{
    min-height: 52px;              /* înălțime comună */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;                /* elimină diferențe subtile */
}

/* pixel-fix sigur pentru alinierea butonului 3 */
.quick > *{
    position: relative !important;
    top: 1px !important;
}

/* iconițe mai compacte în butonul 3 */
.quick .loc-ic{
    width: 28px;
    height: 28px;
    border-radius: 9px;
}

.quick .loc-ic img{
    width: 18px;
    height: 18px;
}

/* === HERO CTA ROW: aliniere + distanțe egale între 3 butoane === */
.hero-cta-row{
    display: flex;
    align-items: center;
    gap: 12px;              /* UNICUL gap dintre butoane */
    flex-wrap: wrap;        /* adaptiv */
    margin-top: 18px;
}

/* butoanele 1 și 2 */
.hero-cta-row .hero-actions{
    display: flex;
    align-items: center;
    gap: 12px;              /* distanță internă 1–2 */
    margin: 0;
}

/* butonul 3 */
.hero-cta-row .quick{
    display: flex;
    align-items: center;
    margin: 0;
}

/* toate 3 la aceeași înălțime */
.hero-cta-row .btn,
.hero-cta-row .pill-location{
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

/* FIX: conținutul din butonul 3 să NU mai creeze spațiu exterior */
.hero-cta-row .pill-location{
    justify-content: flex-start;   /* text + iconițe naturale */
    gap: 10px;                     /* spațiu intern controlat */
}

@media (max-width: 600px){
    .hero-cta-row{
        gap: 10px;
    }

    .hero-cta-row .btn,
    .hero-cta-row .pill-location{
        width: 100%;
    }
}

/* ===== HERO: 2 coloane (stânga text, dreapta imagine) ===== */
.hero-inner{
    position: relative;          /* păstrează ce aveai */
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 28px;
    align-items: center;
}

.hero-left{ min-width: 0; }

.hero-right{
    min-width: 0;
    display: flex;
    justify-content: center;
    align-items: flex-end;   /* 👈 ALINIERE JOS */
}

.hero-image{
    width: 100%;
    max-width: 370px;     /* ⬅ mai mică */
    max-height: 290px;    /* ⬅ mai mică */
    height: auto;
    object-fit: contain;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.08);
    box-shadow: var(--shadow);
}

/* Pe mobil: o coloană (imaginea sub text) */
@media (max-width: 980px){
    .hero-inner{ grid-template-columns: 1fr; }
    .hero-right{ justify-content: flex-start; margin-top: 18px; }
    .hero-image{ max-width: 520px; }
}

/* ===== LIGHTBOX GALERIE ===== */
.lightbox{
    position: fixed;
    inset: 0;
    display: none;                 /* ascuns implicit */
    place-items: center;
    background: rgba(0,0,0,.65);   /* overlay */
    backdrop-filter: blur(4px);
    z-index: 2000;
    padding: 18px;
}

.lightbox.open{
    display: grid;
}

.lightbox-card{
    position: relative;
    width: min(980px, 92vw);
    max-height: 86vh;
    background: rgba(255,255,255,.06);
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 14px;
}

.lightbox-card img{
    width: 100%;
    height: auto;
    max-height: calc(86vh - 28px);
    object-fit: contain;
    border-radius: 14px;
    background: rgba(255,255,255,.04);
    box-shadow: none;              /* ca să nu dubleze umbrele */
}

.lightbox-close{
    position: absolute;
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: rgba(10,16,30,.7);
    color: var(--text);
    cursor: pointer;
    font-size: 18px;
    font-weight: 900;
}

.lightbox-close:hover{
    filter: brightness(1.1);
}

/* opțional: când lightbox e deschis, nu mai “curge” pagina */
body.lb-lock{
    overflow: hidden;
}

/* === Instructori: efect zoom + hover (lightbox hint) === */
.photos-4 img{
    cursor: zoom-in;
    transition: filter .2s ease, transform .2s ease;
}

.photos-4 img:hover{
    filter: brightness(1.08);
    transform: scale(1.02);   /* foarte subtil */
}

/* === GALERIE FOTO: cursor + hover (lightbox) === */
.grid.gallery img.gimg{
    cursor: zoom-in;
    transition: filter .2s ease, transform .2s ease;
}

.grid.gallery img.gimg:hover{
    filter: brightness(1.08);
    transform: scale(1.02);
}
