:root{--ink:#0b2238;--blue:#176fa9;--cyan:#6ac3e7;--pale:#edf3f6;--line:#bccbd4;--muted:#5e7483;--green:#2b775f;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
p,h1,h2,h3{margin-top:0}
button,a,summary{touch-action:manipulation}
address{font-style:normal}
[id]{scroll-margin-top:92px}
:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.skip-link{position:fixed;left:20px;top:-80px;z-index:100;background:#fff;color:var(--ink);padding:12px 16px;font-size:13px;font-weight:700;box-shadow:0 8px 30px #0003;transition:top .2s}
.skip-link:focus{top:16px}

.site-header{position:sticky;top:0;z-index:40;height:82px;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff1f}
.header-inner{height:100%;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1720px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand>span{width:40px;height:40px;border:1px solid #829daf;display:grid;place-items:center;font:10px/1 monospace}
.brand strong{font-size:12px;letter-spacing:.06em}
.brand small{display:block;margin-top:4px;color:#91a9ba;font-size:6px;letter-spacing:.17em}
.main-nav{display:flex;align-items:center;gap:30px;font-size:9px}
.main-nav a{padding:10px 0;color:#c8d4dc;transition:color .2s}
.main-nav a:hover{color:#fff}
.header-phone{display:flex;align-items:flex-end;gap:10px;min-width:max-content}
.header-phone span{color:#8da7b8;font-size:6px;letter-spacing:.13em}
.header-phone b{font-size:10px;letter-spacing:.04em}

.hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;background:#fff}
.hero-copy{padding:88px 5vw 62px;display:flex;flex-direction:column}
.eyebrow{font-size:8px;line-height:1.4;letter-spacing:.18em;font-weight:700;color:#58778b;margin-bottom:0}
.hero h1{font:600 clamp(52px,5.4vw,80px)/.97 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:30px 0 28px;max-width:760px}
.hero h1 em{font-style:normal;color:var(--blue)}
.hero-lead{font:17px/1.75 Georgia,serif;color:#536c7b;max-width:630px;margin-bottom:0}
.hero-actions{display:flex;gap:12px;margin-top:36px}
.button{min-height:48px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);font-size:9px;font-weight:700;letter-spacing:.03em;transition:transform .2s,background .2s,color .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--ink);color:#fff}
.button-primary span{margin-left:24px}
.button-secondary:hover{background:var(--pale)}
.systems-key{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);display:grid;grid-template-columns:76px repeat(3,auto);gap:16px;align-items:center}
.systems-key b{font:34px Georgia,serif;color:var(--blue)}
.systems-key span{font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.hero-visual{position:relative;min-width:0;background:url('/assets/hero-instalatii-constructii.webp') 62% center/cover no-repeat}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff14,transparent 42%)}
.hero-visual>span{position:absolute;right:25px;bottom:24px;z-index:2;padding:11px 13px;background:#0b2238e8;color:#fff;font-size:7px;letter-spacing:.13em}

.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);color:#fff}
.proof-strip>div{padding:26px 5vw;border-right:1px solid #ffffff2f;display:flex;align-items:center;gap:15px}
.proof-strip b{color:var(--cyan);font:24px Georgia,serif;white-space:nowrap}
.proof-strip span{max-width:190px;font-size:9px;line-height:1.45;letter-spacing:.04em;color:#d3dee5}

.section{padding:108px 7vw}
.section-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:end;margin-bottom:65px}
.section h2{font:50px/1.05 Georgia,serif;letter-spacing:-.025em;margin:24px 0 0}
.section-intro>p,.section-heading>p:last-child,.process-copy>p:last-child{font:14px/1.8 Georgia,serif;color:#617785;max-width:620px;margin:0}
.specialty-list{border-top:1px solid #9eb1bc}
.specialty-list article{display:grid;grid-template-columns:52px 1fr auto;gap:24px;padding:25px 5px;border-bottom:1px solid #9eb1bc;align-items:center}
.specialty-list small{font:18px Georgia,serif;color:var(--blue)}
.specialty-list h3{font-size:13px;letter-spacing:.055em;margin:0 0 7px;text-transform:uppercase}
.specialty-list p{font-size:11px;line-height:1.55;color:#687e8d;margin:0}
.specialty-list article>b{font-size:7px;letter-spacing:.12em;color:var(--green)}

.benefits{background:var(--pale)}
.section-heading{display:grid;grid-template-columns:.52fr 1.1fr .9fr;gap:5vw;align-items:start;margin-bottom:60px}
.section-heading h2{margin:0}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.benefit-grid article{min-height:285px;padding:31px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.benefit-grid article>span{font:24px Georgia,serif;color:var(--blue)}
.benefit-grid h3{font:24px/1.15 Georgia,serif;margin:45px 0 14px}
.benefit-grid p{font-size:12px;line-height:1.75;color:#667b88;margin:0}

.process-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;background:#fff}
.process-copy{align-self:start;position:sticky;top:130px}
.process-copy h2{margin:25px 0}
.process-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.process-list li{position:relative;padding:24px 94px 24px 5px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:74px 1fr;gap:20px;align-items:start}
.process-list li>span{grid-row:1/3;color:var(--blue);font-size:7px;font-weight:700;letter-spacing:.12em;padding-top:7px}
.process-list h3{font:19px Georgia,serif;margin:0 0 8px}
.process-list p{font-size:11px;line-height:1.65;color:#687d8a;margin:0}
.process-list li>b{position:absolute;right:5px;top:30px;color:var(--green);font-size:7px;letter-spacing:.12em}

.building-section{background:var(--ink);color:#fff}
.building-section .eyebrow{color:#88a8ba}
.section-heading.compact{grid-template-columns:.52fr 1.48fr;margin-bottom:55px}
.building-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff2f;border-left:1px solid #ffffff2f}
.building-grid article{min-height:230px;padding:28px;border-right:1px solid #ffffff2f;border-bottom:1px solid #ffffff2f}
.building-grid span{color:var(--cyan);font:20px Georgia,serif}
.building-grid h3{font:23px Georgia,serif;margin:45px 0 12px}
.building-grid p{color:#a9bdc9;font-size:11px;line-height:1.65;margin:0}

.faq-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw}
.faq-section>header{align-self:start;position:sticky;top:130px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;padding:25px 5px;display:flex;justify-content:space-between;gap:28px;font:18px/1.3 Georgia,serif}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{color:var(--blue);font:24px Arial;transition:transform .2s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{padding:0 55px 25px 5px;margin:0;color:#617784;font-size:12px;line-height:1.75}

.contact-section{padding:95px 7vw;background:var(--blue);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;align-items:center}
.contact-section .eyebrow{color:#b6def1}
.contact-main h2{font:54px/1.03 Georgia,serif;margin:24px 0}
.contact-main>p:last-of-type{max-width:600px;font:14px/1.75 Georgia,serif;color:#d7e9f2}
.contact-buttons{display:flex;gap:12px;margin-top:35px}
.contact-buttons a{min-width:190px;padding:17px 19px;border:1px solid #ffffff80;display:flex;flex-direction:column;gap:7px;transition:background .2s,color .2s}
.contact-buttons a:first-child{background:#fff;color:var(--ink)}
.contact-buttons a:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.contact-buttons small{font-size:6px;letter-spacing:.14em}
.contact-buttons b{font-size:15px}
.contact-card{padding:38px;background:#0b2238d9;border:1px solid #ffffff30}
.contact-card>p{font-size:7px;letter-spacing:.16em;color:#98b6c8}
.contact-card h3{font:25px Georgia,serif;margin:18px 0 24px}
.contact-card ol{margin:0;padding:0;list-style:none;counter-reset:contact}
.contact-card li{counter-increment:contact;padding:13px 0;border-top:1px solid #ffffff28;font-size:11px}
.contact-card li:before{content:"0" counter(contact);color:var(--cyan);margin-right:16px;font:14px Georgia,serif}
.contact-card address{margin-top:24px;padding-top:20px;border-top:1px solid #ffffff28;color:#b9cdd8;font-size:10px;line-height:1.7}

.site-footer{padding:31px 5vw;background:#071927;color:#9fb1bc;display:grid;grid-template-columns:1fr 1.3fr auto;gap:35px;align-items:center;font-size:8px;line-height:1.6}
.site-footer>div{display:flex;flex-direction:column}
.site-footer b{color:#fff;font-size:10px;letter-spacing:.04em}
.site-footer nav{display:flex;gap:20px;color:#d8e1e7;font-weight:700}
.site-footer nav a:hover{color:#fff}

.not-found{min-height:100vh;background:var(--ink);color:#fff;display:grid;place-items:center;padding:30px;text-align:center}
.not-found div{max-width:650px}
.not-found span{font:74px Georgia,serif;color:var(--cyan)}
.not-found h1{font:46px Georgia,serif;margin:20px 0}
.not-found p{color:#b8cad4;line-height:1.7}
.not-found a{display:inline-flex;margin-top:20px;padding:16px 20px;background:#fff;color:var(--ink);font-size:10px;font-weight:700}

@media(max-width:1000px){
  .main-nav{display:none}
  .hero{grid-template-columns:1fr}
  .hero-visual{min-height:570px;background-position:58% center}
  .systems-key{margin-top:55px}
  .section-intro,.section-heading,.process-section,.faq-section{grid-template-columns:1fr}
  .section-heading{gap:25px}
  .process-copy,.faq-section>header{position:static}
  .benefit-grid{grid-template-columns:1fr}
  .benefit-grid article{min-height:230px}
  .building-grid{grid-template-columns:repeat(2,1fr)}
  .contact-section{grid-template-columns:1fr;gap:55px}
  .site-footer{grid-template-columns:1fr 1fr}
  .site-footer nav{grid-column:1/3}
}

@media(max-width:650px){
  [id]{scroll-margin-top:72px}
  .site-header{height:72px}
  .header-inner{padding:0 20px;gap:12px}
  .brand>span{width:36px;height:36px}
  .brand strong{font-size:11px}
  .header-phone span{display:none}
  .header-phone b{font-size:8px}
  .hero-copy{padding:62px 24px 50px}
  .hero h1{font-size:47px;margin:25px 0}
  .hero-lead{font-size:15px}
  .hero-actions{flex-direction:column}
  .button{width:100%}
  .systems-key{grid-template-columns:58px 1fr 1fr;gap:9px}
  .systems-key span:last-child{grid-column:2}
  .hero-visual{min-height:430px;background-position:61% center}
  .hero-visual>span{right:14px;bottom:14px;max-width:80%;font-size:6px}
  .proof-strip{grid-template-columns:1fr}
  .proof-strip>div{padding:20px 24px;border-right:0;border-bottom:1px solid #ffffff25}
  .proof-strip b{min-width:105px;font-size:21px}
  .section{padding:76px 24px}
  .section h2{font-size:41px}
  .section-intro{gap:28px;margin-bottom:45px}
  .specialty-list article{grid-template-columns:36px 1fr;padding:22px 2px}
  .specialty-list article>b{grid-column:2}
  .section-heading.compact{grid-template-columns:1fr}
  .benefit-grid article{padding:27px;min-height:215px}
  .benefit-grid h3{margin-top:34px}
  .process-section{gap:45px}
  .process-list li{padding:22px 2px 22px 0;grid-template-columns:58px 1fr}
  .process-list li>b{position:static;grid-column:2;margin-top:3px}
  .building-grid{grid-template-columns:1fr}
  .building-grid article{min-height:190px}
  .faq-section{gap:42px}
  .faq-list summary{font-size:17px}
  .contact-section{padding:75px 24px}
  .contact-main h2{font-size:43px}
  .contact-buttons{flex-direction:column}
  .contact-buttons a{width:100%}
  .contact-card{padding:30px 25px}
  .site-footer{padding:30px 24px;grid-template-columns:1fr;gap:20px}
  .site-footer nav{grid-column:1;flex-wrap:wrap}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
