:root{--black:#050505;--dark:#0b0b0b;--panel:#11100e;--gold:#c99532;--gold2:#f2c26b;--text:#f5f1e9;--muted:#c7beb0;--line:rgba(224,169,70,.32);--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050505;color:var(--text);font-family:Inter,Arial,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 70% 8%,rgba(220,155,55,.17),transparent 32%),radial-gradient(circle at 15% 35%,rgba(197,149,50,.11),transparent 28%),linear-gradient(135deg,#030303,#0b0906 55%,#030303);z-index:-3}body:after{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:72px 72px;opacity:.4;animation:bgMove 18s linear infinite;z-index:-2}@keyframes bgMove{to{transform:translate3d(-72px,-72px,0)}}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.preloader{position:fixed;inset:0;background:#020202;z-index:1000;display:grid;place-items:center;gap:18px;transition:.8s ease}.preloader img{width:170px;filter:drop-shadow(0 0 35px rgba(218,166,66,.45));animation:logoPulse 1.8s ease infinite}.preloader span{color:var(--gold2);letter-spacing:.25em;text-transform:uppercase;font-size:12px}.preloader.hide{opacity:0;visibility:hidden}@keyframes logoPulse{50%{transform:scale(1.04);filter:drop-shadow(0 0 55px rgba(218,166,66,.7))}}.site-header{height:92px;position:fixed;top:0;left:0;right:0;z-index:99;display:flex;align-items:center;padding:0 48px;background:linear-gradient(180deg,rgba(0,0,0,.94),rgba(0,0,0,.62));border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand img{width:130px}.main-nav{margin-left:auto;display:flex;gap:30px;align-items:center}.main-nav a{font-size:13px;text-transform:uppercase;font-weight:700;letter-spacing:.03em;opacity:.9}.main-nav a:hover{color:var(--gold2)}.lang-switch{display:flex;gap:8px;margin-left:28px}.lang-switch button,.menu-toggle{border:1px solid var(--line);background:rgba(0,0,0,.35);color:var(--text);padding:9px 12px;border-radius:2px;cursor:pointer}.lang-switch button.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#120d05}.menu-toggle{display:none}.hero{position:relative;min-height:100vh;padding:150px 7vw 60px;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.35),rgba(0,0,0,.65)),url('../img/hero-clean.jpg') center/cover no-repeat;z-index:-2;animation:kenburns 24s ease-in-out infinite alternate}.hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 40%,rgba(255,190,80,.22),transparent 28%)}@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08) translateX(-18px)}}.gold-grid{position:absolute;inset:0;background:linear-gradient(100deg,transparent 0 40%,rgba(226,166,53,.1) 50%,transparent 60%);animation:shine 8s ease-in-out infinite;z-index:-1}@keyframes shine{50%{transform:translateX(12%)}}.hero-content{max-width:650px}.eyebrow{font-family:Cormorant Garamond,serif;color:var(--gold2);letter-spacing:.18em;text-transform:uppercase;font-weight:700;font-size:18px}.hero h1{font-family:Cormorant Garamond,serif;font-size:clamp(62px,8vw,122px);line-height:.84;margin:18px 0;color:#fff;font-weight:600;text-shadow:0 16px 50px #000}.hero h2,.section h2{font-family:Cormorant Garamond,serif;font-size:clamp(34px,4vw,62px);line-height:1.02;margin:12px 0;color:#fff;font-weight:600}.hero h2{font-size:clamp(24px,3vw,42px);color:var(--gold2);letter-spacing:.05em;text-transform:uppercase}.hero p{font-size:18px;line-height:1.85;color:#eee;max-width:560px}.hero-actions,.center{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;gap:18px;align-items:center;justify-content:center;min-height:52px;padding:0 30px;border:1px solid var(--line);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:12px}.btn:after{content:"→"}.btn.primary{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#0a0702}.btn.ghost{background:rgba(0,0,0,.35);color:#fff}.hero-quotes{position:absolute;right:7vw;bottom:110px;width:min(440px,36vw);min-height:90px;padding:26px;border-left:1px solid var(--line);background:rgba(0,0,0,.38);backdrop-filter:blur(10px)}.quote-slide{position:absolute;opacity:0;transform:translateY(16px);transition:.7s;font-family:Cormorant Garamond,serif;font-size:28px}.quote-slide.active{position:relative;opacity:1;transform:none}.strip{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:-42px 7vw 0;position:relative;z-index:5;background:rgba(0,0,0,.82);border:1px solid var(--line);backdrop-filter:blur(14px)}.strip div{padding:28px;text-align:center;border-right:1px solid var(--line)}.strip div:last-child{border:0}.strip strong{display:block;font-family:Cormorant Garamond,serif;font-size:42px;color:var(--gold2)}.strip span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.section{padding:110px 7vw;position:relative}.about,.presence,.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}.section-copy p,.center p,.presence p,.contact p{color:var(--muted);line-height:1.8;font-size:16px}.about-visual{position:relative}.about-visual img{height:520px;width:100%;object-fit:cover;border:1px solid var(--line);filter:saturate(.9) contrast(1.05)}.glass-card{position:absolute;left:32px;bottom:32px;background:rgba(0,0,0,.68);border:1px solid var(--line);padding:22px 28px;display:grid;grid-template-columns:auto 1fr;gap:10px 22px;backdrop-filter:blur(18px)}.glass-card b{color:var(--gold2)}.learn-more,details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.learn-more summary,details summary{color:var(--gold2);cursor:pointer;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.center{flex-direction:column;text-align:center;max-width:850px;margin:0 auto 48px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card,.team-card,.legal-card{background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));border:1px solid rgba(201,149,50,.25);padding:30px;min-height:250px;transition:.35s}.service-card:hover,.team-card:hover,.project-card:hover{transform:translateY(-8px);border-color:var(--gold2);box-shadow:0 20px 70px rgba(0,0,0,.38)}.service-card span{color:var(--gold2);font-family:Cormorant Garamond,serif;font-size:34px}.service-card h3,.project-card h3,.team-card h3{font-family:Cormorant Garamond,serif;font-size:28px;margin:18px 0 10px}.service-card p,.project-card p,.team-card p{color:var(--muted);line-height:1.7}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.project-card{background:#090909;border:1px solid var(--line);min-height:520px;display:flex;flex-direction:column;overflow:hidden;transition:.35s}.project-card img{height:260px;width:100%;object-fit:cover;filter:saturate(.95) contrast(1.08)}.project-card>div{padding:26px;display:flex;flex-direction:column;flex:1}.project-card details{margin-top:auto}.presence{background:linear-gradient(90deg,#f5efe5,#fff);color:#17120d}.presence h2{color:#17120d}.presence p{color:#423a30}.network-map{height:440px;position:relative;background:radial-gradient(circle at 55% 50%,rgba(201,149,50,.18),transparent 45%),#f8f5ef;border:1px solid rgba(0,0,0,.08);overflow:hidden}.network-map:before{content:"";position:absolute;inset:40px;background:radial-gradient(circle,#b8b1a5 1.2px,transparent 1.3px);background-size:18px 14px;opacity:.6;mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent)}.network-map svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#c99532;stroke-width:2;filter:drop-shadow(0 0 8px rgba(201,149,50,.55))}.network-map path{stroke-dasharray:900;stroke-dashoffset:900;animation:draw 4s ease forwards infinite alternate}@keyframes draw{to{stroke-dashoffset:0}}.node{position:absolute;background:#090909;color:var(--gold2);border:1px solid var(--gold);padding:7px 12px;font-size:12px;text-transform:uppercase;z-index:2;box-shadow:0 0 30px rgba(201,149,50,.25)}.madrid{left:49%;top:51%}.eu{left:43%;top:34%}.usa{left:11%;top:41%}.me{left:67%;top:45%}.latam{left:18%;top:73%}.asia{right:8%;top:36%}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.team-card i{display:grid;place-items:center;width:54px;height:54px;border:1px solid var(--line);border-radius:50%;color:var(--gold2);font-style:normal;font-size:24px}.team-card h3{font-size:24px}.team-card b{display:block;color:var(--gold2);font-size:12px;text-transform:uppercase;letter-spacing:.08em;min-height:32px}.team-card a{display:block;color:#fff;margin:14px 0;font-weight:700}.dealroom{background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.55)),url('../img/project-partnership.jpg') center/cover fixed no-repeat}.deal-panel{max-width:720px;border:1px solid var(--line);background:rgba(0,0,0,.65);padding:50px;backdrop-filter:blur(12px)}.legal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.legal-card{min-height:0}.contact{background:linear-gradient(180deg,rgba(255,255,255,.035),transparent)}.contact-form{display:grid;gap:14px;background:rgba(255,255,255,.045);border:1px solid var(--line);padding:34px}.contact-form input,.contact-form textarea,.contact-form select{background:#070707;border:1px solid rgba(255,255,255,.13);color:#fff;padding:16px;font:inherit}.footer{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;padding:60px 7vw 34px;border-top:1px solid var(--line);background:#030303}.footer img{width:150px}.footer h4{color:var(--gold2);text-transform:uppercase;letter-spacing:.1em}.footer a{display:block;color:var(--muted);margin:9px 0}.footer p{color:var(--muted);line-height:1.7}.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.15s}@media(max-width:1100px){.site-header{padding:0 20px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:92px;left:0;right:0;background:#050505;flex-direction:column;padding:24px}.main-nav.open{display:flex}.lang-switch{margin-left:12px}.strip,.service-grid,.project-grid,.team-grid,.legal-grid,.about,.presence,.contact,.footer{grid-template-columns:1fr}.hero-quotes{position:relative;right:auto;bottom:auto;width:100%;margin-top:30px}.hero{display:block;padding-top:150px}.strip{margin:0}.strip div{border-right:0;border-bottom:1px solid var(--line)}.project-card{min-height:auto}.site-header{height:auto;min-height:86px;flex-wrap:wrap}.brand img{width:105px}.lang-switch{width:100%;justify-content:center;margin:8px 0 12px}.main-nav{top:118px}}@media(max-width:680px){.hero h1{font-size:58px}.section{padding:76px 22px}.hero{padding-left:22px;padding-right:22px}.strip{margin:0 22px}.lang-switch button{font-size:11px;padding:8px}.footer{padding:44px 22px}.hero h2{font-size:22px}}


/* === EROREMA final refinement: unique coded visuals, no screenshot panels === */
.about-signature{
  min-height:560px;
  width:100%;
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  background:
    radial-gradient(circle at 68% 38%, rgba(242,194,107,.26), transparent 22%),
    radial-gradient(circle at 26% 78%, rgba(201,149,50,.12), transparent 25%),
    linear-gradient(135deg, rgba(4,4,4,.98), rgba(20,16,10,.96) 55%, rgba(3,3,3,.98));
  box-shadow: inset 0 0 120px rgba(0,0,0,.7), 0 34px 90px rgba(0,0,0,.45);
}
.about-signature:before{
  content:"";
  position:absolute;
  inset:-30%;
  background:
    linear-gradient(115deg, transparent 0 46%, rgba(242,194,107,.12) 48%, transparent 52%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 88px);
  animation: signatureFlow 16s linear infinite;
}
.about-signature:after{
  content:"";
  position:absolute;
  inset:0;
  background-image: radial-gradient(circle, rgba(242,194,107,.55) 1px, transparent 1.8px);
  background-size: 42px 42px;
  mask-image: radial-gradient(circle at 64% 42%, #000 0 28%, transparent 55%);
  opacity:.38;
  animation: constellation 10s ease-in-out infinite alternate;
}
@keyframes signatureFlow{to{transform:translate3d(110px,70px,0)}}
@keyframes constellation{to{opacity:.62;transform:scale(1.03)}}
.signature-orbit{
  position:absolute;
  inset:42px;
  border:1px solid rgba(201,149,50,.22);
  display:grid;
  place-items:center;
}
.signature-orbit:before,.signature-orbit:after{
  content:"";
  position:absolute;
  border:1px solid rgba(242,194,107,.42);
  border-radius:50%;
  filter:drop-shadow(0 0 16px rgba(201,149,50,.25));
}
.signature-orbit:before{width:390px;height:390px;animation:spinSlow 22s linear infinite}
.signature-orbit:after{width:260px;height:260px;animation:spinSlow 15s linear infinite reverse}
@keyframes spinSlow{to{transform:rotate(360deg)}}
.orbit-center{
  z-index:2;
  text-align:center;
  color:#fff;
  font-family:Cormorant Garamond,serif;
  font-size:54px;
  letter-spacing:.12em;
  text-shadow:0 0 35px rgba(201,149,50,.45);
}
.orbit-center small{font-size:22px;color:var(--gold2);letter-spacing:.32em}
.orbit-dot{
  position:absolute;
  z-index:3;
  border:1px solid rgba(242,194,107,.5);
  background:rgba(0,0,0,.55);
  color:var(--gold2);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:9px 12px;
  backdrop-filter:blur(12px);
}
.dot-a{top:26%;left:14%}.dot-b{top:18%;right:14%}.dot-c{bottom:24%;right:16%}.dot-d{bottom:18%;left:18%}
.profile-card{left:34px;right:34px;bottom:34px;width:auto;grid-template-columns:minmax(80px,auto) 1fr}

.project-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
}
.project-card{
  position:relative;
  min-height:590px;
  border-color:rgba(242,194,107,.28);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.014));
  box-shadow:0 20px 70px rgba(0,0,0,.22);
}
.project-card:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, transparent 0 40%, rgba(0,0,0,.18) 72%, rgba(201,149,50,.06));
  z-index:1;
}
.project-card img{
  height:305px;
  transform:scale(1.001);
  transition:transform .8s ease, filter .8s ease;
  background:#090909;
}
.project-card:hover img{
  transform:scale(1.06);
  filter:saturate(1.08) contrast(1.12) brightness(1.04);
}
.project-card>div{
  position:relative;
  z-index:2;
  padding:30px;
  min-height:285px;
}
.project-card h3{
  color:#fff;
  margin-top:0;
  min-height:34px;
}
.project-card h3:before{
  content:"";
  display:block;
  width:42px;
  height:2px;
  background:linear-gradient(90deg,var(--gold2),transparent);
  margin-bottom:14px;
}
.project-card details{
  background:rgba(0,0,0,.28);
  border:1px solid rgba(201,149,50,.18);
  padding:12px 14px;
  margin-top:auto;
}
.project-card details[open]{
  background:rgba(0,0,0,.5);
}
.project-card details p{
  margin-bottom:0;
  font-size:14px;
}

