:root {
  --bg:       #f0f4f9;
  --bg2:      #e4ecf5;
  --navy:     #0d2461;
  --navy2:    #1a3a7a;
  --red:      #c0281c;
  --white:    #ffffff;
  --gray:     #5a6a80;
  --lgray:    #8a9ab5;
  --border:   rgba(13,36,97,0.12);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--navy);font-family:'DM Sans',sans-serif;font-weight:300;overflow-x:hidden}

/* NAV */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:0.85rem 4rem;
  background:rgba(255,255,255,0.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
  box-shadow:0 2px 20px rgba(13,36,97,0.08);
}
.nav-logo img{height:52px;display:block}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{
  color:var(--navy);text-decoration:none;
  font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;
  font-weight:500;transition:color 0.2s;
  padding-bottom:2px;border-bottom:2px solid transparent;
}
.nav-links a:hover{color:var(--red);border-bottom-color:var(--red)}

/* HERO */
#hero{
  min-height:100vh;display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  padding:7rem 4rem 4rem;
  position:relative;overflow:hidden;gap:4rem;
  background:linear-gradient(135deg, #ffffff 0%, #e8eef8 60%, #dce6f5 100%);
}
#hero::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 60% 70% at 100% 100%, rgba(13,36,97,0.06) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 0% 0%, rgba(192,40,28,0.04) 0%, transparent 50%);
  pointer-events:none;
}
#hero::after{
  content:'';position:absolute;
  top:0;right:0;width:45%;height:100%;
  background:linear-gradient(135deg, transparent 40%, rgba(13,36,97,0.04) 100%);
  pointer-events:none;
}

