*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#151515;background:#fff}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #eee}.nav{min-height:92px;display:flex;align-items:center;gap:24px}.brand img{width:120px;display:block}.menu{display:flex;align-items:center;gap:22px;margin-left:auto;font-weight:700}.menu a{padding:34px 0;border-bottom:3px solid transparent}.menu a.active,.menu a:hover{color:#e60012;border-color:#e60012}.burger{display:none;border:0;background:none;font-size:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:8px;background:#e60012;color:#fff;font-weight:800;border:2px solid #e60012}.btn.white{background:#fff;color:#111;border-color:#111}.lang-switch{display:flex;gap:4px}.lang-btn{border:1px solid #ddd;background:#fff;padding:8px;border-radius:6px}.lang-btn.active{background:#111;color:#fff}.global-language{display:flex;align-items:center;gap:5px}.global-language select{max-width:125px;padding:8px;border:1px solid #ddd;border-radius:7px;background:#fff}.hero,.page-hero{min-height:700px;background-size:cover;background-position:center;display:flex;align-items:center;position:relative}.hero-image{background-position:center center}.hero-content{color:#fff;max-width:1180px}.hero-content .lead{color:#fff;max-width:720px;text-shadow:0 2px 12px #000}.eyebrow{font-size:14px;letter-spacing:2px;text-transform:uppercase;font-weight:900;color:#e60012;margin-bottom:18px}.hero h1,.page-hero h1{font-size:clamp(52px,7vw,94px);line-height:.94;margin:0 0 28px;letter-spacing:-4px}.hero h1 span,.page-hero h1 span{color:#e60012}.lead{font-size:21px;line-height:1.65;color:#444}.actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.2)),var(--bg);background-size:cover;background-position:center}.page-hero .container{position:relative;color:#fff}.page-hero .lead{color:#eee;max-width:700px}.stats{margin-top:-45px;position:relative;z-index:4}.stats-card{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;box-shadow:0 15px 50px #0002;border-radius:16px;overflow:hidden}.stat{padding:30px;text-align:center;border-right:1px solid #eee}.stat:last-child{border:0}.stat b{display:block;font-size:36px;color:#e60012}.section{padding:100px 0}.soft{background:#f6f6f6}.center{text-align:center}.section-title{font-size:clamp(38px,5vw,64px);letter-spacing:-2px;margin:0 0 22px}.grid{display:grid;gap:24px}.services{grid-template-columns:repeat(2,1fr);margin-top:55px}.card{background:#fff;border:1px solid #e8e8e8;border-radius:18px;overflow:hidden;transition:.3s}.card:hover{transform:translateY(-7px);box-shadow:0 20px 55px #0002}.card-img{height:300px;background-size:cover;background-position:center}.card-body{padding:30px}.card-body h3{font-size:30px;margin:0 0 12px}.more{color:#e60012;font-weight:900}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.photo{min-height:520px;border-radius:22px;background-size:cover;background-position:center}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.chip{padding:10px 16px;border:1px solid #ddd;border-radius:999px;background:#fff;font-weight:700}.wide-list{grid-template-columns:repeat(3,1fr);margin-top:50px}.info-card,.detail{padding:30px;border-top:4px solid #e60012;background:#fafafa}.details{grid-template-columns:repeat(3,1fr);margin-top:50px}.detail h3{font-size:25px}.detail li{margin:13px 0}.gallery{grid-template-columns:repeat(3,1fr);margin-top:40px}.gallery>div{height:330px;background-size:cover;background-position:center;border-radius:16px}.cta{padding:45px;background:#111;color:#fff;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer{background:#090909;color:#fff;padding-top:70px}.footer-main{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-bottom:50px}.footer-logo{width:150px;background:#fff;padding:8px}.footer a{display:block;margin:10px 0;color:#ddd}.footer-bottom{border-top:1px solid #333;padding:25px 0}.bottom-wrap{display:flex;justify-content:space-between;gap:25px}.legal{display:flex;flex-wrap:wrap;gap:14px}.legal a{margin:0}.backtop{position:fixed;right:25px;bottom:25px;width:52px;height:52px;border-radius:50%;background:#fff;box-shadow:0 5px 25px #0003;display:grid;place-items:center;color:#e60012;font-size:24px}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:50px}.contact-card,.hours-card{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid #eee;margin:12px 0;border-radius:12px}.contact-card b{margin-left:auto}.contact-form-modern{padding:35px;background:#f6f6f6;border-radius:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form-modern label{display:block;margin:15px 0;font-weight:700}.contact-form-modern input,.contact-form-modern select,.contact-form-modern textarea{width:100%;padding:14px;border:1px solid #ccc;border-radius:8px;margin-top:7px;font:inherit}.contact-form-modern textarea{min-height:150px}.location-map iframe{width:100%;height:480px;border:0}.location-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.map-address-card{padding:18px;background:#111;color:#fff;display:flex;gap:15px;align-items:center}.map-address-card a{margin-left:auto}.reveal{opacity:1;transform:none}
@media(max-width:900px){.nav{min-height:72px;flex-wrap:wrap}.brand img{width:100px}.burger{display:block;margin-left:auto}.menu{display:none;width:100%;order:5;flex-direction:column;align-items:flex-start;padding:10px 0 20px}.menu.open{display:flex}.menu a{padding:8px 0}.nav>.btn{display:none}.lang-switch{margin-left:auto}.global-language{order:4}.hero,.page-hero{min-height:620px}.hero h1,.page-hero h1{letter-spacing:-2px}.stats-card,.services,.wide-list,.details,.gallery,.split,.footer-main,.contact-layout{grid-template-columns:1fr}.stats{margin-top:0}.stat{border-right:0;border-bottom:1px solid #eee}.card-img{height:240px}.section{padding:70px 0}.photo{min-height:360px}.cta,.bottom-wrap,.location-heading{align-items:flex-start;flex-direction:column}.form-row{grid-template-columns:1fr}.hero-image{background-position:center}.hero-content{padding:80px 0}.global-language select{max-width:105px}}

/* ===== FINAL HEADER / LOGO ===== */
.topbar{
  position:sticky!important;
  top:0!important;
  z-index:999!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 6px 22px rgba(0,0,0,.07);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.nav{min-height:112px!important}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:190px!important;height:92px!important;object-fit:contain!important}
.global-language{display:none!important}
.footer-logo{width:230px!important;height:auto!important;background:transparent!important;padding:0!important;border-radius:0!important}.footer-brand-only{display:flex;align-items:flex-start}

/* ===== LEGAL PAGES ===== */
.legal-hero{
  padding:170px 0 75px;
  background:#111;
  color:#fff;
}
.legal-hero h1{
  font-size:clamp(48px,7vw,82px);
  letter-spacing:-3px;
  margin:8px 0 15px;
}
.legal-content{padding:80px 0}
.legal-content .legal-wrap{max-width:920px}
.legal-content h2{font-size:30px;margin:42px 0 14px}
.legal-content h3{font-size:21px;margin:28px 0 10px}
.legal-content p,.legal-content li{font-size:17px;line-height:1.75;color:#444}
.legal-content ul{padding-left:22px}
.company-data{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:0;
  border-top:1px solid #ddd;
  margin-top:30px;
}
.company-data div{padding:14px 0;border-bottom:1px solid #ddd}
.company-data div:nth-child(odd){font-weight:800}
.legal-note{
  margin-top:30px;
  padding:18px 20px;
  background:#f6f6f6;
  border-left:4px solid #e60012;
}

/* ===== COOKIE BANNER ===== */
.cookie-banner{
  position:fixed;
  left:20px;right:20px;bottom:20px;
  z-index:3000;
  display:none;
}
.cookie-banner.show{display:block}
.cookie-box{
  width:min(900px,100%);
  margin:auto;
  background:#fff;
  border:1px solid #ddd;
  border-radius:18px;
  box-shadow:0 25px 80px rgba(0,0,0,.25);
  padding:24px;
}
.cookie-box h2{font-size:25px;margin:0 0 10px}
.cookie-box p{margin:0;color:#555;line-height:1.6}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.cookie-actions button,.cookie-actions a{
  border:2px solid #111;
  background:#fff;
  color:#111;
  border-radius:9px;
  padding:12px 17px;
  font-weight:800;
  cursor:pointer;
}
.cookie-actions .accept{background:#e60012;border-color:#e60012;color:#fff}
.cookie-actions .reject{background:#111;color:#fff}
.cookie-actions .settings{background:#fff}
.cookie-settings{
  display:none;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #ddd;
}
.cookie-settings.open{display:block}
.cookie-toggle{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding:12px 0;
}
.cookie-toggle strong{display:block}
.cookie-toggle small{display:block;color:#666;margin-top:4px;line-height:1.45}
.cookie-switch{
  width:52px;height:30px;border-radius:999px;
  background:#ccc;position:relative;cursor:pointer;flex:0 0 auto;
}
.cookie-switch:before{
  content:"";position:absolute;top:4px;left:4px;
  width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s;
}
.cookie-switch.on{background:#e60012}
.cookie-switch.on:before{left:26px}
.cookie-switch.locked{opacity:.65;cursor:not-allowed}
.map-consent-placeholder{
  display:none;
  min-height:320px;
  background:#f3f3f3;
  align-items:center;
  justify-content:center;
  padding:30px;
  text-align:center;
}
.map-consent-placeholder.show{display:flex}
.map-consent-placeholder .inner{max-width:560px}
.map-consent-placeholder h3{font-size:24px;margin:0 0 10px}
.map-consent-placeholder p{color:#666;line-height:1.6}
.map-consent-placeholder a{display:inline-flex;margin-top:14px}

@media(max-width:900px){
  .nav{min-height:84px!important}
  .brand img{width:135px!important;height:66px!important}
  .lang-switch{margin-left:auto}
  .company-data{grid-template-columns:1fr}
  .company-data div:nth-child(odd){padding-bottom:3px;border-bottom:0}
  .company-data div:nth-child(even){padding-top:3px}
}
@media(max-width:600px){body{overflow-x:hidden}.container{width:min(100% - 28px,1180px)}.nav{gap:10px}.brand img{width:112px!important;height:58px!important}.lang-switch{gap:2px}.lang-btn{padding:7px 6px}.hero,.page-hero{min-height:540px}.hero h1,.page-hero h1{font-size:clamp(40px,13vw,58px);line-height:1;letter-spacing:-2px}.hero-content{padding:58px 0}.lead{font-size:18px;line-height:1.5}.section{padding:55px 0}.section-title{font-size:38px;letter-spacing:-1px}.card-body,.info-card,.detail{padding:22px}.cta{padding:28px 22px}.footer{padding-top:50px}.footer-main{gap:28px;padding-bottom:38px}.footer-logo{width:min(230px,75vw)!important}.backtop{right:14px;bottom:14px;width:46px;height:46px}.location-map iframe{height:360px}img{max-width:100%}
  .cookie-banner{left:10px;right:10px;bottom:10px}
  .cookie-box{padding:18px;border-radius:14px}
  .cookie-actions{display:grid;grid-template-columns:1fr}
  .cookie-actions button,.cookie-actions a{width:100%}
  .legal-hero{padding:125px 0 55px}
  .legal-content{padding:55px 0}
}

/* Intro background video */
.video-hero{overflow:hidden;background-color:#111}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-select:none;z-index:0}
.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.16));z-index:1;pointer-events:none}
.video-hero .hero-content{position:relative;z-index:2}
@media(max-width:600px){.hero-video{object-position:center center}}

/* Photo & video category */
.media-services{grid-template-columns:repeat(3,1fr)}
.media-intro{max-width:760px;margin:0 auto}
.media-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px;align-items:stretch}
.media-showcase video{width:100%;height:430px;object-fit:cover;border-radius:16px;background:#111;box-shadow:0 14px 38px #0002}
@media(max-width:900px){.media-services,.media-showcase{grid-template-columns:1fr}.media-showcase video{height:auto;max-height:620px}}

/* Reliable local-file hero image */
.media-hero{position:relative;overflow:hidden;background:#111}
.media-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.media-hero:before{z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.20))}
.media-hero .container{position:relative;z-index:2}