@media (max-width:1100px){
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .project-grid{grid-template-columns:1fr}
  .project-card{min-height:auto}
  .project-card img{height:260px}
  .about-signature{min-height:520px}
  .orbit-center{font-size:38px}
  .signature-orbit:before{width:300px;height:300px}
  .signature-orbit:after{width:200px;height:200px}
}

/* === FINAL FIX: project layout without overlaps + premium photographic presentation === */
.projects{position:relative;overflow:hidden;}
.projects::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 0%,rgba(201,149,50,.12),transparent 30%),radial-gradient(circle at 86% 22%,rgba(255,214,135,.08),transparent 28%);opacity:.9;}
.projects .center,.projects .project-grid{position:relative;z-index:1;}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;align-items:start;grid-auto-flow:row;}
.project-card{height:auto !important;min-height:0 !important;display:flex;flex-direction:column;overflow:hidden;border-radius:0;background:linear-gradient(180deg,rgba(12,12,12,.96),rgba(4,4,4,.98));box-shadow:0 28px 90px rgba(0,0,0,.42);}
.project-card img{display:block;width:100%;height:320px !important;object-fit:cover;object-position:center;border-bottom:1px solid rgba(201,149,50,.28);}
.project-card>div{display:flex;flex-direction:column;gap:0;padding:30px 30px 28px !important;min-height:0 !important;height:auto !important;}
.project-card h3{font-size:30px;line-height:1.08;margin:0 0 14px !important;min-height:0 !important;}
.project-card p{font-size:15px;line-height:1.72;margin:0 0 18px;}
.project-card details{position:relative;display:block;margin-top:10px !important;padding:14px 16px !important;overflow:visible;}
.project-card details p{font-size:14px;line-height:1.68;margin-top:12px;}
.project-card details[open]{box-shadow:inset 0 0 0 1px rgba(242,194,107,.16);}
@media(max-width:1180px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.project-card img{height:300px !important;}}
@media(max-width:760px){.project-grid{grid-template-columns:1fr;gap:26px}.project-card img{height:260px !important}.project-card>div{padding:24px !important}.project-card h3{font-size:27px}}

