*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

:root{
--navy:#0B1D3A;
--navy-dark:#08111F;
--orange:#FF7A00;
--white:#ffffff;
--light:#F4F6F8;
}

body{
font-family:Arial,Helvetica,sans-serif;
background:#fff;
color:#222;
line-height:1.7;
}

img{
max-width:100%;
display:block;
}

/* HEADER */

header{

position:fixed;
top:0;
left:0;
width:100%;

padding:14px 5%;

z-index:999;

background:linear-gradient(
200deg,
rgba(0,0,0,.55),
rgba(0,0,0,.15)
);

backdrop-filter:blur(10px);

}

nav{

display:flex;
justify-content:space-between;
align-items:center;

}

.logo img{

width:auto;
height:48px;
display:block;

}

nav ul{

display:flex;
gap:22px;
list-style:none;
align-items:center;

}

nav ul li a{

text-decoration:none;
color:white;
font-weight:600;
font-size:15px;
white-space:nowrap;

}

nav ul li a:hover{

color:var(--orange);

}

.hamburger{

display:none;
flex-direction:column;
gap:5px;
background:none;
border:none;
cursor:pointer;
padding:10px;

}

.hamburger span{

width:26px;
height:3px;
background:white;
border-radius:2px;

}

/* HERO */

.hero{

min-height:100vh;

background:

linear-gradient(
rgba(5,10,20,.70),
rgba(5,10,20,.70)
),

url("/assets/hero-vlcc.jpg");

background-image:

linear-gradient(
rgba(5,10,20,.70),
rgba(5,10,20,.70)
),

image-set(
url("/assets/hero-vlcc.webp") type("image/webp"),
url("/assets/hero-vlcc.jpg") type("image/jpeg")
);

background-size:cover;
background-position:center;
background-repeat:no-repeat;

display:flex;
align-items:center;

padding-left:8%;
padding-right:8%;
padding-top:140px;
padding-bottom:60px;

color:white;

}

.hero-content{

max-width:760px;

}

.hero-tag{

color:var(--orange);
font-size:15px;
font-weight:bold;
letter-spacing:3px;
margin-bottom:16px;

}

.hero h1{

font-size:clamp(42px, 4.2vw, 58px);
line-height:1.05;
margin-bottom:22px;

}

.hero-sub{

font-size:19px;
max-width:750px;
margin-bottom:30px;
color:#E7ECF5;

}

.hero-footer-line{

font-size:15px;
letter-spacing:1px;
color:#B9C3D6;
margin-top:40px;
text-transform:uppercase;

}

.btn{

display:inline-block;

padding:15px 35px;

background:var(--orange);

color:white;

text-decoration:none;

border-radius:8px;

font-weight:bold;

margin-right:15px;
margin-bottom:15px;

}

.btn-outline{

background:transparent;
border:2px solid white;

}

/* SECTIONS */

section{

padding:100px 8%;

}

.eyebrow{

color:var(--orange);
font-weight:bold;
letter-spacing:2px;
font-size:15px;
margin-bottom:12px;
text-transform:uppercase;

}

.section-title{

font-size:clamp(32px, 2.6vw, 38px);
margin-bottom:25px;
color:var(--navy);
line-height:1.15;

}

.section-text{

font-size:17px;
max-width:760px;
margin-bottom:20px;

}

.section-text:last-child{

margin-bottom:0;

}

.divider{

height:1px;
background:#e3e6ea;
margin:70px 0;

}

/* BUSINESS MODEL */

.business-model{

background:#fafafa;

}

.discipline-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:35px;
margin-top:50px;

}

.discipline-card{

background:white;
border-radius:15px;
padding:40px 35px;
box-shadow:0 15px 30px rgba(0,0,0,.08);
border-top:4px solid var(--orange);

}

.discipline-number{

font-size:32px;
font-weight:bold;
color:var(--orange);
margin-bottom:15px;

}

.discipline-card h3{

color:var(--navy);
font-size:20px;
margin-bottom:15px;

}

/* PRODUCTS */

.products{

background:#fff;

}

.product-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
margin-top:50px;

}

.product-tile{

border-radius:15px;
overflow:hidden;
box-shadow:0 15px 30px rgba(0,0,0,.08);
background:white;

}

.product-tile img{

width:100%;
height:200px;
object-fit:cover;

}

.product-tile-label{

margin:0;
padding:20px;
font-weight:bold;
color:var(--navy);
font-size:17px;

}

/* INDUSTRIES */

.industries{

background:#fafafa;

}

.industry-list{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:20px;
margin-top:50px;
list-style:none;

}

.industry-list li{

background:white;
padding:22px 28px;
border-radius:10px;
box-shadow:0 8px 20px rgba(0,0,0,.06);
font-size:16px;
font-weight:600;
color:var(--navy);
border-left:4px solid var(--orange);

}

/* WHY BRONCI */

.why-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
margin-top:50px;

}

.why-card h3{

color:var(--navy);
font-size:19px;
margin-bottom:12px;

}

.why-card{

background:white;
padding:32px;
border-radius:15px;
box-shadow:0 15px 30px rgba(0,0,0,.08);

}