.hero-left{position:relative;z-index:2;animation:fadeLeft 0.9s ease both}
.hero-tag{
  display:inline-flex;align-items:center;gap:0.6rem;
  background:var(--red);color:#fff;
  font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:500;
  padding:0.35rem 1rem;border-radius:2px;margin-bottom:2rem;
}
h1{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(3rem,5.5vw,5rem);font-weight:700;
  line-height:1.05;color:var(--navy);margin-bottom:0.6rem;
}
.hero-sub{
  font-size:1.05rem;color:var(--gray);line-height:1.8;
  max-width:460px;margin-bottom:2.5rem;
}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}
.btn-primary{
  background:var(--navy);color:#fff;border:none;cursor:pointer;
  padding:0.9rem 2rem;font-family:'DM Sans',sans-serif;
  font-size:0.82rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;
  transition:background 0.2s,transform 0.2s,box-shadow 0.2s;
  box-shadow:0 4px 16px rgba(13,36,97,0.25);
}
.btn-primary:hover{background:var(--navy2);transform:translateY(-2px);box-shadow:0 8px 24px rgba(13,36,97,0.3)}
.btn-red{
  background:var(--red);color:#fff;border:none;cursor:pointer;
  padding:0.9rem 2rem;font-family:'DM Sans',sans-serif;
  font-size:0.82rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;
  transition:background 0.2s,transform 0.2s;
  box-shadow:0 4px 16px rgba(192,40,28,0.25);
}
.btn-red:hover{background:#a8201a;transform:translateY(-2px)}
.btn-outline{
  background:transparent;border:2px solid var(--navy);color:var(--navy);
  cursor:pointer;padding:0.85rem 2rem;font-family:'DM Sans',sans-serif;
  font-size:0.82rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;transition:all 0.2s;
}
.btn-outline:hover{background:var(--navy);color:#fff}

.hero-right{
  position:relative;z-index:2;
  display:flex;justify-content:center;align-items:flex-end;
  animation:fadeRight 0.9s 0.15s ease both;
}
.photo-wrap{position:relative;width:360px;max-width:100%}
.photo-wrap::before{
  content:'';position:absolute;
  bottom:-8px;right:-8px;
  width:100%;height:100%;
  background:var(--navy);opacity:0.08;
  border-radius:4px;
}
.photo-wrap img{
  width:100%;height:480px;object-fit:cover;object-position:center top;
  border-radius:4px;display:block;position:relative;z-index:1;
  box-shadow:0 20px 60px rgba(13,36,97,0.2);
}
.photo-label{
  position:absolute;bottom:-14px;left:20px;z-index:3;
  background:var(--red);color:#fff;
  padding:0.6rem 1.2rem;border-radius:3px;
  font-size:0.78rem;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;
  box-shadow:0 4px 16px rgba(192,40,28,0.35);
}

@keyframes fadeLeft{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeRight{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}

/* STATS */
#stats{
  background:var(--navy);
  display:grid;grid-template-columns:repeat(4,1fr);
  padding:2rem 4rem;
}
.stat{
  text-align:center;padding:1.2rem;
  border-right:1px solid rgba(255,255,255,0.1);
}
.stat:last-child{border-right:none}
.stat-n{font-family:'Cormorant Garamond',serif;font-size:2.6rem;font-weight:700;color:#fff;line-height:1}
.stat-l{font-size:0.72rem;color:rgba(255,255,255,0.55);letter-spacing:0.12em;text-transform:uppercase;margin-top:0.3rem}

/* GENERIC */
.section-wrap{padding:6rem 4rem;max-width:1200px;margin:0 auto}
.s-tag{
  display:inline-block;
  background:var(--red);color:#fff;
  font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;font-weight:500;
  padding:0.25rem 0.8rem;border-radius:2px;margin-bottom:1rem;
}
h2{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2rem,3.5vw,2.8rem);font-weight:700;
  line-height:1.2;color:var(--navy);margin-bottom:2rem;
}

/* ABOUT */
#about{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
#about .inner{
  max-width:1200px;margin:0 auto;padding:6rem 4rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.about-text p{color:var(--gray);font-size:0.97rem;line-height:1.85;margin-bottom:1.1rem}
.about-milestones{display:flex;flex-direction:column}
.milestone{
  display:grid;grid-template-columns:70px 1fr;
  gap:1.2rem;padding:1.4rem 0;
  border-bottom:1px solid var(--border);align-items:start;
}
.milestone:last-child{border-bottom:none}
.m-year{
  font-family:'Cormorant Garamond',serif;
  font-size:1.35rem;font-weight:600;color:var(--red);line-height:1.1;
}
.m-text h4{font-size:0.9rem;font-weight:500;margin-bottom:0.2rem;color:var(--navy)}
.m-text p{font-size:0.82rem;color:var(--lgray);line-height:1.6}

/* ACTIVITY */
#activitate{background:var(--bg2)}
#activitate .inner{max-width:1200px;margin:0 auto;padding:6rem 4rem}
.activity-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:1.2rem;margin-top:2.5rem;
}
.activity-card{
  background:#fff;border:1px solid var(--border);border-radius:4px;
  padding:1.8rem;position:relative;overflow:hidden;
  transition:border-color 0.3s,transform 0.3s,box-shadow 0.3s;
  min-height:200px;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.activity-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top, rgba(13,36,97,0.9) 0%, rgba(13,36,97,0.5) 50%, transparent 100%);
  z-index:0;transition:opacity 0.3s;
}
.activity-card h3,
.activity-card p{position:relative;z-index:1;color:#fff}
.activity-card h3{
  font-family:'Cormorant Garamond',serif;
  font-size:1.15rem;font-weight:600;margin-bottom:0.6rem;
}
.activity-card p{font-size:0.87rem;line-height:1.7;opacity:0.95}
.activity-card-urgenta{
  background:url('https://images.unsplash.com/photo-1579684385127-1ef15d508118?w=800') center/cover no-repeat;
}
.activity-card-reforma{
  background:url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=800') center/cover no-repeat;
}
.activity-card-infrastructura{
  background:url('https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/A2_motorway_Romania.JPG/960px-A2_motorway_Romania.JPG') center/cover no-repeat;
}
.activity-card-educatie{
  background:url('https://upload.wikimedia.org/wikipedia/commons/f/f8/Colegiul_National_Alexandru_Ioan_Cuza_Focsani.jpg') center/cover no-repeat;
}
.activity-card-apa{
  background:url('https://images.unsplash.com/photo-1548839140-29a749e1cf4d?w=800') center/cover no-repeat;
}
.activity-card-justitie{
  background:url('https://images.unsplash.com/photo-1589829545856-d10d557cf95f?w=800') center/cover no-repeat;
}
.activity-card:hover{
  border-color:rgba(13,36,97,0.3);transform:translateY(-3px);
  box-shadow:0 12px 36px rgba(13,36,97,0.2);
}
.activity-card:hover::before{
  background:linear-gradient(to top, rgba(13,36,97,0.94) 0%, rgba(13,36,97,0.6) 60%, transparent 100%);
}

/* FACEM DREPTATE */
#dreptate{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
#dreptate .inner{max-width:1200px;margin:0 auto;padding:6rem 4rem;text-align:center}
.dreptate-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;
}
.dreptate-card{
  background:var(--bg);border:1px solid var(--border);border-radius:4px;
  padding:2.5rem 1.8rem;transition:all 0.3s;
  position:relative;overflow:hidden;
  min-height:220px;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.dreptate-card::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top, rgba(13,36,97,0.88) 0%, rgba(13,36,97,0.5) 45%, transparent 100%);
  z-index:0;transition:opacity 0.3s;
}
.dreptate-card h3,
.dreptate-card p{position:relative;z-index:1}
.dreptate-card-ro{
  background:linear-gradient(90deg, #002B7F 0%, #002B7F 33.33%, #FCD116 33.33%, #FCD116 66.66%, #CE1126 66.66%, #CE1126 100%);
  color:#fff;
}
.dreptate-card-ro h3,.dreptate-card-ro p{color:#fff}
.dreptate-card-moldova{
  background:url('/images/moldova-region.png') center/cover no-repeat;
  background-color:#e8eef8;
  color:#fff;
}
.dreptate-card-moldova h3,.dreptate-card-moldova p{color:#fff}
.dreptate-card-iasi{
  background:url('https://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Palace_of_Culture_%2C_Ia%C5%9Fi.JPG/960px-Palace_of_Culture_%2C_Ia%C5%9Fi.JPG') center/cover no-repeat;
  color:#fff;
}
.dreptate-card-iasi h3,.dreptate-card-iasi p{color:#fff}
.dreptate-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 36px rgba(13,36,97,0.35);
}
.dreptate-card:hover::before{
  background:linear-gradient(to top, rgba(13,36,97,0.92) 0%, rgba(13,36,97,0.6) 50%, transparent 100%);
}
.dreptate-card-ro:hover::before{background:rgba(13,36,97,0.75)}
.dreptate-card h3{
  font-family:'Cormorant Garamond',serif;
  font-size:1.4rem;font-weight:600;margin-bottom:0.7rem;color:inherit;
}
.dreptate-card p{font-size:0.87rem;color:inherit;line-height:1.7;opacity:0.95}
.dreptate-card-ro p{opacity:1}

/* COMUNICATE / BLOG CARDS */
#comunicate-presa,#declaratii-presa{background:var(--bg2);border-top:1px solid var(--border)}
#comunicate-presa .inner,#declaratii-presa .inner{max-width:1200px;margin:0 auto;padding:6rem 4rem}
.comunicate-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:1.2rem;margin-top:2.5rem;
}
.comunicat-card{
  background:#fff;border:1px solid var(--border);border-radius:4px;
  padding:1.8rem;text-decoration:none;color:inherit;display:block;
  transition:all 0.3s;
}
.comunicat-card:hover{
  border-color:var(--navy);transform:translateY(-3px);
  box-shadow:0 8px 24px rgba(13,36,97,0.1);
}
.c-date{
  font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;
  color:var(--red);font-weight:500;margin-bottom:0.7rem;
}
.comunicat-card h3{
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem;font-weight:600;line-height:1.4;
  margin-bottom:0.7rem;color:var(--navy);
}
.comunicat-card p{font-size:0.83rem;color:var(--gray);line-height:1.6}
.c-read{
  font-size:0.72rem;color:var(--navy);letter-spacing:0.1em;
  text-transform:uppercase;font-weight:500;margin-top:1rem;display:inline-block;
}
.comunicat-card:hover .c-read{color:var(--red)}

/* CTA BAND */
#cta-band{
  background:var(--navy);
  padding:5rem 4rem;text-align:center;
}
#cta-band h2{color:#fff;margin-bottom:0.6rem}
#cta-band p{color:rgba(255,255,255,0.6);margin-bottom:2.5rem;font-size:1rem}
.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btn-white{
  background:#fff;color:var(--navy);border:none;cursor:pointer;
  padding:0.9rem 2rem;font-family:'DM Sans',sans-serif;
  font-size:0.82rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;transition:all 0.2s;
  box-shadow:0 4px 16px rgba(0,0,0,0.2);
}
.btn-white:hover{background:var(--bg2);transform:translateY(-2px)}
.btn-outline-white{
  background:transparent;border:2px solid rgba(255,255,255,0.4);color:#fff;
  cursor:pointer;padding:0.85rem 2rem;font-family:'DM Sans',sans-serif;
  font-size:0.82rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  text-decoration:none;border-radius:3px;transition:all 0.2s;
}
.btn-outline-white:hover{border-color:#fff;background:rgba(255,255,255,0.1)}

/* CONTACT */
#contact .inner{
  max-width:1200px;margin:0 auto;padding:6rem 4rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.contact-info h3{
  font-family:'Cormorant Garamond',serif;
  font-size:1.8rem;font-weight:700;margin-bottom:1.8rem;color:var(--navy);
}
.contact-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.c-icon{
  width:38px;height:38px;background:var(--bg2);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;flex-shrink:0;
}
.c-detail p:first-child{
  font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--red);font-weight:500;margin-bottom:0.2rem;
}
.c-detail p:last-child{color:var(--gray);font-size:0.93rem}
.c-detail a{color:var(--navy);text-decoration:none;font-weight:400}
.c-detail a:hover{color:var(--red)}
.contact-form{background:#fff;border:1px solid var(--border);border-radius:6px;padding:2.5rem;box-shadow:0 4px 24px rgba(13,36,97,0.07)}
.form-group{margin-bottom:1.1rem}
.form-group label{
  font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--navy);font-weight:500;display:block;margin-bottom:0.4rem;
}
.form-group input,
.form-group textarea{
  width:100%;background:var(--bg);
  border:1px solid var(--border);border-radius:3px;
  color:var(--navy);font-family:'DM Sans',sans-serif;font-size:0.9rem;
  padding:0.75rem 1rem;outline:none;transition:border-color 0.2s;
}
.form-group input:focus,
.form-group textarea:focus{border-color:var(--navy)}
.form-group textarea{height:110px;resize:vertical}

/* FOOTER */
footer{
  background:var(--navy);
  border-top:3px solid var(--red);
  padding:2rem 4rem;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;
}
.footer-logo img{height:44px;display:block}
.footer-links{display:flex;gap:1.5rem}
.footer-links a{
  font-size:0.75rem;color:rgba(255,255,255,0.5);
  text-decoration:none;letter-spacing:0.06em;transition:color 0.2s;
}
.footer-links a:hover{color:#fff}
.footer-social{display:flex;gap:1rem;align-items:center}
.footer-social a{
  color:rgba(255,255,255,0.5);
  transition:color 0.2s;
}
.footer-social a:hover{color:#fff}
.footer-icon{width:22px;height:22px;display:block}
footer .copy{font-size:0.73rem;color:rgba(255,255,255,0.35)}

/* SINGLE POST PAGE */
.post-header{max-width:720px;margin:0 auto;padding:7rem 4rem 2rem;text-align:center}
.post-header .c-date{margin-bottom:0.5rem}
.post-header h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}
.post-body{
  max-width:720px;margin:0 auto;padding:0 4rem 6rem;
  font-size:1rem;line-height:1.85;color:var(--gray);
}
.post-body p{margin-bottom:1.2rem}
.post-body a{color:var(--red);text-decoration:none}
.post-body a:hover{text-decoration:underline}
.back-link{
  display:inline-flex;align-items:center;gap:0.5rem;
  color:var(--navy);text-decoration:none;font-size:0.85rem;font-weight:500;
  margin-bottom:2rem;
}
.back-link:hover{color:var(--red)}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:0.8rem 1.5rem}
  .nav-links{display:none}
  #hero{grid-template-columns:1fr;padding:6rem 1.5rem 3rem;gap:2rem}
  .hero-right{
    order:-1;justify-content:center;margin-bottom:0.5rem;
    display:flex !important;visibility:visible !important;opacity:1 !important;
  }
  .photo-wrap{width:280px;margin:0 auto;display:block !important;visibility:visible !important}
  .photo-wrap img{height:340px;display:block !important;visibility:visible !important;opacity:1 !important}
  #stats{grid-template-columns:repeat(2,1fr);padding:1.5rem}
  #about .inner,#activitate .inner,#dreptate .inner,
  #comunicate-presa .inner,#declaratii-presa .inner,#contact .inner{padding:4rem 1.5rem}
  #about .inner,#contact .inner{grid-template-columns:1fr}
  .dreptate-grid{grid-template-columns:1fr}
  #cta-band{padding:3rem 1.5rem}
  footer{padding:1.5rem;flex-direction:column;text-align:center}
  .footer-links{flex-wrap:wrap;justify-content:center}
  .footer-social{justify-content:center}
  .post-header,.post-body{padding-left:1.5rem;padding-right:1.5rem}
}

.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease}
.revealed{opacity:1;transform:translateY(0)}