/* Improve navigation/header spacing so no elements overlap on smaller screens */
.site-header{gap:22px;}
.main-nav{flex-wrap:wrap;justify-content:center;row-gap:10px;}
.lang-switch{flex-shrink:0;}
@media(max-width:1320px){.site-header{padding:0 32px}.main-nav{gap:16px}.lang-switch button{padding:9px 10px;font-size:11px}.brand img{width:120px}}
@media(max-width:1100px){.site-header{align-items:center}.main-nav.open{z-index:99}.lang-switch{order:3}.menu-toggle{order:2}.brand{order:1}}

/* Make generated photo assets feel more natural inside the cards */
.project-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,0) 22%,rgba(0,0,0,.20) 52%,rgba(0,0,0,.38) 100%);opacity:.55;mix-blend-mode:multiply;}
.project-card>div{z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.58));}

/* === SERIOUS FIX 2026: clean premium layout, no overlaps, stronger legal/cookie/welcome === */
:root{--ivory:#f6efe3;--ivory2:#fffaf1;--deep:#050403;--champagne:#e7c37a;}
.lang-switch button{min-width:42px;font-size:20px;line-height:1;padding:10px 11px;border-radius:999px;}
.lang-switch button.active{box-shadow:0 0 0 2px rgba(242,194,107,.18),0 8px 28px rgba(201,149,50,.25)}

.about{grid-template-columns:minmax(0,1fr) minmax(420px,1fr);align-items:start;}
.about-signature{min-height:620px;overflow:hidden;}
.about-signature .glass-card.profile-card{position:absolute;left:34px;right:34px;bottom:34px;max-width:calc(100% - 68px);z-index:5;background:rgba(5,4,3,.84);}
.signature-orbit{bottom:170px;inset:42px 42px 170px 42px;}
.orbit-dot{white-space:nowrap;}
.section-copy{max-width:720px;}
.section-copy p{font-size:17px;line-height:1.92;}

.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;}
.project-card{min-width:0;}
.project-card img{height:300px!important;}
.project-card>div{min-height:330px!important;}
.project-card details{margin-top:auto!important;}
.project-card p{overflow-wrap:anywhere;}

