.lp-wrap .lp-hero { display:block; text-align:center; padding:34px 16px 28px; overflow:hidden; }
.lp-hero-logo { width:clamp(210px,35vw,320px); height:auto; display:block; margin:0 auto 24px; }
.lp-wrap .lp-hero h1 { max-width:780px; margin:24px auto 14px; font-size:clamp(30px,4vw,52px); }
.lp-wrap .lp-hero p.lead { margin:0 auto 24px; max-width:600px; }
.lp-wrap .lp-cta-row { justify-content:center; }
.lp-wrap .lp-hero .lp-eyebrow { margin:0; }
.arc-gallery { position:relative; margin-top:24px; }
.arc-track { display:flex; gap:16px; overflow-x:auto; padding:20px 8px; }
.arc-track img { width:240px; height:200px; object-fit:contain; background:#FFFFFF; border:1px solid var(--border); border-radius:22px; flex-shrink:0; }
.arc-gallery.is-enhanced .arc-track { position:relative; height:clamp(310px,34vw,480px); overflow:hidden;  touch-action:pan-y; cursor:grab; }
.arc-gallery.is-enhanced .arc-track img { position:absolute; left:50%; top:20px; width:clamp(180px,22vw,280px); height:clamp(128px,15.6vw,199px); margin-left:clamp(-140px,-11vw,-90px); will-change:transform; -webkit-backface-visibility:hidden; backface-visibility:hidden; user-select:none; pointer-events:none; }
.arc-controls { display:flex; justify-content:center; gap:10px; margin:8px 0 20px; flex-wrap:wrap; }
.arc-controls button { font:inherit; font-weight:800; min-height:44px; min-width:44px; padding:8px 14px; border:1px solid var(--border); border-radius:999px; background:#FFFFFF; color:var(--brand); cursor:pointer; }
.arc-controls button:hover { border-color:var(--brand); }
.hero-heart { color:var(--accent); }
@media(prefers-reduced-motion:reduce) { .arc-track img { will-change:auto; } }
/* Landing-only composition follows the supplied full-width prototype. */
body.landing-page { --page-width:100%; }
body.landing-page .wrap { width:100%; max-width:none; }
body.landing-page .lp-wrap { margin:0; padding:0; }
body.landing-page .landing-header {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:18px clamp(16px,4vw,32px) 0; min-height:74px;
  position:relative; z-index:200; background:#FFFFFF;
}
body.landing-page .landing-header .lang-switch { margin:0; }
body.landing-page .landing-header select { max-width:45vw; min-height:44px; padding:10px 14px; }
body.landing-page .landing-header .section-menu-links {
  position:absolute; width:230px; max-width:calc(100vw - 32px); top:calc(100% + 10px); margin:0;
}
body.landing-page .lp-hero {
  border:0; border-radius:0; padding:clamp(24px,5vw,42px) 0 40px;
  box-shadow:none; overflow:hidden;
}
body.landing-page .lp-hero-logo { margin:0 auto 20px; width:clamp(210px,44vw,320px); }
body.landing-page .hero-account { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; padding:0 20px; margin:0 auto 28px; }
body.landing-page .hero-account a { padding:12px 18px; min-height:44px; border-radius:999px; }
body.landing-page .hero-account .acct-hi { padding:12px; }
body.landing-page .arc-gallery { margin-top:0; }
body.landing-page .lp-hero h1 { max-width:720px; padding:0 20px; margin:16px auto 14px; font-size:clamp(28px,4vw,44px); }
body.landing-page .lp-hero p.lead { max-width:520px; padding:0 20px; font-size:16px; line-height:1.5; margin:0 auto 20px; }
body.landing-page .lp-cta-row { padding:0 20px; }
body.landing-page .lp-section, body.landing-page .lp-stats, body.landing-page .lp-final { border-radius:0; margin-inline:0; padding-inline:clamp(20px,4vw,64px); }
@media(max-width:700px) {
  body.landing-page .hero-account { flex-direction:column; max-width:300px; gap:6px; align-items:stretch; }
  body.landing-page .hero-account a { justify-content:center; text-align:center; }
}

body.landing-page .arc-gallery, body.landing-page .arc-track { width:100%; max-width:none; }

/* Controls stay hidden; leave room at the sides while pulling the centre copy up. */
body.landing-page .arc-controls { display:none; }
body.landing-page .lp-hero h1 { position:relative; z-index:110; margin-top:clamp(-110px,-7vw,-35px); }
body.landing-page .lp-hero p.lead, body.landing-page .lp-cta-row { position:relative; z-index:110; }
