.eucnff-gc {
  --black: #050505; --ink: #141414; --red: #c8241d; --line: #e5e5e5; --muted: #717171; --soft: #f6f6f4;
  width: 100%; overflow: hidden; color: var(--ink); font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
}
.eucnff-gc * { box-sizing: border-box; }
.eucnff-gc a { color: inherit; text-decoration: none; }
.eucnff-gc img { display: block; max-width: 100%; }
body.eucnff-gc-page .entry-title, body.eucnff-gc-page .page-title, body.eucnff-gc-page .site-header, body.eucnff-gc-page .site-footer, body.eucnff-gc-page #colophon, body:has(.eucnff-gc) .entry-title, body:has(.eucnff-gc) .page-title, body:has(.eucnff-gc) .site-header, body:has(.eucnff-gc) .site-footer, body:has(.eucnff-gc) #colophon { display: none !important; }
body.eucnff-gc-page .site-content, body.eucnff-gc-page .content-area, body.eucnff-gc-page .site-main, body.eucnff-gc-page article, body.eucnff-gc-page .entry-content, body.eucnff-gc-page .container, body.eucnff-gc-page .wrap, body:has(.eucnff-gc) .entry-content { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.eucnff-gc-header { position: fixed; inset: 0 0 auto; z-index: 30; min-height: 76px; padding: 16px 5vw; display: grid; grid-template-columns: 190px 1fr auto; gap: 28px; align-items: center; color: #fff; background: linear-gradient(180deg, rgba(0,0,0,.8), rgba(0,0,0,0)); }
.eucnff-gc-brand { font-size: 11px; font-weight: 900; line-height: .95; letter-spacing: .13em; }
.eucnff-gc-header nav { display: flex; justify-content: center; gap: 26px; }
.eucnff-gc-header nav a, .eucnff-gc-lang { font-size: 11px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.eucnff-gc-header nav a[aria-current="page"] { color: #fff; text-decoration: underline; text-decoration-color: var(--red); text-decoration-thickness: 2px; text-underline-offset: 7px; }
.eucnff-gc-lang { display:flex; gap:10px; color: #fff; white-space:nowrap; } .eucnff-gc-lang button { padding:0; border:0; color:rgba(255,255,255,.58); background:transparent; font:inherit; letter-spacing:inherit; cursor:pointer; } .eucnff-gc-lang button.is-active { color:#fff; }
.eucnff-gc-kicker { margin: 0 0 20px; color: var(--red); font-size: 12px; font-weight: 900; letter-spacing: .2em; text-transform: uppercase; }
.eucnff-gallery-hero, .eucnff-contact-hero { min-height: 76vh; padding: 158px 7vw 88px; color: #fff; background: radial-gradient(circle at 16% 66%, rgba(200,36,29,.45), transparent 29%), linear-gradient(135deg, #060606, #1a0c0a); }
.eucnff-gallery-hero h1, .eucnff-contact-hero h1, .eucnff-gallery-intro h2, .eucnff-gallery-footer-cta h2, .eucnff-contact-grid h2 { margin: 0; font-size: clamp(54px, 8vw, 128px); line-height: .83; letter-spacing: -.095em; font-weight: 900; text-wrap: balance; }
.eucnff-gallery-hero > p:last-child, .eucnff-contact-hero > p:last-child { max-width: 660px; margin: 34px 0 0; color: rgba(255,255,255,.72); font-size: 21px; line-height: 1.55; }
.eucnff-gallery-intro { padding: 112px 7vw 80px; max-width: 1300px; }
.eucnff-gallery-intro h2 { max-width: 1080px; font-size: clamp(43px, 5.4vw, 82px); color: var(--ink); }
.eucnff-gallery-intro > p:last-child { max-width: 640px; margin: 30px 0 0; color: var(--muted); font-size: 18px; line-height: 1.65; }
.eucnff-gallery-grid { padding: 0 3vw 110px; display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-flow: dense; gap: 14px; background: #fff; }
.eucnff-gallery-item { position: relative; min-height: 250px; margin: 0; overflow: hidden; background: #ddd; }
.eucnff-gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.eucnff-gallery-item:hover img { transform: scale(1.04); }
.eucnff-gallery-item figcaption { position: absolute; inset: auto 0 0; padding: 34px 20px 18px; color: #fff; background: linear-gradient(transparent, rgba(0,0,0,.78)); font-size: 12px; font-weight: 800; letter-spacing: .05em; }
.eucnff-gallery-item figcaption span { display: block; margin-bottom: 6px; color: rgba(255,255,255,.64); font: 700 28px/.8 Georgia, serif; }
.eucnff-gallery-item.item-1 { grid-column: span 7; grid-row: span 2; min-height: 520px; }
.eucnff-gallery-item.item-2 { grid-column: span 5; }.eucnff-gallery-item.item-3 { grid-column: span 5; }.eucnff-gallery-item.item-4 { grid-column: span 4; }.eucnff-gallery-item.item-5 { grid-column: span 8; }.eucnff-gallery-item.item-6 { grid-column: span 4; }.eucnff-gallery-item.item-7 { grid-column: span 4; }.eucnff-gallery-item.item-8 { grid-column: span 4; }.eucnff-gallery-item.item-9 { grid-column: span 8; }.eucnff-gallery-item.item-10 { grid-column: span 7; grid-row: span 2; min-height: 520px; }.eucnff-gallery-item.item-11 { grid-column: span 5; }.eucnff-gallery-item.item-12 { grid-column: span 5; }
.eucnff-gallery-footer-cta { padding: 112px 7vw; color: #fff; background: var(--black); }.eucnff-gallery-footer-cta h2 { max-width: 900px; font-size: clamp(46px, 6vw, 94px); }.eucnff-gallery-footer-cta a, .eucnff-contact-button { display: inline-flex; align-items: center; min-height: 50px; margin-top: 34px; padding: 0 22px; color: #fff; background: var(--red); font-size: 12px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.eucnff-contact-hero { min-height: 66vh; }.eucnff-contact-grid { padding: 0 7vw 108px; display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 1px; background: var(--line); }.eucnff-contact-grid article { min-height: 420px; padding: 42px 34px; background: #fff; }.eucnff-contact-grid h2 { font-size: clamp(26px, 2.15vw, 38px); line-height: 1.02; letter-spacing: -.045em; color: var(--ink); }.eucnff-contact-grid p:not(.eucnff-gc-kicker) { margin: 28px 0 0; color: var(--muted); font-size: 16px; line-height: 1.7; }.eucnff-contact-primary { color: #fff; background: var(--black) !important; }.eucnff-contact-primary a { display: inline-block; margin-top: 82px; color: #fff; font-size: clamp(24px, 2.2vw, 36px); line-height: 1; letter-spacing: -.045em; font-weight: 900; }.eucnff-contact-primary p:not(.eucnff-gc-kicker) { color: rgba(255,255,255,.65); }.eucnff-contact-note { padding: 88px 7vw; background: var(--soft); }.eucnff-contact-note > p:nth-child(2) { margin: 0; font-size: clamp(36px, 4.4vw, 72px); line-height: .9; letter-spacing: -.08em; font-weight: 900; }.eucnff-contact-privacy { display:inline-flex; margin-top:32px; color:var(--ink); font-size:12px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; text-decoration:none; border-bottom:2px solid var(--red); padding-bottom:5px; }
@media (max-width: 900px) { .eucnff-gc-header { grid-template-columns: 150px 1fr auto; }.eucnff-gc-lang { display:flex; gap:8px; }.eucnff-gallery-grid { grid-template-columns: repeat(2, 1fr); }.eucnff-gallery-item, .eucnff-gallery-item.item-1, .eucnff-gallery-item.item-2, .eucnff-gallery-item.item-3, .eucnff-gallery-item.item-4, .eucnff-gallery-item.item-5, .eucnff-gallery-item.item-6, .eucnff-gallery-item.item-7, .eucnff-gallery-item.item-8, .eucnff-gallery-item.item-9, .eucnff-gallery-item.item-10, .eucnff-gallery-item.item-11, .eucnff-gallery-item.item-12 { grid-column: span 1; grid-row: span 1; min-height: 300px; }.eucnff-contact-grid { grid-template-columns: 1fr; } }
@media (max-width: 680px) { .eucnff-gc-header { position: absolute; display: block; }.eucnff-gc-header nav { justify-content: flex-start; flex-wrap: wrap; margin-top: 16px; gap: 13px; }.eucnff-gc-lang { position:absolute; top:18px; right:22px; }.eucnff-gallery-hero, .eucnff-contact-hero, .eucnff-gallery-intro, .eucnff-gallery-footer-cta, .eucnff-contact-note { padding-left: 22px; padding-right: 22px; }.eucnff-contact-grid { padding-left: 22px; padding-right: 22px; }.eucnff-gallery-hero h1, .eucnff-contact-hero h1 { font-size: 52px; }.eucnff-gallery-grid { padding-left: 12px; padding-right: 12px; gap: 8px; }.eucnff-gallery-item, .eucnff-gallery-item.item-1, .eucnff-gallery-item.item-2, .eucnff-gallery-item.item-3, .eucnff-gallery-item.item-4, .eucnff-gallery-item.item-5, .eucnff-gallery-item.item-6, .eucnff-gallery-item.item-7, .eucnff-gallery-item.item-8, .eucnff-gallery-item.item-9, .eucnff-gallery-item.item-10, .eucnff-gallery-item.item-11, .eucnff-gallery-item.item-12 { min-height: 190px; }.eucnff-contact-grid article { min-height: 330px; }.eucnff-contact-grid h2 { font-size: 28px; }.eucnff-contact-primary a { margin-top: 48px; font-size: 30px; } }
