/* Pro Lights - static mirror of https://prolights.ro/ */

@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/bebas-neue-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/bebas-neue-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('../fonts/dm-sans-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('../fonts/dm-sans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root { --black:#090909; --yellow:#FFD100; --white:#FAFAFA; --gray-300:#D5D4CC; --gray-500:#9A9A92; --gray-800:#252520; --gray-900:#151512; }
html { scroll-behavior:smooth; }
body { font-family:'DM Sans',sans-serif; background:var(--black); color:var(--white); overflow-x:hidden; }
img { max-width:100%; display:block; }
a { color:inherit; }
body > nav { position:fixed; inset:0 0 auto 0; z-index:100; display:flex; align-items:center; justify-content:space-between; padding:1rem 5vw; background:rgba(8,8,8,.88); backdrop-filter:blur(12px); border-bottom:1px solid rgba(255,209,0,.16); }
.nav-logo,.footer-logo { font-family:'Bebas Neue',sans-serif; font-size:2rem; letter-spacing:.05em; color:var(--yellow); text-decoration:none; }
.nav-logo span,.footer-logo span { color:var(--white); }
.nav-links { display:flex; gap:1.6rem; list-style:none; align-items:center; }
.nav-links a { color:var(--gray-300); text-decoration:none; font-size:.86rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; transition:.2s; }
.nav-links a:hover, .nav-links a.is-active { color:var(--yellow); }
.nav-cta { background:transparent; color:var(--white)!important; border:1px solid rgba(255,255,255,.4); padding:.55rem 1.15rem; border-radius:4px; transition:.2s; }
.nav-cta:hover { border-color:var(--yellow); color:var(--yellow)!important; }
#hero { min-height:100vh; display:flex; align-items:center; padding:9rem 5vw 6rem; position:relative; background:url('../gallery/evenimente-04.jpg') center/cover no-repeat; }
#hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 47%,rgba(0,0,0,.28) 100%); }
#hero::after { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 25% 45%,rgba(255,209,0,.18),transparent 42%); }
.hero-content { position:relative; z-index:1; max-width:780px; }
.hero-badge,.section-label { display:inline-block; color:var(--yellow); font-size:.76rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; margin-bottom:1rem; }
.section-label.section-head-label { font-size:1.5rem; font-weight:700; }
.hero-badge { padding:.45rem 1rem; border:1px solid rgba(255,209,0,.45); background:rgba(255,209,0,.11); border-radius:999px; }
.hero-title,.section-title,.service-title { font-family:'Bebas Neue',sans-serif; letter-spacing:.02em; }
.hero-title { font-size:clamp(4rem,10vw,8.5rem); line-height:.88; margin-bottom:1.4rem; text-shadow:0 10px 40px rgba(0,0,0,.55); }
.accent { color:var(--yellow); }
.hero-subtitle { max-width:560px; color:var(--gray-300); line-height:1.75; font-size:1.1rem; margin-bottom:2rem; }
.hero-btns { display:flex; flex-wrap:wrap; gap:1rem; }
.btn-primary,.btn-outline { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; text-decoration:none; padding:.9rem 1.7rem; border-radius:4px; font-weight:800; }
.btn-primary { background:var(--yellow); color:var(--black); border:2px solid var(--yellow); }
.btn-primary:hover { background:transparent; color:var(--yellow); }
.btn-outline { border:1px solid rgba(255,255,255,.24); color:var(--white); }
.btn-outline:hover { border-color:var(--yellow); color:var(--yellow); }
.hero-stats { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,minmax(120px,1fr)); gap:1px; max-width:720px; margin-top:3rem; background:rgba(255,209,0,.16); }
.stat { background:rgba(10,10,10,.72); padding:1.1rem; }
.stat-num { font-family:'Bebas Neue',sans-serif; color:var(--yellow); font-size:2.2rem; line-height:1; display:block; }
.stat-label { color:var(--gray-300); font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
section { padding:6rem 5vw; scroll-margin-top:70px; }
.service-page { padding:10rem 5vw 0; min-height:calc(100vh - 260px); background:radial-gradient(ellipse at 80% 0%,rgba(255,209,0,.09),transparent 45%),var(--black); }
.service-page-inner { max-width:1000px; margin:0 auto; }
.service-page .section-label { display:inline-block; }
.service-page h1 { font-family:'Bebas Neue',sans-serif; font-size:clamp(3.2rem,8vw,6rem); line-height:.98; letter-spacing:.02em; margin-bottom:1.2rem; }
.service-page .lead { color:var(--gray-300); font-size:clamp(1.05rem,2vw,1.25rem); line-height:1.8; max-width:780px; margin-bottom:2.5rem; }
.service-page-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1px; background:rgba(255,209,0,.16); margin:2.5rem 0; }
.service-page-card { background:var(--gray-900); padding:1.6rem; }
.service-page-card h2 { font-family:'Bebas Neue',sans-serif; font-size:1.5rem; color:var(--yellow); margin-bottom:.6rem; }
.service-page-card p,.service-page-card li { color:var(--gray-300); line-height:1.7; }
.service-page-card ul { list-style:none; display:grid; gap:.4rem; }
.service-page-card li::before { content:'\25B8'; color:var(--yellow); margin-right:.55rem; }
.service-page-facts,.service-page-qa { margin:3.5rem 0 0; padding:0; }
.service-page-facts h2,.service-page-qa h2 { font-family:'Bebas Neue',sans-serif; font-size:1.9rem; letter-spacing:.02em; line-height:1; margin-bottom:1.2rem; }
.service-page-facts dl { border-top:1px solid rgba(255,209,0,.16); }
.service-page-facts dl > div { display:grid; grid-template-columns:minmax(120px,220px) 1fr; gap:1rem; padding:.8rem 0; border-bottom:1px solid rgba(255,209,0,.16); }
.service-page-facts dt { color:var(--yellow); font-weight:800; font-size:.86rem; }
.service-page-facts dd { color:var(--gray-300); line-height:1.6; }
.service-page-facts dd a,.service-page-qa p a { color:var(--yellow); text-underline-offset:3px; }
.service-page-qa > div { padding:1.2rem 0; border-top:1px solid rgba(255,209,0,.16); }
.service-page-qa h3 { font-size:1.05rem; font-weight:800; line-height:1.4; margin-bottom:.45rem; }
.service-page-qa p { color:var(--gray-300); line-height:1.75; max-width:780px; }
.service-page-qa .service-page-updated { color:var(--gray-500); font-size:.86rem; margin-top:.6rem; }
@media (max-width:640px) { .service-page-facts dl > div { grid-template-columns:1fr; gap:.2rem; } }
.service-page-cta { margin-top:2rem; display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }
.service-page-links { margin:4.5rem 0 6rem; }
.service-page-links h2 { font-family:'Bebas Neue',sans-serif; font-size:1.9rem; letter-spacing:.02em; line-height:1; margin-bottom:1.2rem; }
.service-page-links ul { list-style:none; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); border-top:1px solid rgba(255,209,0,.16); border-left:1px solid rgba(255,209,0,.16); }
.service-page-links li { display:flex; border-right:1px solid rgba(255,209,0,.16); border-bottom:1px solid rgba(255,209,0,.16); }
.service-page-links a { position:relative; flex:1; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; min-height:9rem; padding:1.5rem; background:var(--black); color:var(--white); text-decoration:none; font-family:'Bebas Neue',sans-serif; font-size:1.65rem; line-height:1.05; letter-spacing:.02em; transition:background .2s, color .2s; }
.service-page-links a::after { content:''; flex:none; width:1.1rem; height:1.1rem; background:var(--yellow); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; transition:transform .25s cubic-bezier(.16,1,.3,1); }
.service-page-links a::before { content:''; position:absolute; left:0; top:0; bottom:0; width:1px; background:var(--yellow); }
.service-page-links a:hover { background:#11110e; color:var(--yellow); }
.service-page-links a:hover::after { transform:translateX(4px); }
.service-page-links a:focus-visible { outline:2px solid var(--yellow); outline-offset:-2px; }
.section-title { font-size:clamp(2.6rem,5vw,4.4rem); line-height:1; margin-bottom:1rem; }
.section-desc { color:var(--gray-300); line-height:1.8; max-width:680px; }
#servicii,#testimoniale { background:var(--gray-900); }
.section-head { margin-bottom:3rem; }
.services-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1px; background:rgba(255,209,0,.14); }
.service-card { background:var(--black); padding:2.4rem; min-height:330px; position:relative; overflow:hidden; transition:.25s; }
.service-card:hover { transform:translateY(-4px); background:#11110e; }
.service-num { font-family:'Bebas Neue',sans-serif; font-size:4rem; color:rgba(255,209,0,.14); line-height:1; }
.service-title { font-size:1.65rem; margin:.7rem 0; }
.service-desc { color:var(--gray-500); line-height:1.7; font-size:.95rem; margin-bottom:1rem; }
.service-list { list-style:none; display:grid; gap:.35rem; }
.service-list li { color:var(--gray-300); font-size:.88rem; }
.service-list li::before { content:'\25B8'; color:var(--yellow); margin-right:.55rem; }
.service-title a { color:inherit; text-decoration:none; }
.service-title a:hover,.service-card:hover .service-title a { color:var(--yellow); }
.service-more { display:inline-block; margin-top:1.1rem; color:var(--yellow); font-size:.86rem; font-weight:800; text-decoration:none; text-underline-offset:4px; }
.service-more::after { content:''; position:absolute; inset:0; z-index:1; }
.service-more:hover,.service-card:hover .service-more { text-decoration:underline; }
.service-more:focus-visible { outline:none; }
.service-card:has(.service-more:focus-visible) { outline:2px solid var(--yellow); outline-offset:-2px; }
#galerie { background:var(--black); }
.gallery-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.gal-item { min-height:230px; background:var(--gray-900); position:relative; overflow:hidden; cursor:pointer; border-radius:2px; }
.gal-item:nth-child(1),.gal-item:nth-child(8),.gal-item:nth-child(17) { grid-column:span 2; grid-row:span 2; }
.gal-item img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; transition:transform .35s ease, filter .35s ease; }
.gal-item:hover img { transform:scale(1.06); filter:saturate(1.08); }
.gal-item.hidden { display:none; }
.lightbox { position:fixed; inset:0; z-index:999; display:none; align-items:center; justify-content:center; background:rgba(0,0,0,.92); padding:2rem; }
.lightbox.active { display:flex; }
.lightbox img { max-height:86vh; max-width:92vw; object-fit:contain; border:1px solid rgba(255,209,0,.2); }
.lightbox-close { position:absolute; top:1rem; right:1.2rem; background:var(--yellow); color:var(--black); border:0; font-size:2rem; line-height:1; width:46px; height:46px; border-radius:999px; cursor:pointer; font-weight:900; }
.cta-band { background:linear-gradient(90deg,var(--yellow),#fff0a0); color:var(--black); padding:3.2rem 5vw; display:flex; justify-content:space-between; align-items:center; gap:2rem; flex-wrap:wrap; }
.cta-band h2 { font-family:'Bebas Neue'; font-size:clamp(2.2rem,4vw,3.6rem); line-height:1; }
.cta-band .btn-outline { border-color:#111; color:#111; }
.cta-band p { max-width:620px; font-weight:600; }
#contact { background:var(--black); }
.contact-inner { display:grid; grid-template-columns:1fr 1fr; gap:4rem; }
.contact-card { background:var(--gray-900); border:1px solid rgba(255,209,0,.14); padding:2rem; border-radius:8px; }
.contact-details { display:grid; gap:1rem; margin-top:2rem; }
.contact-item-label { color:var(--gray-500); text-transform:uppercase; letter-spacing:.08em; font-size:.75rem; margin-bottom:.2rem; }
.contact-item-val a { color:#fff; text-decoration:none; }
.contact-form { display:grid; gap:1rem; }
.contact-form input,.contact-form textarea,.contact-form select { width:100%; background:#20201b; border:1px solid rgba(255,255,255,.1); color:var(--white); padding:.9rem 1rem; border-radius:4px; font:inherit; }
.contact-form textarea { min-height:130px; }
.contact-form label { display:block; font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--gray-300); margin-bottom:.35rem; }
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { outline:none; border-color:var(--yellow); }
.btn-submit { background:var(--yellow); color:var(--black); border:0; padding:1rem 1.4rem; border-radius:4px; font-weight:900; cursor:pointer; }
.whatsapp-float { position:fixed; right:18px; bottom:18px; z-index:800; background:#25D366; color:#08160d; width:58px; height:58px; display:grid; place-items:center; border-radius:999px; text-decoration:none; font-weight:900; box-shadow:0 12px 35px rgba(0,0,0,.35); }
footer { background:#111; color:#fff; padding:40px 20px; font-family:'DM Sans',sans-serif; }
.footer-inner { max-width:1200px; margin:auto; display:flex; flex-wrap:wrap; gap:30px; justify-content:space-between; }
.footer-col { flex:1; min-width:250px; }
.footer-col h3 { font-family:'Bebas Neue',sans-serif; font-size:1.4rem; color:var(--yellow); margin-bottom:15px; letter-spacing:.05em; }
.footer-col p { color:var(--gray-300); line-height:1.6; font-size:.9rem; }
.footer-col a { color:var(--gray-300); text-decoration:none; transition:.2s; }
.footer-col a:hover { color:var(--yellow); }
.footer-col .footer-label { font-weight:700; color:var(--white); }
.reveal { opacity:0; transform:translateY(22px); transition:opacity .55s ease, transform .55s ease; }
.reveal.visible { opacity:1; transform:none; }

/* Mobile navigation (nav-links are hidden on small screens) */
.nav-toggle { display:none; background:transparent; border:1px solid rgba(255,209,0,.45); color:var(--yellow); border-radius:4px; font:inherit; font-size:1.4rem; line-height:1; padding:.45rem .7rem; cursor:pointer; }

/* Language switcher */
.nav-right { display:flex; align-items:center; gap:.9rem; }
.lang-switch { display:flex; align-items:stretch; border:1px solid rgba(255,255,255,.22); border-radius:4px; overflow:hidden; }
.lang-opt { display:block; padding:.34rem .62rem; font-size:.76rem; font-weight:800; letter-spacing:.09em; text-decoration:none; color:var(--gray-300); line-height:1.2; transition:.2s; }
.lang-opt:hover { color:var(--yellow); }
.lang-opt.is-active { background:var(--yellow); color:var(--black); }
.lang-opt.is-active:hover { color:var(--black); }

/* Cookie notice */
.cookie-notice { position:fixed; left:18px; bottom:18px; z-index:900; width:min(420px,calc(100vw - 36px)); box-sizing:border-box; color:#111; background:#fff; border:1px solid #f4f4f4; padding:15px; border-radius:4px; box-shadow:1px 3px 10px rgba(0,0,0,.35); font-family:'DM Sans',sans-serif; font-size:.85rem; line-height:1.5; display:none; }
.cookie-notice.show { display:block; }
.cookie-notice h4 { margin:0 0 .4rem; font-size:.95rem; font-weight:600; }
.cookie-notice p { margin:0 0 .8rem; }
.cookie-notice .btns { display:flex; justify-content:space-evenly; flex-wrap:wrap; gap:.5rem; }
.cookie-notice button { border-radius:4px; padding:.5rem 1rem; font:inherit; font-weight:700; cursor:pointer; }
.cookie-notice .accept { background:#1863dc; color:#fff; border:1px solid #1863dc; }
.cookie-notice .reject { background:#fff; color:#111; border:1px solid #111; }

@media (max-width:900px) { .gallery-grid{grid-template-columns:repeat(2,1fr);} .contact-inner{grid-template-columns:1fr;} .nav-toggle{display:block;} .nav-links{display:none;} .nav-links.open { display:flex; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; background:rgba(8,8,8,.97); border-bottom:1px solid rgba(255,209,0,.16); padding:.5rem 4vw 1rem; } .nav-links.open li a { display:block; padding:.7rem 0; } .nav-links.open .nav-cta { text-align:center; margin-top:.4rem; } }
@media (max-width:640px) { body > nav{padding:.9rem 4vw;} .service-page{padding:8rem 4vw 0;} section{padding:4rem 4vw;} #hero{padding:7rem 4vw 4rem;} .hero-stats{grid-template-columns:1fr;} .gallery-grid{grid-template-columns:1fr;} .gal-item,.gal-item:nth-child(1),.gal-item:nth-child(8),.gal-item:nth-child(17){grid-column:auto;grid-row:auto;min-height:250px;} }

@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto;} .reveal{opacity:1;transform:none;transition:none;} }

/* Impeccable: scroll-active nav (variant 3) */
.nav-links-v3 { display:flex; gap:1.6rem; list-style:none; align-items:center; font-family:'DM Sans',sans-serif; }
.nav-links-v3 a:not(.nav-cta) { color:var(--gray-300); text-decoration:none; font-size:.86rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; transition:color .2s ease, transform .2s ease; display:inline-block; }
.nav-links-v3 a:not(.nav-cta):hover { color:var(--yellow); transform:translateY(-2px); }
.nav-links-v3 a:not(.nav-cta).is-active { color:var(--yellow); text-shadow:0 0 18px rgba(255,209,0,.25); }
.nav-links-v3 .nav-cta { background:transparent; color:var(--white)!important; border:1px solid rgba(255,255,255,.4); padding:.55rem 1.25rem; border-radius:4px; text-decoration:none; font-size:.86rem; font-weight:900; letter-spacing:.05em; text-transform:uppercase; box-shadow:none; transition:.2s; }
.nav-links-v3 .nav-cta:hover { border-color:var(--yellow); color:var(--yellow)!important; }
.nav-links-v3 .nav-cta.is-active { border-color:var(--yellow); color:var(--yellow)!important; box-shadow:none; }
@media (max-width:900px) { .nav-links-v3{display:none;} .nav-links-v3.open { display:flex; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; background:rgba(8,8,8,.97); border-bottom:1px solid rgba(255,209,0,.16); padding:.5rem 4vw 1rem; } .nav-links-v3.open li a { display:block; padding:.7rem 0; } .nav-links-v3.open .nav-cta { text-align:center; margin-top:.4rem; } }

/* Impeccable: yellow accent moved to selected sections */
#servicii, #galerie, #contact { position:relative; }
#servicii::before, #galerie::before, #contact::before { content:""; position:absolute; top:0; left:5vw; right:5vw; height:2px; background:linear-gradient(90deg, transparent, var(--yellow) 20%, var(--yellow) 80%, transparent); opacity:.7; pointer-events:none; }
#servicii:target, #galerie:target, #contact:target { scroll-margin-top:90px; }
#servicii:target::before, #galerie:target::before, #contact:target::before { opacity:1; box-shadow:0 0 40px rgba(255,209,0,.25); }
@media (max-width:640px) { #servicii::before, #galerie::before, #contact::before { left:4vw; right:4vw; } }

/* Certifications */
.cert-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:1.2rem; }
.cert-item { background:var(--gray-900); border:1px solid rgba(255,209,0,.16); border-radius:4px; overflow:hidden; cursor:pointer; transition:.25s; position:relative; }
.cert-item img { width:100%; height:260px; object-fit:contain; background:#fff; display:block; }
.cert-item figcaption { padding:.7rem .9rem; color:var(--gray-300); font-size:.82rem; line-height:1.4; text-align:center; }
.cert-item:hover { border-color:var(--yellow); box-shadow:0 12px 40px rgba(0,0,0,.4); }
/*.cert-item::after { content:"🔍"; position:absolute; top:.6rem; right:.6rem; background:rgba(9,9,9,.8); color:var(--yellow); width:28px; height:28px; border-radius:999px; display:flex; align-items:center; justify-content:center; font-size:.8rem; }*/
@media (max-width:640px) { .cert-item img { height:200px; } }
h1.hero-badge { margin-top:0; line-height:1.5; border-radius:1.2rem; }
