:root{--navy:#29235c;--blue:#008fd5;--lime:#a8cf16;--ink:#182042;--muted:#65708a;--line:#e7eaf2;--soft:#f5f7fb;--white:#fff;--shadow:0 12px 35px rgba(20,32,66,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,92vw);margin:auto}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;gap:28px}.logo{width:235px;max-height:58px;object-fit:contain;object-position:left center}.menu{display:flex;gap:24px;margin-left:auto;align-items:center;font-size:14px;font-weight:700;color:#2f3765}.menu a{padding:28px 0 24px;border-bottom:3px solid transparent}.menu a:hover,.menu a.active{color:var(--blue);border-color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--navy);color:#fff;border-radius:999px;padding:14px 22px;font-weight:800;border:1px solid var(--navy);transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(41,35,92,.2)}.btn.ghost{background:transparent;border-color:#fff}.btn.lime{background:var(--lime);border-color:var(--lime);color:#17203d}.mobile-toggle{display:none;margin-left:auto;border:0;background:none;font-size:26px}.hero{position:relative;min-height:520px;display:grid;align-items:center;color:#fff;overflow:hidden;background:linear-gradient(90deg,rgba(4,17,49,.92),rgba(8,30,62,.35)),url('assets/reboiras.jpg') center/cover}.hero .wrap{position:relative}.hero-copy{max-width:610px;padding:70px 0}.eyebrow{font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--lime)}h1{font-size:clamp(44px,6vw,78px);line-height:.96;margin:8px 0 20px;letter-spacing:-.04em}h2{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:0 0 18px;letter-spacing:-.03em}h3{font-size:22px;margin:0 0 8px}.lead{font-size:20px;max-width:780px}.accent{color:var(--lime)}.section{padding:72px 0}.section.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.kicker{color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.grid{display:grid;gap:22px}.grid.cards{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.card img{width:100%;height:245px;object-fit:cover}.card-body{padding:20px}.meta{font-size:13px;color:var(--blue);font-weight:800;text-transform:uppercase}.card p{color:var(--muted)}.services{grid-template-columns:repeat(5,1fr)}.service{min-height:200px;padding:24px;border-radius:16px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,var(--navy),#3d367d)}.service:nth-child(2){background:linear-gradient(145deg,#0079bd,#18a7db)}.service:nth-child(3){background:linear-gradient(145deg,#6aa91d,var(--lime));color:#17203d}.service:nth-child(4){background:linear-gradient(145deg,#008b94,#19b6ac)}.service:nth-child(5){background:linear-gradient(145deg,#42328a,#6c58bd)}.icon{font-size:34px;margin-bottom:auto}.feature-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.feature{text-align:center;padding:18px}.feature b{display:block;color:var(--navy);margin-top:8px}.split{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.split img{border-radius:22px;box-shadow:var(--shadow)}.band{padding:44px 0;background:linear-gradient(90deg,#101b46,#20366f);color:#fff}.band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer{background:#fff;border-top:1px solid var(--line);padding:38px 0 0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;align-items:start}.footer small{color:var(--muted)}.legal{margin-top:30px;background:#172450;color:#fff;padding:14px 0;font-size:13px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.filter{border:1px solid var(--line);background:#f7f8fc;padding:9px 14px;border-radius:999px;font-weight:800;cursor:pointer}.filter.active{background:var(--navy);color:#fff}.project-grid{grid-template-columns:repeat(3,1fr)}.project-card{transition:.2s}.project-card:hover{transform:translateY(-4px)}.project-card img{height:280px}.hero-small{padding:90px 0 70px;color:#fff;background:linear-gradient(90deg,rgba(12,26,72,.94),rgba(12,26,72,.62)),url('assets/dossier-06.jpg') center/cover}.page-title{font-size:clamp(44px,6vw,72px);margin:0}.article-grid{grid-template-columns:repeat(3,1fr)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.contact-card{padding:30px;background:var(--soft);border-radius:18px}.form{display:grid;gap:14px}.form input,.form textarea,.form select{width:100%;padding:14px 16px;border:1px solid #dfe3ee;border-radius:10px;font:inherit}.form textarea{min-height:150px;resize:vertical}.notice{display:none;margin-top:12px;padding:12px;border-radius:10px;background:#eaf7ee;color:#246b34}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.gallery img{width:100%;height:250px;object-fit:cover;border-radius:12px}.gallery img:first-child{grid-row:span 2;height:512px}.tag{display:inline-block;padding:7px 10px;border-radius:999px;background:#eef2f8;color:#2e3b66;font-size:12px;font-weight:800;margin:4px}.quote{font-size:30px;font-weight:900;color:var(--navy)}
@media(max-width:900px){.menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 5vw;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.menu a{padding:8px 0}.mobile-toggle{display:block}.nav>.btn{display:none}.grid.cards,.project-grid,.article-grid{grid-template-columns:repeat(2,1fr)}.services{grid-template-columns:repeat(2,1fr)}.feature-row{grid-template-columns:repeat(2,1fr)}.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.band .wrap{display:block}.band .btn{margin-top:18px}.hero{min-height:460px}.gallery{grid-template-columns:1fr 1fr}.gallery img:first-child{grid-column:span 2;height:380px;grid-row:auto}}
@media(max-width:600px){.logo{width:190px}.grid.cards,.project-grid,.article-grid,.services,.feature-row{grid-template-columns:1fr}.section{padding:54px 0}.hero-copy{padding:60px 0}.gallery{grid-template-columns:1fr}.gallery img:first-child{grid-column:auto;height:300px}.gallery img{height:220px}.section-head{align-items:start;flex-direction:column}}
