
:root{
  --bg1:#12243d; --bg2:#0c1730; --side:#2b4461; --side2:#213651;
  --panel:#314b68; --panel2:#2b425d; --accent:#d79218; --accent2:#b87400;
  --text:#eef5ff; --muted:#d9e4f0; --shadow:0 14px 30px rgba(0,0,0,.32);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Arial,Helvetica,sans-serif;
  background:
    radial-gradient(circle at top right, rgba(244,166,42,.16), transparent 22%),
    radial-gradient(circle at bottom left, rgba(79,125,187,.12), transparent 26%),
    linear-gradient(135deg,var(--bg1),var(--bg2));
  color:var(--text);
  min-height:100vh;
}
.site-layout{display:grid;grid-template-columns:210px 1fr;min-height:100vh}
.sidebar{
  background:linear-gradient(180deg,var(--side),var(--side2));
  padding:18px 12px;
  box-shadow:var(--shadow);
}
.brand{
  text-align:center;
  color:#ffd89a;
  font-weight:800;
  font-size:20px;
  line-height:1.15;
  margin-bottom:18px;
}
.menu-stack{display:flex;flex-direction:column;gap:10px}
.menu-link{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:50px;
  padding:10px 14px;
  border-radius:16px;
  text-decoration:none;
  color:#fff8e7;
  font-weight:700;
  background:linear-gradient(180deg,#efb13a,var(--accent));
  box-shadow:0 4px 0 #8c5600, inset 0 1px 0 rgba(255,255,255,.2), var(--shadow);
}
.menu-link.active{outline:2px solid rgba(255,255,255,.18)}
.menu-icon{
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.18);
  font-size:18px;
}
.menu-accent{position:absolute;right:12px;width:24px;height:24px;border-radius:6px;background:rgba(124,70,0,.20)}
.page-wrap{padding:24px 24px 28px}
.page-shell{
  background:linear-gradient(180deg,#314b68,#253d59);
  border-radius:0 0 28px 28px;
  box-shadow:var(--shadow);
  padding:22px;
}
.intro-board{
  background:linear-gradient(180deg,#3a5472,#314a68);
  color:#eef5ff;
  border-radius:2px;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
  max-width:1120px;
  min-height:140px;
  margin:0 auto;
  padding:18px 22px;
  font-family:Georgia,"Times New Roman",serif;
}
.intro-board h1{margin:0 0 10px;text-align:center;font-size:21px;color:#ffffff}
.intro-board ul{margin:8px 0 0 28px;font-size:17px;line-height:1.45;color:#ffffff}
.services-shell{
  margin-top:18px;
  background:linear-gradient(180deg,#243b57,#1f3550);
  border-radius:0 0 28px 28px;
  box-shadow:var(--shadow);
  padding:18px 18px 22px;
}
.cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-card{
  background:linear-gradient(180deg,#354e6c,#2d4461);
  border-radius:20px;
  box-shadow:var(--shadow);
  padding:18px 18px 20px;
  min-height:360px;
}
.service-top{
  width:68px;height:78px;margin:0 auto 12px;border-radius:18px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#efb13a,var(--accent));
  box-shadow:0 5px 0 #8c5600, var(--shadow);
  font-size:32px;
}
.service-card h3{margin:8px 0 12px;text-align:center;color:#ffd18f;font-size:28px}
.service-card p{margin:0 0 12px;text-align:center;line-height:1.55}
.service-card ul{margin:0;padding-left:18px;line-height:1.55;color:var(--muted)}
.service-card li{margin-bottom:8px}
.fake-bar{width:35%;height:42px;margin:8px auto 0;border-radius:2px;background:#2f4662;opacity:.8}
.standard-shell{
  background:linear-gradient(180deg,#314b68,#253d59);
  border-radius:28px;
  box-shadow:var(--shadow);
  padding:24px;
  min-height:calc(100vh - 48px);
}
.page-title{margin:0 0 14px 0;color:#ffd18f;text-align:center}
.lead{color:var(--muted);line-height:1.6}
.btn{
  border:none;border-radius:12px;color:#fff;font-weight:700;cursor:pointer;
  background:linear-gradient(180deg,#4f7dbb,#355b8f);
  box-shadow:0 4px 0 #27466f,var(--shadow);
}
.form-input{
  width:100%;height:42px;padding:0 12px;border:none;border-radius:12px;
  background:linear-gradient(180deg,#e7edf5,#ccd7e4);color:#111827;
  box-shadow:inset 0 2px 5px rgba(0,0,0,.15);
}
.card{
  background:linear-gradient(180deg,#2e4663,#273d59);
  border-radius:18px;padding:18px;box-shadow:var(--shadow);
}
.contact-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}
.contact-form{display:grid;gap:12px}
.contact-form textarea{
  width:100%;min-height:160px;padding:12px;border:none;border-radius:12px;
  background:linear-gradient(180deg,#e7edf5,#ccd7e4);color:#111827;
  box-shadow:inset 0 2px 5px rgba(0,0,0,.15);resize:vertical;font-family:Arial,Helvetica,sans-serif
}
.info-list{display:grid;gap:12px}
.info-item{background:rgba(255,255,255,.05);padding:12px;border-radius:12px}
.info-item strong{color:#ffd89a}
.map-frame{width:100%;height:280px;border:none;border-radius:16px;background:#fff;box-shadow:var(--shadow)}
/* informatii */
.info-layout{display:grid;grid-template-columns:390px 1fr;min-height:calc(100vh - 48px);gap:18px}
.info-sidebar{display:grid;gap:14px}
.info-box,.chat-shell,.answer-shell{background:linear-gradient(180deg,#213247,#1c2c3e);border-radius:16px;padding:12px;box-shadow:var(--shadow)}
.search-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.search-results{margin-top:10px;max-height:210px;overflow:auto}
.result-item{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.06);margin-bottom:8px;cursor:pointer}
.result-item strong{color:#ffd18a}
.chat-shell{display:flex;flex-direction:column;height:430px}
.chat-messages{flex:1;overflow:auto;padding:4px}
.msg{margin-bottom:12px;padding:10px 12px;border-radius:12px;line-height:1.35}
.msg.user{background:#43566e}
.msg.ai{background:#2f445d}
.chat-controls{display:grid;grid-template-columns:1fr 52px 52px;gap:10px;margin-top:10px}
.robot-wrap{text-align:center;padding-top:6px}
.robot{font-size:80px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.25))}
.answer-shell{min-height:calc(100vh - 96px)}
.answer-content{background:rgba(255,255,255,.04);border-radius:14px;padding:18px;min-height:250px;line-height:1.6}
.sources{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14)}
.sources h4{margin:0 0 10px 0;color:#ffd18a}
.source-item{margin-bottom:10px}
.answer-content a{color:#ffd18a}
.map-box{margin-top:16px}
.map-box iframe{width:100%;height:300px;border:none;border-radius:14px;background:#fff}
/* portal tweaks */
.layout{display:grid;grid-template-columns:210px 1fr;min-height:100vh}
.content{padding:24px 24px 28px}
.box,.stat-card{background:linear-gradient(180deg,#314b68,#2b425d)}
.title{color:#ffd18f}
@media (max-width:1180px){
  .cards-row,.contact-grid,.info-layout{grid-template-columns:1fr}
  .service-card{min-height:auto}
}
@media (max-width:860px){
  .site-layout,.layout{grid-template-columns:1fr}
  .page-wrap,.content{padding:18px}
}

.contact-line{display:flex;align-items:flex-start;gap:12px}
.contact-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#efb13a,#d79218);box-shadow:0 4px 0 #8c5600, 0 8px 18px rgba(0,0,0,.22);font-size:20px;flex:0 0 40px}
.contact-line-text{line-height:1.5}