.presence{background:linear-gradient(135deg,var(--ivory2) 0%,#f1e5d1 46%,#fff 100%);position:relative;overflow:hidden;}
.presence:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(201,149,50,.18),transparent 28%),linear-gradient(90deg,rgba(255,255,255,.65),transparent 55%);pointer-events:none;}
.presence>*{position:relative;z-index:1;}
.presence-copy{background:rgba(255,255,255,.55);border:1px solid rgba(130,100,45,.16);padding:42px;box-shadow:0 28px 80px rgba(70,45,10,.12);}
.presence-facts{display:grid;gap:12px;margin-top:24px;}
.presence-facts span{display:block;padding:14px 16px;border-left:3px solid var(--gold);background:rgba(255,255,255,.75);color:#241b10;font-weight:700;box-shadow:0 10px 32px rgba(40,28,8,.06)}
.network-map{height:500px;border:1px solid rgba(111,81,28,.2);background:linear-gradient(180deg,#fffaf0,#eadcc4);box-shadow:0 30px 90px rgba(55,35,10,.18);border-radius:2px;}
.network-map:before{inset:28px;background-image:url('../img/project-international.jpg');background-size:cover;background-position:center;opacity:.22;mask-image:none;filter:saturate(.7) contrast(1.02);}
.network-map:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 54%,rgba(255,255,255,.18),transparent 25%),linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,.08));pointer-events:none;}
.node{border-radius:999px;padding:9px 14px;font-weight:800;box-shadow:0 14px 40px rgba(25,15,2,.18);}
.network-map svg{stroke:#a87419;stroke-width:2.4;z-index:2;}

.team{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.008));}
.team .center{max-width:980px;}
.team .center p{font-size:17px;line-height:1.85;}
.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.team-card{position:relative;overflow:hidden;min-height:310px;padding:34px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018));box-shadow:0 18px 70px rgba(0,0,0,.28);}
.team-card:before{content:"";position:absolute;right:-42px;top:-42px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(242,194,107,.18),transparent 65%);}
.team-card i{background:rgba(201,149,50,.09);box-shadow:inset 0 0 0 1px rgba(242,194,107,.22);}
.team-card h3{font-size:27px;line-height:1.08;margin-bottom:12px;}
.team-card a{color:var(--champagne);word-break:break-word;}