.why-card p{

font-size:16px;
color:#444;

}

/* MARKETS */

.markets{

background:var(--navy);
color:white;

}

.markets .section-title{

color:white;

}

.markets .eyebrow{

color:var(--orange);

}

.market-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:25px;
margin-top:40px;

}

.market-box{

background:rgba(255,255,255,.08);

padding:30px;

border-radius:12px;

}

.market-box h3{

color:var(--orange);
margin-bottom:12px;
font-size:18px;

}

.market-box p{

font-size:16px;
color:#DCE3EE;

}

/* CONTACT */

.contact{

background:#f6f7f9;

}

.contact-grid{

display:grid;
grid-template-columns:1.1fr .9fr;
gap:40px;
margin-top:50px;

}

.contact-box{

background:white;

padding:40px;

border-radius:15px;

box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.contact-row{

display:flex;
flex-wrap:wrap;
gap:4px 8px;
padding:14px 0;
border-bottom:1px solid #eee;
font-size:16px;

}

.contact-row:last-child{

border-bottom:none;

}

.contact-row .label{

flex:0 0 auto;

}

.contact-row > div:last-child{

flex:1 1 220px;
min-width:0;
overflow-wrap:break-word;

}

.contact-row .label{

min-width:150px;
font-weight:bold;
color:var(--navy);

}

.contact-cta{

background:var(--navy);
color:white;
border-radius:15px;
padding:40px;
display:flex;
flex-direction:column;
gap:18px;
}

.contact-cta h3{

font-size:22px;
margin-bottom:5px;

}

.contact-cta p{

color:#C9D2E0;
font-size:16px;
}

.mailto-btn{

display:block;
text-align:center;
background:var(--orange);
color:white;
text-decoration:none;
font-weight:bold;
padding:16px 20px;
border-radius:8px;
}

.mailto-btn.outline{

background:transparent;
border:2px solid rgba(255,255,255,.5);
}

.contact-form label{

display:block;
font-size:13px;
letter-spacing:.05em;
text-transform:uppercase;
color:#B9C3D6;
margin-bottom:16px;

}

.contact-form input,
.contact-form textarea{

display:block;
width:100%;
margin-top:8px;
padding:13px 14px;
border-radius:8px;
border:1px solid rgba(255,255,255,.25);
background:rgba(255,255,255,.06);
color:white;
font-family:inherit;
font-size:15px;

}

.contact-form input::placeholder,
.contact-form textarea::placeholder{

color:#7A86A0;

}

.contact-form textarea{

resize:vertical;
min-height:110px;

}

.contact-form input:focus,
.contact-form textarea:focus{

outline:none;
border-color:var(--orange);

}

.contact-form button{

width:100%;
border:none;
cursor:pointer;
font-family:inherit;

}

.contact-alt{

margin-top:22px;
padding-top:22px;
border-top:1px solid rgba(255,255,255,.15);
font-size:14px;
color:#B9C3D6;

}

.contact-alt a{

color:white;

}

.form-status{

padding:14px 16px;
border-radius:8px;
font-size:15px;
margin-bottom:18px;

}

.form-status.ok{

background:rgba(46,160,67,.18);
border:1px solid rgba(46,160,67,.6);
color:#DFF5E3;

}

.form-status.error{

background:rgba(255,122,0,.15);
border:1px solid rgba(255,122,0,.6);
color:#FFE3CC;

}

.form-status a{

color:white;

}

.hp-field{

position:absolute;
left:-10000px;
width:1px;
height:1px;
overflow:hidden;

}

/* FOOTER */

footer{

background:var(--navy-dark);

color:white;

text-align:center;

padding:60px 20px;

}

footer img{

width:auto;
height:44px;
margin:0 auto 20px;

}

footer p{

font-size:15px;
color:#C9D2E0;
margin-bottom:6px;

}

footer .footer-links a{

color:#C9D2E0;
margin:0 8px;

}

footer .footer-legal{

margin-top:20px;
font-size:13px;
color:#8894A8;

}

/* MOBILE */

@media(max-width:1200px){

nav ul{

display:none;
position:fixed;
top:76px;
left:0;
width:100%;
background:var(--navy-dark);
flex-direction:column;
align-items:flex-start;
padding:20px 8%;
gap:0;

}

nav ul.open{

display:flex;

}

nav ul li{

width:100%;
padding:14px 0;
border-bottom:1px solid rgba(255,255,255,.1);

}

nav ul li a{

font-size:17px;

}

.hamburger{

display:flex;

}

}

@media(max-width:768px){

.logo img{

height:40px;

}

nav ul{

top:68px;

}

.hero{

padding-top:130px;

}

.hero h1{

font-size:42px;

}

.hero-sub{

font-size:18px;

}

.section-title{

font-size:32px;

}

.section-text{

font-size:17px;

}

.contact-box, .contact-cta{

padding:26px;

}

section{

padding:70px 6%;

}

.contact-grid{

grid-template-columns:1fr;

}

.discipline-grid, .industry-list, .why-grid{

grid-template-columns:1fr;

}

}

/* LANGUAGE SWITCH */

nav ul li a.lang-switch{

border:1px solid rgba(255,255,255,.5);
border-radius:6px;
padding:4px 10px;
font-size:13px;
letter-spacing:.05em;

}

/* PRODUCT TILES AS LINKS */

a.product-tile{

display:block;
text-decoration:none;
transition:transform .2s ease, box-shadow .2s ease;

}

a.product-tile:hover{

transform:translateY(-4px);
box-shadow:0 20px 36px rgba(0,0,0,.14);

}

a.product-tile .product-tile-label::after{

content:" →";
color:var(--orange);

}

.inline-link{

color:var(--navy);
font-weight:bold;

}

/* SUBPAGES */

body.subpage header{

background:var(--navy);

}

.page-hero{

background:var(--navy);
color:white;
padding:150px 8% 70px;
background-size:cover;
background-position:center;

}

.page-hero h1{

font-size:clamp(34px, 3.3vw, 44px);
line-height:1.1;
margin-bottom:18px;
max-width:900px;

}

.page-hero p{

font-size:18px;
color:#E7ECF5;
max-width:780px;

}

.breadcrumb{

font-size:14px;
color:#B9C3D6;
margin-bottom:22px;

}

.breadcrumb a{

color:#B9C3D6;

}

.page-body{

display:grid;
grid-template-columns:minmax(0,1fr) 320px;
gap:50px;
align-items:start;

}

.page-body h2{

color:var(--navy);
font-size:26px;
line-height:1.2;
margin:44px 0 16px;

}

.page-body h2:first-child{

margin-top:0;

}

.page-body p, .page-body li{

font-size:17px;
margin-bottom:12px;

}

.page-body ul, .page-body ol{

padding-left:24px;

}

.spec-table{

width:100%;
border-collapse:collapse;
margin:10px 0 12px;
font-size:16px;

}

.spec-table th, .spec-table td{

text-align:left;
padding:11px 14px;
border-bottom:1px solid #e3e6ea;
vertical-align:top;

}

.spec-table thead th{

background:var(--navy);
color:white;
font-weight:600;

}

.spec-table tbody tr:nth-child(even){

background:#f6f7f9;

}

.spec-note{

font-size:15px !important;
color:#555;

}

.side-card{

position:sticky;
top:110px;
background:var(--navy);
color:white;
border-radius:15px;
padding:32px;

}

.side-card h3{

font-size:22px;
margin-bottom:10px;

}

.side-card p{

color:#C9D2E0;
font-size:16px !important;
margin-bottom:18px;

}

.side-card .mailto-btn{

margin-bottom:12px;

}

.side-card ul{

list-style:none;
padding:0;
margin-top:18px;
border-top:1px solid rgba(255,255,255,.15);
padding-top:16px;

}

.side-card li{

font-size:15px !important;
margin-bottom:6px;

}

.side-card li a{

color:#DCE3EE;

}

.steps{

counter-reset:step;
list-style:none;
padding-left:0 !important;

}

.steps li{

position:relative;
padding:4px 0 14px 56px;

}

.steps li::before{

counter-increment:step;
content:counter(step);
position:absolute;
left:0;
top:2px;
width:38px;
height:38px;
border-radius:50%;
background:var(--orange);
color:white;
font-weight:bold;
display:flex;
align-items:center;
justify-content:center;

}

@media(max-width:900px){

.page-body{

grid-template-columns:1fr;

}

.side-card{

position:static;

}

}

@media(max-width:768px){

.page-hero{

padding:120px 6% 50px;

}

.page-hero h1{

font-size:34px;

}

.page-hero p{

font-size:17px;

}

.page-body h2{

font-size:25px;

}

.spec-table{

font-size:14px;

}

.spec-table th, .spec-table td{

padding:9px 8px;

}

}


/* INSIGHTS */

.article-meta{

font-size:14px !important;
color:#B9C3D6;
margin-top:18px;
letter-spacing:.02em;

}

.article-body h2{

font-size:24px;

}

.article-body ol li::marker{

color:var(--orange);
font-weight:bold;

}

.insight-grid{

display:grid;
grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
gap:30px;

}

.insight-card{

display:flex;
flex-direction:column;
background:white;
border-radius:15px;
overflow:hidden;
box-shadow:0 15px 30px rgba(0,0,0,.08);
text-decoration:none;
color:inherit;
transition:transform .2s ease, box-shadow .2s ease;

}

.insight-card:hover{

transform:translateY(-4px);
box-shadow:0 20px 36px rgba(0,0,0,.14);

}

.insight-card img{

width:100%;
height:200px;
object-fit:cover;

}

.insight-card-body{

padding:26px 28px 30px;

}

.insight-card .article-meta{

color:#666;
margin:0 0 8px;

}

.insight-card h2{

color:var(--navy);
font-size:22px;
line-height:1.25;
margin-bottom:12px;

}

.insight-card p{

font-size:16px;
color:#444;
margin-bottom:16px;

}

.insight-more{

color:var(--orange);
font-weight:bold;

}

@media(max-width:768px){

.insight-grid{

grid-template-columns:1fr;

}

}