.legal-card p{font-size:15.5px;line-height:1.78;}
.footer{padding-bottom:0;}
.copyright{grid-column:1/-1;border-top:1px solid rgba(201,149,50,.22);margin-top:24px;padding:22px 0;color:#bdb2a0;font-size:13px;line-height:1.7;}

.welcome-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:28px;background:radial-gradient(circle at 50% 20%,rgba(201,149,50,.25),transparent 28%),rgba(0,0,0,.86);backdrop-filter:blur(14px);}
.welcome-modal.show{display:flex;}
.welcome-panel{position:relative;width:min(760px,94vw);padding:54px 48px;text-align:center;border:1px solid rgba(242,194,107,.45);background:linear-gradient(145deg,rgba(12,10,7,.96),rgba(0,0,0,.94));box-shadow:0 45px 120px rgba(0,0,0,.65);}
.welcome-logo{width:150px;margin:0 auto 24px;filter:drop-shadow(0 0 24px rgba(242,194,107,.32));}
.welcome-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:1px solid rgba(242,194,107,.35);background:rgba(0,0,0,.35);color:#fff;font-size:24px;cursor:pointer;}
.welcome-slides{min-height:150px;position:relative;}
.welcome-slide{position:absolute;inset:0;opacity:0;transform:translateY(12px);transition:.65s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;}
.welcome-slide.active{opacity:1;transform:none;position:relative;}
.welcome-slide b{font-family:Cormorant Garamond,serif;font-size:clamp(34px,5vw,58px);font-weight:600;color:#fff;}
.welcome-slide span{max-width:620px;color:#d9cfbd;line-height:1.8;font-size:17px;}

.cookie-banner{position:fixed;left:28px;right:28px;bottom:24px;z-index:1900;display:none;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:22px 24px;border:1px solid rgba(242,194,107,.35);background:rgba(5,4,3,.94);backdrop-filter:blur(16px);box-shadow:0 22px 80px rgba(0,0,0,.55);}
.cookie-banner.show{display:grid;}
.cookie-banner b{color:var(--gold2);text-transform:uppercase;letter-spacing:.08em;}
.cookie-banner p{margin:8px 0 0;color:#d1c6b6;line-height:1.6;}
.cookie-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.cookie-actions .btn{min-height:46px;padding:0 20px;}

@media(max-width:1180px){.about,.presence,.contact{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-signature{min-height:560px}.signature-orbit{bottom:170px}.cookie-banner{grid-template-columns:1fr}}
@media(max-width:760px){.team-grid,.project-grid{grid-template-columns:1fr}.presence-copy{padding:28px}.network-map{height:420px}.about-signature .glass-card.profile-card{position:relative;left:auto;right:auto;bottom:auto;margin:330px 20px 24px;max-width:none}.signature-orbit{inset:28px 28px 210px 28px}.welcome-panel{padding:42px 24px}.cookie-banner{left:14px;right:14px;bottom:14px}.cookie-actions{justify-content:stretch}.cookie-actions .btn{flex:1}}

/* === SCHNELLER START + BEWEGLICHES SCROLL-DESIGN === */
.preloader{transition:.28s ease !important;}
.preloader img{width:120px !important;animation:logoPulse .9s ease infinite !important;}
.preloader span{letter-spacing:.18em !important;font-size:11px !important;}

.welcome-modal{background:rgba(0,0,0,.72) !important;backdrop-filter:blur(8px) !important;}
.welcome-panel{width:min(520px,92vw) !important;padding:34px 34px 28px !important;animation:welcomeIn .45s ease both;}
.welcome-logo{width:105px !important;margin-bottom:14px !important;}
.welcome-slides{min-height:82px !important;}
.welcome-slide{gap:6px !important;transition:.32s ease !important;}
.welcome-slide b{font-size:clamp(28px,4vw,42px) !important;}
.welcome-slide span{font-size:18px !important;color:var(--gold2) !important;letter-spacing:.08em;text-transform:uppercase;}
.welcome-close{width:32px !important;height:32px !important;font-size:20px !important;}
.welcome-panel .btn{min-height:42px !important;padding:0 22px !important;font-size:11px !important;}
.welcome-progress{height:2px;background:rgba(255,255,255,.12);margin-top:16px;overflow:hidden;}
.welcome-progress span{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));transform-origin:left;animation:welcomeProgress 2.1s linear forwards;}
@keyframes welcomeIn{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
@keyframes welcomeProgress{from{transform:scaleX(1)}to{transform:scaleX(0)}}

.reveal{opacity:0;transform:translateY(46px) scale(.985);filter:blur(3px);transition:opacity .85s ease, transform .85s cubic-bezier(.2,.8,.2,1), filter .85s ease;}
.reveal.visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0);}
.reveal.delay{transition-delay:.12s;}
.service-card,.project-card,.team-card,.legal-card,.deal-panel,.presence-copy,.network-map{will-change:transform;}
.service-card.visible,.project-card.visible,.team-card.visible,.legal-card.visible{animation:softFloatIn .9s ease both;}
@keyframes softFloatIn{0%{opacity:0;transform:translateY(50px) rotateX(4deg)}100%{opacity:1;transform:translateY(0) rotateX(0)}}
.section::after{content:"";position:absolute;left:7vw;right:7vw;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(242,194,107,.28),transparent);}
.legal-grid{align-items:start;}
.legal-card{min-height:auto !important;}
.legal-card p{font-size:16px !important;line-height:1.9 !important;color:#d8cdbd;}
.legal-card summary{font-size:13px !important;}
.legal-card[open]{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border-color:rgba(242,194,107,.45);box-shadow:0 22px 70px rgba(0,0,0,.35);}
.legal-card[open] summary{color:var(--gold2);}

html{scroll-padding-top:110px;}
@media(max-width:760px){.welcome-panel{padding:30px 20px 24px !important}.welcome-logo{width:92px !important}.welcome-slides{min-height:72px !important}}


/* === PREMIUM UPDATE: kurzer Gruß, mehr seriöser Kontrast, mehr Bewegung === */
:root{
  --ivory-soft:#f8f1e6;
  --ivory-panel:#fff8ec;
  --bronze:#8f6424;
  --deep-black:#020202;
}
body{
  background:#020202;
}
body:before{
  background:
    radial-gradient(circle at 74% 10%,rgba(242,194,107,.20),transparent 26%),
    radial-gradient(circle at 12% 38%,rgba(255,248,236,.065),transparent 28%),
    linear-gradient(135deg,#020202 0%,#090704 42%,#11100d 60%,#020202 100%) !important;
}
.site-header{
  background:linear-gradient(180deg,rgba(2,2,2,.98),rgba(2,2,2,.78)) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.40);
}
.hero-content{
  padding:34px 0;
}
.hero h1{
  text-shadow:0 0 35px rgba(201,149,50,.28),0 10px 50px rgba(0,0,0,.7);
}
.hero h2,.hero p{
  text-shadow:0 2px 18px rgba(0,0,0,.75);
}
.section:nth-of-type(even):not(.presence){
  background:linear-gradient(180deg,rgba(255,248,236,.032),rgba(255,255,255,0));
}
.service-card,.project-card,.team-card,.legal-card,.contact-form,.deal-panel{
  border-color:rgba(242,194,107,.34) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 16px 48px rgba(0,0,0,.18);
}
.service-card,.team-card,.legal-card{
  background:linear-gradient(180deg,rgba(255,248,236,.075),rgba(255,255,255,.018)) !important;
}
.project-card{
  background:linear-gradient(180deg,#11100d,#050505) !important;
}
.btn.primary{
  box-shadow:0 14px 36px rgba(201,149,50,.28);
}
.btn.ghost{
  border-color:rgba(255,248,236,.25);
  background:rgba(255,248,236,.06);
}
.presence{
  background:
    radial-gradient(circle at 75% 22%,rgba(201,149,50,.22),transparent 28%),
    linear-gradient(110deg,#fff8ec 0%,#f1e2c8 48%,#d9c096 100%) !important;
  border-top:1px solid rgba(143,100,36,.28);
  border-bottom:1px solid rgba(143,100,36,.28);
}
.presence-copy{
  background:rgba(255,255,255,.46);
  border:1px solid rgba(143,100,36,.22);
  padding:38px;
  box-shadow:0 26px 70px rgba(55,35,10,.12);
}
.presence-facts span{
  background:#090704 !important;
  color:#f2c26b !important;
  border:1px solid rgba(143,100,36,.55) !important;
}
.network-map{
  box-shadow:0 34px 100px rgba(50,31,8,.22), inset 0 0 0 1px rgba(255,255,255,.38) !important;
}
.node{
  border-radius:999px;
  letter-spacing:.13em;
}
.reveal{
  transform:translateY(54px) scale(.975) !important;
  transition:opacity .9s ease, transform .9s cubic-bezier(.16,.84,.2,1), filter .9s ease !important;
}
.reveal.visible{
  transform:translateY(0) scale(1) !important;
}
.service-card.visible,.project-card.visible,.team-card.visible{
  animation:premiumLift .95s cubic-bezier(.16,.84,.2,1) both;
}
@keyframes premiumLift{
  0%{opacity:0;transform:translateY(34px) scale(.97)}
  65%{opacity:1;transform:translateY(-5px) scale(1.006)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
.tilting{
  transform:perspective(900px) rotateX(var(--tiltX)) rotateY(var(--tiltY)) translateY(-4px) !important;
  transition:transform .08s linear !important;
}
.project-card img{
  transition:transform 1.1s ease, filter .6s ease;
}
.project-card:hover img{
  transform:scale(1.055);
  filter:saturate(1.04) contrast(1.14);
}
.service-card:hover,.team-card:hover,.legal-card:hover{
  background:linear-gradient(180deg,rgba(255,248,236,.105),rgba(255,255,255,.025)) !important;
}

/* Kurzer, kleiner Ladegruß: Webseite bleibt sofort sichtbar */
.welcome-modal{
  inset:0 !important;
  z-index:1200 !important;
  display:none;
  align-items:flex-start !important;
  justify-content:center !important;
  padding-top:112px !important;
  background:transparent !important;
  backdrop-filter:none !important;
  pointer-events:none !important;
}
.welcome-modal.show{display:flex !important;animation:toastOut 1.25s ease forwards;}
.welcome-panel{
  width:min(390px,calc(100vw - 32px)) !important;
  padding:16px 22px 18px !important;
  display:grid;
  grid-template-columns:52px 1fr;
  align-items:center;
  gap:14px;
  text-align:left !important;
  border:1px solid rgba(242,194,107,.48) !important;
  background:linear-gradient(135deg,rgba(8,7,5,.94),rgba(20,15,8,.92)) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08) !important;
  backdrop-filter:blur(14px);
  pointer-events:auto;
}
.welcome-logo{width:52px !important;margin:0 !important;grid-row:1/3;}
.welcome-slides{min-height:42px !important;}
.welcome-slide{align-items:flex-start !important;justify-content:center !important;gap:1px !important;}
.welcome-slide b{font-size:22px !important;line-height:1 !important;}
.welcome-slide span{font-size:11px !important;letter-spacing:.16em !important;color:#f2c26b !important;}
.welcome-close,.welcome-panel .btn{display:none !important;}
.welcome-progress{grid-column:1/-1;height:2px !important;margin-top:2px !important;background:rgba(255,255,255,.10) !important;}
.welcome-progress span{animation:welcomeProgress .95s linear forwards !important;}
@keyframes toastOut{
  0%{opacity:0;transform:translateY(-10px)}
  16%{opacity:1;transform:translateY(0)}
  78%{opacity:1;transform:translateY(0)}
  100%{opacity:0;transform:translateY(-8px);visibility:hidden}
}
@media(max-width:760px){
  .welcome-modal{padding-top:132px !important;}
  .welcome-panel{width:calc(100vw - 28px) !important;}
  .presence-copy{padding:28px !important;}
}
