/* Shared premium system for Angebote, Über uns and Kontakt. */
:root { --sub-green:#19e783; --sub-ink:#101713; --sub-deep:#13241c; --sub-graphite:#25282b; }
body.subpage { overflow-x:clip; background:#e8eeeb; color:var(--sub-ink); }
body.subpage .section { position:relative; margin-top:-3px; overflow:clip; padding-block:clamp(110px,11vw,180px); }
body.subpage .section-inner { position:relative; z-index:2; max-width:1360px; }
body.subpage .section-h { font-size:clamp(3.7rem,7.5vw,8.4rem); line-height:.9; letter-spacing:-.055em; }
body.subpage .eyebrow-label { font-weight:800; letter-spacing:.18em; text-transform:uppercase; }

body.subpage nav { box-shadow:0 1px 0 rgba(20,35,27,.08); }
body.subpage .nav-inner { background:rgba(244,248,246,.82); -webkit-backdrop-filter:blur(26px) saturate(150%); backdrop-filter:blur(26px) saturate(150%); }

body.subpage .page-hero {
  --hero-p:0; isolation:isolate; position:relative; overflow:hidden; min-height:calc(100svh - 82px);
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start; text-align:left;
  padding:clamp(120px,14vw,210px) max(24px,calc((100vw - 1360px)/2)) clamp(150px,15vw,220px);
  color:#f8fbf9;
  background:
    radial-gradient(ellipse at 15% 22%,rgba(46,233,143,.35),transparent 36%),
    radial-gradient(ellipse at 86% 70%,rgba(158,110,231,.26),transparent 38%),
    linear-gradient(142deg,#102219 0%,#27473a 46%,#4e665b 74%,#8fa39a 100%);
}
body.subpage .page-hero::before {
  content:attr(data-ghost); position:absolute; z-index:-1; left:-.04em; top:50%; white-space:nowrap;
  font-size:clamp(9rem,24vw,27rem); font-weight:850; line-height:.7; letter-spacing:-.075em;
  color:rgba(255,255,255,.055); transform:translate3d(var(--hero-x,-3vw),calc(-50% + var(--hero-y,0px)),0) scale(var(--hero-scale,1));
  pointer-events:none; will-change:transform;
}
body.subpage .page-hero::after {
  content:""; position:absolute; inset:auto 0 0; height:clamp(130px,15vw,240px); z-index:-1;
  background:linear-gradient(180deg,transparent,var(--hero-end,#dfe8e3)); pointer-events:none;
}
body.subpage .page-hero .display {
  max-width:11ch; margin:12px 0 0; font-size:clamp(4.4rem,10vw,11rem); line-height:.82;
  letter-spacing:-.075em; text-wrap:balance; transform:translate3d(var(--hero-copy-x,0),var(--hero-copy-y,0),0);
}
body.subpage .page-hero .thin { color:rgba(255,255,255,.58); font-weight:500; }
body.subpage .page-hero .sub,body.subpage .page-hero .condition { color:rgba(255,255,255,.72); font-size:clamp(1rem,1.5vw,1.25rem); }
body.subpage .page-hero .btn-primary { box-shadow:0 18px 60px rgba(0,0,0,.2),0 0 0 1px rgba(255,255,255,.18); }

/* Shared glass surfaces */
body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card,.faq-item) {
  border:1px solid transparent;
  background:
    linear-gradient(145deg,rgba(255,255,255,.88),rgba(232,242,237,.68)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(39,229,139,.64),rgba(169,117,235,.52),rgba(255,255,255,.42)) border-box;
  -webkit-backdrop-filter:blur(34px) saturate(155%); backdrop-filter:blur(34px) saturate(155%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 30px 86px rgba(18,48,34,.16);
}
body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card) { border-radius:32px; }
body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card) {
  transition:opacity 620ms cubic-bezier(.2,.72,.2,1),transform 560ms cubic-bezier(.2,.72,.2,1),box-shadow 420ms ease,background 360ms ease;
}
body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card):hover {
  transform:translate3d(0,-10px,0) scale(1.012);
  box-shadow:inset 0 1px 0 #fff,0 42px 110px rgba(18,48,34,.23);
}

/* Offers: every merchandise family gets its own tonal stage, with slow side motion. */
.subpage-offers .page-hero { --hero-end:#dce7e1; }
.subpage-offers #iphone {
  background:radial-gradient(ellipse at 88% 18%,rgba(156,109,226,.16),transparent 34%),linear-gradient(180deg,#dce7e1,#eef3f0 38%,#cbd9d2 100%);
}
.subpage-offers #samsung {
  background:radial-gradient(ellipse at 12% 30%,rgba(34,224,134,.2),transparent 34%),linear-gradient(180deg,#cbd9d2,#40564b 30%,#17271f 100%);
}
.subpage-offers #tarife {
  background:radial-gradient(ellipse at 82% 38%,rgba(173,123,237,.18),transparent 38%),linear-gradient(180deg,#17271f,#3f554a 28%,#aebfb6 70%,#dfe8e3 100%);
}
.subpage-offers #vip { background:radial-gradient(ellipse at 14% 28%,rgba(36,225,137,.28),transparent 36%),radial-gradient(ellipse at 87% 65%,rgba(156,105,224,.25),transparent 39%),linear-gradient(145deg,#15241d,#262c29 52%,#35363c) !important; }
.subpage-offers #zubehoer { background:linear-gradient(180deg,#35363c,#667870 20%,#d4dfd9 58%,#edf2ef 100%); }
.subpage-offers #internet { background:radial-gradient(ellipse at 18% 35%,rgba(35,226,137,.2),transparent 38%),linear-gradient(180deg,#edf2ef,#bccbc4 53%,#667970 100%) !important; }
.subpage-offers > .section.center { background:linear-gradient(180deg,#667970,#31473b 45%,#19271f 100%); color:#fff; }
.subpage-offers .grid { gap:clamp(18px,2.2vw,30px); }
.subpage-offers .pcard { min-height:620px; padding:20px; }
.subpage-offers .pcard-media { aspect-ratio:1/1; border-radius:24px; background:rgba(246,249,247,.64); overflow:hidden; }
.subpage-offers .pcard-media img { max-height:92%; object-fit:contain; }
.subpage-offers .pcard-featured { box-shadow:inset 0 1px 0 #fff,0 35px 96px rgba(27,65,47,.22); }
.subpage-offers #samsung .section-h,.subpage-offers #samsung .eyebrow-label { color:#fff; }
.subpage-offers #samsung .pcard { color:var(--sub-ink); }
.subpage-offers #tarife .tarif-card:nth-child(2n),.subpage-offers #zubehoer .tile:nth-child(2n),.subpage-offers #internet .tile:nth-child(2n) { transform:translateY(24px); }
.subpage-offers .provider-row { padding:20px 26px; border-radius:999px; background:rgba(255,255,255,.45); -webkit-backdrop-filter:blur(22px); backdrop-filter:blur(22px); }

/* Product configurator: dense glass with a clearly blurred page beneath it. */
.subpage-offers .sheet-scrim {
  background:rgba(8,18,13,.34);
  -webkit-backdrop-filter:blur(18px) saturate(125%); backdrop-filter:blur(18px) saturate(125%);
}
.subpage-offers .sheet {
  width:min(720px,calc(100vw - 28px));
  padding:26px 30px 30px;
  border:1px solid transparent;
  border-radius:36px;
  color:var(--sub-ink);
  background:
    linear-gradient(145deg,rgba(250,253,251,.9),rgba(225,237,231,.78)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(38,229,139,.72),rgba(167,116,235,.62),rgba(255,255,255,.8)) border-box;
  -webkit-backdrop-filter:blur(52px) saturate(175%); backdrop-filter:blur(52px) saturate(175%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 40px 120px rgba(7,29,18,.38),0 10px 30px rgba(12,43,27,.18);
}
.subpage-offers .sheet-img {
  height:clamp(190px,28vh,270px); margin:4px 0 18px; border:1px solid rgba(255,255,255,.76);
  border-radius:26px; background:rgba(244,249,246,.58);
  -webkit-backdrop-filter:blur(28px) saturate(145%); backdrop-filter:blur(28px) saturate(145%);
  box-shadow:inset 0 1px 0 #fff,0 18px 52px rgba(20,57,39,.11);
}
.subpage-offers .sheet h3 { font-size:clamp(1.8rem,4vw,2.7rem); font-weight:780; letter-spacing:-.045em; }
.subpage-offers .sheet-label { margin-top:20px; letter-spacing:.16em; color:rgba(16,23,19,.58); }
.subpage-offers .chip-row { gap:9px; }
.subpage-offers .chip {
  min-height:46px; padding:10px 16px; border:1px solid rgba(255,255,255,.78); border-radius:15px;
  background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(226,239,233,.5));
  -webkit-backdrop-filter:blur(22px) saturate(150%); backdrop-filter:blur(22px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 10px 26px rgba(19,55,37,.09);
}
.subpage-offers .chip:hover { transform:translateY(-2px); box-shadow:inset 0 1px 0 #fff,0 14px 30px rgba(19,55,37,.14); }
.subpage-offers .chip.sel {
  border-color:rgba(23,224,128,.9); color:#075d34;
  background:linear-gradient(145deg,rgba(226,255,241,.94),rgba(186,242,216,.74));
  box-shadow:inset 0 1px 0 #fff,0 12px 32px rgba(21,197,112,.18);
}
.subpage-offers .chip-row[data-group="model"] .chip { flex:1 1 145px; justify-content:center; }
.subpage-offers .sheet-close { top:18px; right:18px; background:rgba(246,250,248,.72); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); box-shadow:0 8px 24px rgba(19,48,34,.14); }
.subpage-offers .sheet .btn-primary { min-height:56px; border-radius:999px; box-shadow:0 18px 45px rgba(11,141,76,.22),inset 0 1px 0 rgba(255,255,255,.6); }

/* About: text becomes the visual asset until real portraits exist. */
.subpage-about .page-hero { --hero-end:#dce7e1; }
.subpage-about > .section:nth-of-type(2) { background:linear-gradient(180deg,#dce7e1,#edf2ef 55%,#cad8d1); }
.subpage-about > .section:nth-of-type(3) { background:linear-gradient(180deg,#cad8d1,#71867b 54%,#344a3e); }
.subpage-about > .section:nth-of-type(4) { background:radial-gradient(ellipse at 12% 28%,rgba(45,229,142,.2),transparent 35%),linear-gradient(180deg,#344a3e,#17271f 34%,#23372d 100%); color:#fff; }
.subpage-about > .section:nth-of-type(5) { background:linear-gradient(180deg,#23372d,#53695e 45%,#aebeb6 100%) !important; }
.subpage-about > .section:nth-of-type(6) { background:linear-gradient(180deg,#aebeb6,#e7eeea 48%,#8fa199 100%); }
.subpage-about .body-col { max-width:860px; font-size:clamp(1.5rem,2.7vw,2.8rem); line-height:1.18; letter-spacing:-.03em; }
.subpage-about .body-col p + p { margin-top:1.2em; color:#57665f; }
.subpage-about .stat-row > div { border:1px solid rgba(255,255,255,.45); background:rgba(255,255,255,.34); border-radius:28px; -webkit-backdrop-filter:blur(28px); backdrop-filter:blur(28px); }
.subpage-about .team-grid-text { grid-template-columns:.8fr 1.4fr; gap:22px; }
.subpage-about .team-card { min-height:560px; padding:38px; text-align:left; justify-content:space-between; color:#fff; }
.subpage-about .team-lead { background:linear-gradient(145deg,rgba(41,102,76,.9),rgba(104,148,129,.72)) padding-box,linear-gradient(135deg,#fff,#25e28a,#a979e9) border-box; }
.subpage-about .team-promise { background:linear-gradient(145deg,rgba(38,42,41,.92),rgba(83,72,106,.78)) padding-box,linear-gradient(135deg,#fff,#25e28a,#a979e9) border-box; }
.subpage-about .team-index { font-size:.8rem; font-weight:800; letter-spacing:.18em; }
.subpage-about .team-card h3 { font-size:clamp(2.8rem,5vw,6rem); line-height:.9; letter-spacing:-.06em; }
.subpage-about .team-card p { margin-top:18px; color:rgba(255,255,255,.68); font-size:1rem; }
.subpage-about > .section.dark .tile { min-height:270px; padding:32px; color:var(--sub-ink); }

/* Contact: the address numbers become layered location markers. */
.subpage-contact .page-hero { --hero-end:#dce7e1; }
.subpage-contact #standorte { background:radial-gradient(ellipse at 86% 22%,rgba(159,111,230,.17),transparent 34%),linear-gradient(180deg,#dce7e1,#edf2ef 42%,#c2d1ca 100%); }
.subpage-contact > .section:nth-of-type(3) { background:linear-gradient(180deg,#c2d1ca,#688077 45%,#253b31 100%) !important; color:#fff; }
.subpage-contact #business { background:radial-gradient(ellipse at 18% 34%,rgba(42,229,139,.24),transparent 38%),linear-gradient(180deg,#253b31,#17271f 48%,#303b36 100%); color:#fff; }
.subpage-contact > .section.dark { background:linear-gradient(180deg,#303b36,#50635a 45%,#1d2923 100%) !important; }
.subpage-contact .loc-grid { gap:24px; }
.subpage-contact .loc-card { overflow:hidden; }
.subpage-contact .location-stage { position:relative; isolation:isolate; min-height:390px; padding:28px; overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background:linear-gradient(145deg,#173d2e,#628477 58%,#b0c4bb); }
.subpage-contact .loc-card:nth-child(2) .location-stage { background:linear-gradient(145deg,#28263b,#756494 58%,#b9adcc); }
.subpage-contact .location-stage::before { content:""; position:absolute; z-index:-1; inset:8% -15% auto 30%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.42),transparent 67%); }
.subpage-contact .location-stage span { font-size:clamp(7rem,15vw,14rem); line-height:.72; font-weight:850; letter-spacing:-.08em; }
.subpage-contact .location-stage small { margin-top:24px; font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; }
.subpage-contact .loc-map { height:70px; background:rgba(235,244,240,.82); -webkit-backdrop-filter:blur(24px); backdrop-filter:blur(24px); }
.subpage-contact .loc-body { padding:30px; }
.subpage-contact .loc-body h2 { font-size:clamp(1.8rem,3vw,3.2rem); letter-spacing:-.04em; }
.subpage-contact .lang-row { font-size:clamp(1.8rem,4.3vw,5rem); line-height:1; letter-spacing:-.035em; }
.subpage-contact .lang-row span { color:rgba(255,255,255,.58); }
.subpage-contact .faq { max-width:920px; margin-inline:auto; }
.subpage-contact .faq-item { margin-top:12px; background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.1)) padding-box,linear-gradient(135deg,rgba(255,255,255,.65),rgba(39,229,139,.46),rgba(169,117,235,.4)) border-box; }
.subpage-contact .faq-q,.subpage-contact .faq-a { color:#fff; }
.subpage-contact .faq-a-inner p { color:rgba(255,255,255,.68); }

/* About + Contact refinement: one continuous silver/graphite atmosphere.
   The scale follows a 1.618 rhythm, while the decorative type sits on its
   own slow layer behind the usable content. */
.subpage-about,.subpage-contact {
  --glass-radius:clamp(32px,3vw,46px);
  --gold-space-1:clamp(18px,2vw,26px);
  --gold-space-2:clamp(30px,3.4vw,42px);
  --gold-space-3:clamp(48px,5.5vw,68px);
}
.subpage-about .section-h,.subpage-contact .section-h {
  max-width:12ch; margin-inline:auto; font-size:clamp(3.25rem,6.85vw,7.4rem);
  line-height:.94; letter-spacing:-.048em;
}
body.subpage > .section[data-layer-text]::before {
  content:attr(data-layer-text); position:absolute; z-index:0; top:50%; left:-8vw;
  width:max-content; max-width:none; white-space:nowrap; pointer-events:none;
  font-size:clamp(7rem,18vw,20rem); font-weight:850; line-height:.72;
  letter-spacing:.035em; color:rgba(255,255,255,.095);
  transform:translate3d(var(--layer-x,0),-50%,0); will-change:transform;
}
body.subpage > .section[data-layer-text]:nth-of-type(even)::before { left:auto; right:-10vw; color:rgba(20,50,35,.065); }
body.subpage > .section[data-layer-text]::after {
  content:""; position:absolute; z-index:1; inset:0; pointer-events:none;
  background:radial-gradient(ellipse at var(--glow-x,18%) 46%,rgba(52,233,148,.12),transparent 38%);
  mix-blend-mode:soft-light;
}
body.subpage > .section[data-layer-text] .section-inner { position:relative; z-index:2; }

body:is(.subpage-about,.subpage-contact) :is(.team-card,.tile,.loc-card,.faq-item,.stat-row>div) {
  border-radius:var(--glass-radius);
  border:1px solid transparent;
  background:
    linear-gradient(145deg,rgba(250,253,251,.78),rgba(220,235,227,.56)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(39,229,139,.52),rgba(169,117,235,.45),rgba(255,255,255,.58)) border-box;
  -webkit-backdrop-filter:blur(46px) saturate(165%); backdrop-filter:blur(46px) saturate(165%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 34px 90px rgba(10,40,25,.17),0 8px 24px rgba(10,40,25,.08);
}

/* About: connected color endpoints and asymmetric glass layers. */
.subpage-about .page-hero { --hero-end:#dbe8e1; }
.subpage-about > .section:nth-of-type(2) {
  background:radial-gradient(ellipse at 15% 30%,rgba(46,232,143,.14),transparent 40%),linear-gradient(180deg,#dbe8e1 0%,#e8efeb 48%,#c8d8d0 100%);
}
.subpage-about > .section:nth-of-type(3) {
  background:radial-gradient(ellipse at 84% 42%,rgba(164,116,232,.16),transparent 38%),linear-gradient(180deg,#c8d8d0 0%,#8da198 54%,#40574b 100%);
}
.subpage-about > .section:nth-of-type(4) {
  background:radial-gradient(ellipse at 14% 28%,rgba(45,229,142,.2),transparent 38%),linear-gradient(180deg,#40574b 0%,#223a2e 46%,#182a21 100%);
}
.subpage-about > .section:nth-of-type(5) {
  background:radial-gradient(ellipse at 84% 54%,rgba(166,116,233,.17),transparent 40%),linear-gradient(180deg,#182a21 0%,#31483c 50%,#82968c 100%) !important;
}
.subpage-about > .section:nth-of-type(6) {
  background:linear-gradient(180deg,#82968c 0%,#b8c8c0 36%,#2e4438 100%);
  color:#fff;
}
.subpage-about .body-col {
  position:relative; max-width:960px; padding:var(--gold-space-3);
  border:1px solid rgba(255,255,255,.75); border-radius:var(--glass-radius);
  background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(222,237,229,.44));
  -webkit-backdrop-filter:blur(42px) saturate(155%); backdrop-filter:blur(42px) saturate(155%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 38px 100px rgba(19,54,36,.14);
  font-size:clamp(1.42rem,2.35vw,2.3rem); line-height:1.32; letter-spacing:-.022em;
}
.subpage-about .body-col p + p { margin-top:1.618em; color:#43564c; }
.subpage-about .stat-row { gap:var(--gold-space-1); }
.subpage-about .stat-row > div { min-height:210px; padding:var(--gold-space-2); display:flex; flex-direction:column; justify-content:center; }
.subpage-about .stat-row b { font-size:clamp(2.75rem,5.5vw,5.4rem); font-weight:780; letter-spacing:-.045em; }
.subpage-about .stat-row span { margin-top:12px; letter-spacing:.11em; line-height:1.45; }
.subpage-about .team-grid-text { grid-template-columns:.764fr 1.236fr; gap:var(--gold-space-1); }
.subpage-about .team-card { min-height:clamp(460px,48vw,650px); padding:var(--gold-space-2); }
.subpage-about .team-lead {
  background:linear-gradient(145deg,rgba(20,64,46,.88),rgba(76,116,99,.7)) padding-box,linear-gradient(135deg,rgba(255,255,255,.86),rgba(39,229,139,.72),rgba(169,117,235,.5)) border-box;
}
.subpage-about .team-promise {
  background:linear-gradient(145deg,rgba(28,39,34,.9),rgba(74,61,94,.76)) padding-box,linear-gradient(135deg,rgba(255,255,255,.8),rgba(39,229,139,.58),rgba(169,117,235,.72)) border-box;
}
.subpage-about .team-card .team-index { color:rgba(255,255,255,.72); }
.subpage-about .team-card h3 { font-size:clamp(2.8rem,5.3vw,6.2rem); line-height:.98; letter-spacing:-.045em; }
.subpage-about .team-card p { max-width:34ch; color:rgba(255,255,255,.78); font-size:1.05rem; line-height:1.55; }
.subpage-about > .section.dark .tile { min-height:300px; padding:var(--gold-space-2); color:var(--sub-ink); }
.subpage-about > .section.dark .tile h3 { font-size:clamp(1.75rem,2.5vw,2.6rem); letter-spacing:-.035em; }
.subpage-about > .section.dark .tile p { margin-top:14px; font-size:1rem; line-height:1.55; }
.subpage-about > .section:nth-of-type(6) .section-inner {
  padding:var(--gold-space-3); border:1px solid rgba(255,255,255,.26); border-radius:var(--glass-radius);
  background:rgba(245,250,247,.12); -webkit-backdrop-filter:blur(42px) saturate(150%); backdrop-filter:blur(42px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36),0 38px 100px rgba(10,34,22,.22);
}

/* Contact: cards stay legible glass while the address and language layers move behind them. */
.subpage-contact .page-hero { --hero-end:#dbe8e1; }
.subpage-contact #standorte {
  background:radial-gradient(ellipse at 86% 24%,rgba(159,111,230,.16),transparent 38%),linear-gradient(180deg,#dbe8e1 0%,#e9f0ec 48%,#c3d3cb 100%);
}
.subpage-contact > .section:nth-of-type(3) {
  background:radial-gradient(ellipse at 12% 36%,rgba(42,229,139,.17),transparent 42%),linear-gradient(180deg,#c3d3cb 0%,#71877c 50%,#30473b 100%) !important;
}
.subpage-contact #business {
  background:radial-gradient(ellipse at 82% 30%,rgba(160,111,232,.2),transparent 40%),linear-gradient(180deg,#30473b 0%,#1b3026 54%,#273b31 100%);
}
.subpage-contact > .section.dark {
  background:radial-gradient(ellipse at 20% 20%,rgba(42,229,139,.14),transparent 40%),linear-gradient(180deg,#273b31 0%,#40564b 48%,#1d2d25 100%) !important;
}
.subpage-contact .loc-grid { position:relative; gap:var(--gold-space-1); }
.subpage-contact .loc-grid::before {
  content:""; position:absolute; inset:12% 18%; border-radius:50%; background:rgba(64,232,153,.26);
  filter:blur(90px); pointer-events:none;
}
.subpage-contact .loc-card { position:relative; overflow:hidden; }
.subpage-contact .location-stage { min-height:clamp(340px,34vw,500px); padding:var(--gold-space-2); border-radius:calc(var(--glass-radius) - 2px) calc(var(--glass-radius) - 2px) 24px 24px; }
.subpage-contact .location-stage span { font-size:clamp(8rem,17vw,16rem); letter-spacing:-.055em; }
.subpage-contact .loc-map { margin:14px; border-radius:999px; background:rgba(238,247,242,.62); -webkit-backdrop-filter:blur(28px); backdrop-filter:blur(28px); }
.subpage-contact .loc-body { padding:var(--gold-space-2); }
.subpage-contact .loc-body h2 { font-size:clamp(1.9rem,3.2vw,3.4rem); line-height:1.05; letter-spacing:-.035em; }
.subpage-contact .loc-body p { font-size:1.02rem; line-height:1.62; }
.subpage-contact > .section:nth-of-type(3) .section-inner,
.subpage-contact #business .section-inner {
  padding:var(--gold-space-3); border:1px solid rgba(255,255,255,.25); border-radius:var(--glass-radius);
  background:rgba(239,248,243,.14); -webkit-backdrop-filter:blur(44px) saturate(155%); backdrop-filter:blur(44px) saturate(155%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36),0 38px 100px rgba(9,33,21,.2);
}
.subpage-contact .lang-row { gap:var(--gold-space-1) var(--gold-space-2); font-size:clamp(2rem,4.5vw,5.2rem); line-height:1.12; letter-spacing:.015em; }
.subpage-contact .faq { margin-top:var(--gold-space-2) !important; }
.subpage-contact .faq-item { border-radius:30px; background:linear-gradient(145deg,rgba(247,252,249,.2),rgba(214,231,222,.11)) padding-box,linear-gradient(135deg,rgba(255,255,255,.62),rgba(39,229,139,.4),rgba(169,117,235,.35)) border-box; }
.subpage-contact .faq-q { min-height:76px; padding:20px 26px; font-size:1.05rem; }
.subpage-contact .faq-more { margin-top:16px; border-radius:999px; -webkit-backdrop-filter:blur(30px); backdrop-filter:blur(30px); }

/* Contact completion: direct routes, complete location cards and connected stages. */
.subpage-contact .contact-hero-copy { max-width:620px; margin:28px 0 0; }
.subpage-contact .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:34px; }
.subpage-contact .page-hero .btn-ghost {
  color:#fff; border-color:rgba(255,255,255,.42); background:rgba(255,255,255,.1);
  -webkit-backdrop-filter:blur(24px); backdrop-filter:blur(24px);
}
.subpage-contact .page-hero .condition { margin-top:20px; letter-spacing:.025em; }
.subpage-contact #standorte { padding-top:clamp(120px,12vw,190px); }
.subpage-contact #standorte .section-intro { max-width:900px; margin:0 auto clamp(54px,7vw,92px); text-align:center; }
.subpage-contact #standorte .section-intro .section-h { max-width:10ch; margin-top:18px; }
.subpage-contact #standorte .section-intro p { max-width:620px; margin:24px auto 0; color:#53655c; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.6; }
.subpage-contact .loc-card {
  background:linear-gradient(145deg,rgba(252,255,253,.82),rgba(218,233,225,.66)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(39,229,139,.6),rgba(169,117,235,.54)) border-box !important;
}
.subpage-contact .location-stage { margin:12px 12px 0; border-radius:calc(var(--glass-radius) - 9px); }
.subpage-contact .loc-kicker { display:block; margin-bottom:12px; color:#557064; font-size:.72rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.subpage-contact .loc-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.subpage-contact .loc-actions a {
  min-height:48px; display:inline-flex; align-items:center; justify-content:center; padding:0 18px; border-radius:999px;
  font-size:.88rem; font-weight:750; transition:transform .25s ease,background .25s ease;
}
.subpage-contact .loc-actions a:hover { transform:translateY(-3px); }
.subpage-contact .loc-actions .loc-map { height:auto; margin:0; color:#092619; background:#20e586; }
.subpage-contact .loc-phone { color:#183027; background:rgba(255,255,255,.56); border:1px solid rgba(255,255,255,.8); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); }
.subpage-contact .contact-channels {
  background:radial-gradient(ellipse at 18% 38%,rgba(39,229,139,.22),transparent 40%),
    radial-gradient(ellipse at 88% 62%,rgba(169,117,235,.18),transparent 38%),
    linear-gradient(180deg,#c3d3cb 0%,#879c91 42%,#60766b 100%) !important;
}
.subpage-contact .contact-channels .section-inner { padding:0; border:0; border-radius:0; background:transparent; -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:none; }
.subpage-contact .channel-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--gold-space-1); }
.subpage-contact .channel-card {
  min-height:clamp(420px,38vw,560px); padding:var(--gold-space-2); border:1px solid transparent; border-radius:var(--glass-radius);
  display:flex; flex-direction:column; align-items:flex-start; color:#fff; overflow:hidden;
  -webkit-backdrop-filter:blur(48px) saturate(165%); backdrop-filter:blur(48px) saturate(165%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52),0 34px 90px rgba(15,43,29,.2);
  transition:transform .7s cubic-bezier(.2,.72,.2,1),box-shadow .5s ease;
}
.subpage-contact .channel-card:hover { transform:translateY(-10px); box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 44px 110px rgba(15,43,29,.28); }
.subpage-contact .channel-whatsapp { background:linear-gradient(145deg,rgba(20,80,55,.82),rgba(54,123,91,.62)) padding-box,linear-gradient(135deg,#fff,#20e586,#9d72e9) border-box; }
.subpage-contact .channel-call { background:linear-gradient(145deg,rgba(33,54,47,.84),rgba(77,103,93,.62)) padding-box,linear-gradient(135deg,#fff,#6deaaa,#8ec0dd) border-box; }
.subpage-contact .channel-mail { background:linear-gradient(145deg,rgba(55,48,78,.84),rgba(114,93,137,.62)) padding-box,linear-gradient(135deg,#fff,#aa82ef,#66dca8) border-box; }
.subpage-contact .channel-index,.subpage-contact .channel-label { font-size:.73rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.subpage-contact .channel-label { margin-top:auto; color:rgba(255,255,255,.62); }
.subpage-contact .channel-card strong { max-width:8ch; margin-top:12px; font-size:clamp(2.4rem,4vw,4.8rem); line-height:.92; letter-spacing:-.05em; }
.subpage-contact .channel-action { margin-top:28px; font-weight:750; }
.subpage-contact .contact-languages {
  color:#fff; background:radial-gradient(ellipse at 12% 36%,rgba(42,229,139,.17),transparent 42%),linear-gradient(180deg,#60766b 0%,#425a4e 48%,#30473b 100%) !important;
}
.subpage-contact .contact-languages .section-inner {
  padding:var(--gold-space-3); border:1px solid rgba(255,255,255,.25); border-radius:var(--glass-radius);
  background:rgba(239,248,243,.14); -webkit-backdrop-filter:blur(44px) saturate(155%); backdrop-filter:blur(44px) saturate(155%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36),0 38px 100px rgba(9,33,21,.2);
}
.subpage-contact #business { color:#fff; }
.subpage-contact #business .sub,.subpage-contact #business .condition { color:rgba(255,255,255,.7); }
.subpage-contact .contact-faq { color:#fff; }

/* Contact review pass: single floating glass navigation. */
body.subpage nav {
  top:14px; width:min(calc(100% - 32px),1360px); margin:14px auto 0; overflow:hidden; isolation:isolate;
  border:1px solid rgba(255,255,255,.62); border-radius:999px;
  background:rgba(244,255,250,.055);
  -webkit-backdrop-filter:blur(15px) saturate(205%) contrast(108%); backdrop-filter:blur(15px) saturate(205%) contrast(108%);
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(255,255,255,.22),inset 13px 0 24px rgba(255,255,255,.12),inset -16px 0 30px rgba(126,91,203,.11),0 22px 60px rgba(12,37,25,.2),0 4px 18px rgba(126,96,190,.12);
}
body.subpage nav::before {
  content:""; position:absolute; inset:1px; z-index:-1; pointer-events:none; border-radius:inherit;
  background:radial-gradient(ellipse at 7% -25%,rgba(255,255,255,.42),transparent 27%),radial-gradient(ellipse at 88% 130%,rgba(174,132,239,.16),transparent 29%),linear-gradient(112deg,rgba(255,255,255,.12) 4%,rgba(255,255,255,.025) 38%,rgba(109,239,177,.07) 72%,rgba(255,255,255,.1));
}
body.subpage nav::after {
  content:""; position:absolute; z-index:2; pointer-events:none; top:-120%; bottom:-120%; left:-28%; width:19%;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.08) 25%,rgba(255,255,255,.58) 49%,rgba(159,238,203,.2) 62%,transparent 100%);
  filter:blur(5px); transform:rotate(12deg); mix-blend-mode:screen;
  animation:contact-liquid-sheen 8.5s cubic-bezier(.55,.05,.35,1) infinite;
}
body.subpage .nav-inner { position:relative; z-index:3; max-width:none; height:64px; background:transparent; }
@keyframes contact-liquid-sheen {
  0%,18% { left:-28%; opacity:0; }
  25% { opacity:.72; }
  58% { opacity:.5; }
  72%,100% { left:112%; opacity:0; }
}
.subpage-contact .contact-wordmark { font-size:.82rem; font-weight:850; letter-spacing:.12em; }
.subpage-contact .contact-mark { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:grid; place-items:center; }
.subpage-contact .contact-mark .hp-badge { width:34px; height:34px; border:1.6px solid var(--ink); border-radius:50%; display:grid; place-items:center; font-size:.68rem; font-weight:800; }
.subpage-contact .hero-location-link { border-radius:999px; overflow:hidden; }

/* Continuous background endpoints between direct contact, languages and footer. */
.subpage-contact > .section.contact-channels {
  background:radial-gradient(ellipse at 18% 38%,rgba(39,229,139,.22),transparent 40%),radial-gradient(ellipse at 88% 62%,rgba(169,117,235,.18),transparent 38%),linear-gradient(180deg,#c3d3cb 0%,#879c91 48%,#60766b 100%) !important;
}
.subpage-contact .contact-languages {
  background:radial-gradient(ellipse at 14% 30%,rgba(44,231,143,.17),transparent 42%),radial-gradient(ellipse at 84% 70%,rgba(159,111,230,.12),transparent 42%),linear-gradient(180deg,#60766b 0%,#496156 42%,#30473b 100%) !important;
}
.subpage-contact .lang-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; width:100%; margin-top:46px; gap:18px; }
.subpage-contact .lang-row span { display:flex; min-height:1.8em; align-items:center; justify-content:center; color:rgba(255,255,255,.88); line-height:1.45; white-space:nowrap; }
.subpage-contact .lang-row span[lang="ar"] { padding:.18em .1em .34em; font-family:Arial,"Noto Sans Arabic",sans-serif; line-height:1.65; }

/* Darker glass keeps questions and opened answers readable. */
.subpage-contact .contact-faq .faq-item {
  background:linear-gradient(145deg,rgba(25,48,37,.74),rgba(70,78,94,.58)) padding-box,linear-gradient(135deg,rgba(255,255,255,.72),rgba(39,229,139,.48),rgba(169,117,235,.46)) border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36),0 22px 60px rgba(7,25,16,.2);
}
.subpage-contact .contact-faq .faq-q { color:rgba(255,255,255,.94); font-weight:720; }
.subpage-contact .contact-faq .faq-q:hover,.subpage-contact .contact-faq .faq-q[aria-expanded="true"] { color:#71f0b2; }
.subpage-contact .contact-faq .faq-chevron { stroke:rgba(255,255,255,.8); }
.subpage-contact .contact-faq .faq-a-inner p { max-width:58ch; padding:0 26px 26px; color:rgba(255,255,255,.86); font-size:clamp(1rem,1.35vw,1.18rem); line-height:1.55; }
.subpage-contact .contact-faq + footer,body.subpage-contact footer {
  background:radial-gradient(ellipse at 18% 18%,rgba(43,212,133,.15),transparent 38%),radial-gradient(ellipse at 82% 72%,rgba(158,111,230,.13),transparent 42%),linear-gradient(180deg,#1d2d25 0%,#30473b 42%,#506259 100%);
}
.subpage-contact footer::before { background:linear-gradient(180deg,rgba(29,45,37,.08),transparent); }

@media (max-width:900px) {
  .subpage-contact .channel-grid { grid-template-columns:1fr; }
  .subpage-contact .channel-card { min-height:390px; }
  .subpage-contact .lang-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:640px) {
  body.subpage nav { top:8px; width:calc(100% - 16px); margin-top:8px; }
  body.subpage .nav-inner { height:58px; padding-inline:12px; }
  .subpage-contact .contact-wordmark { max-width:120px; font-size:.62rem; letter-spacing:.07em; }
  .subpage-contact .contact-mark .hp-badge { width:30px; height:30px; }
  .subpage-contact .nav-links .nav-cta { display:none; }
  .subpage-contact .nav-links { margin-left:auto; }
  .subpage-contact .hero-actions { width:100%; }
  .subpage-contact .hero-actions a { width:100%; justify-content:center; }
  .subpage-contact #standorte .section-intro { text-align:left; }
  .subpage-contact #standorte .section-intro .section-h,.subpage-contact #standorte .section-intro p { margin-left:0; }
  .subpage-contact .loc-actions { flex-direction:column; }
  .subpage-contact .loc-actions a { width:100%; }
  .subpage-contact .channel-card { min-height:360px; }
  .subpage-contact .lang-row {
    column-gap:24px;
    row-gap:14px;
    font-size:clamp(1.45rem,7.5vw,1.9rem);
  }
  .subpage-contact .contact-faq .faq-a-inner p { padding:0 20px 22px; }
}

/* One navigation geometry on every page: wordmark left, HP mark centered,
   links right. The former black utility strip is intentionally removed. */
body.subpage .nav-inner {
  display:grid; grid-template-columns:1fr auto 1fr; gap:28px;
  max-width:1360px; height:64px; background:transparent;
  -webkit-backdrop-filter:none; backdrop-filter:none;
}
body.subpage .nav-logo { justify-self:start; }
body.subpage .nav-center-mark { display:grid; place-items:center; font-size:0; }
body.subpage .nav-center-mark .hp-badge { width:34px; height:34px; border:1.6px solid var(--ink); border-radius:50%; display:grid; place-items:center; font-size:.68rem; font-weight:800; }
body.subpage .nav-links { justify-self:end; }
@media (max-width:640px) {
  body.subpage .nav-inner { grid-template-columns:1fr auto 1fr; height:58px; padding-inline:12px; }
  body.subpage .nav-center-mark .hp-badge { width:30px; height:30px; }
}

/* Alternating materialization: restrained lateral movement, no collisions. */
body.subpage > .section:nth-of-type(even) .reveal { transform:translate3d(44px,28px,0); }
body.subpage > .section:nth-of-type(odd) .reveal { transform:translate3d(-44px,28px,0); }
body.subpage > .section .reveal.shown { transform:none; }

.subpage-about .page-hero .display,.subpage-contact .page-hero .display {
  line-height:.9; letter-spacing:-.045em;
}

body.subpage-contact {
  background:
    radial-gradient(ellipse at 10% 0%,rgba(47,226,145,.34),transparent 34%),
    radial-gradient(ellipse at 88% 2%,rgba(164,116,235,.25),transparent 34%),
    linear-gradient(135deg,#17472f 0%,#24463a 52%,#4b5064 100%);
}
.subpage-contact .page-hero .display {
  max-width:12ch; line-height:1.02; letter-spacing:-.032em;
}
.subpage-contact .page-hero .display .thin {
  display:block; margin-top:.07em;
}
.subpage-about .page-hero > *,.subpage-contact .page-hero > *,.subpage-offers .page-hero > * {
  animation:subpage-intro .72s cubic-bezier(.2,.72,.2,1) both;
}
.subpage-about .page-hero > :nth-child(2),.subpage-contact .page-hero > :nth-child(2),.subpage-offers .page-hero > :nth-child(2) { animation-delay:55ms; }
.subpage-about .page-hero > :nth-child(n+3),.subpage-contact .page-hero > :nth-child(n+3),.subpage-offers .page-hero > :nth-child(n+3) { animation-delay:110ms; }
@keyframes subpage-intro {
  from { opacity:0; transform:translate3d(-34px,24px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}

/* TikTok story rail: the live creator feed sits in a deep glass card while
   the two companion panels create a tactile horizontal scroll on touch. */
.about-video-section {
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(ellipse at 12% 18%,rgba(35,229,139,.2),transparent 34%),
    radial-gradient(ellipse at 88% 72%,rgba(157,113,231,.2),transparent 38%),
    linear-gradient(180deg,#182a21 0%,#456457 34%,#91a99d 70%,#b5c8bf 100%);
}
.about-video-intro { max-width:760px; }
.about-video-intro .section-h { margin-top:16px; }
.about-video-intro .sub { max-width:520px; margin-top:20px; color:rgba(255,255,255,.76); }
.about-video-rail {
  display:grid;
  grid-template-columns:minmax(420px,1.45fr) minmax(260px,.72fr) minmax(260px,.72fr);
  gap:var(--gold-space-1);
  margin-top:clamp(42px,6vw,76px);
  align-items:stretch;
}
.about-video-card {
  position:relative;
  min-height:560px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.68);
  border-radius:var(--glass-radius);
  background:linear-gradient(145deg,rgba(246,255,250,.6),rgba(211,231,221,.28)) padding-box,linear-gradient(135deg,rgba(255,255,255,.86),rgba(36,226,139,.58),rgba(158,112,232,.55)) border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 42px 100px rgba(31,75,54,.2);
  -webkit-backdrop-filter:blur(42px) saturate(165%);
  backdrop-filter:blur(42px) saturate(165%);
}
.about-video-card--feed { display:flex; flex-direction:column; color:inherit; text-decoration:none; }
.about-video-frame { flex:1; min-height:470px; margin:22px 22px 0; border-radius:26px; overflow:hidden; background:radial-gradient(circle at 28% 20%,rgba(37,229,140,.24),transparent 38%),radial-gradient(circle at 76% 78%,rgba(163,112,234,.3),transparent 42%),linear-gradient(145deg,rgba(10,31,22,.92),rgba(31,52,43,.84)); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:#fff; text-align:center; box-shadow:inset 0 1px 0 rgba(255,255,255,.18); }
.about-video-frame strong { font-size:clamp(1.5rem,3vw,2.4rem); letter-spacing:-.025em; }
.about-video-frame > span:last-child { color:rgba(255,255,255,.72); }
.about-video-tiktok { display:grid; place-items:center; width:76px; height:76px; border-radius:24px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.35); font-size:2.4rem; box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 20px 55px rgba(0,0,0,.2); backdrop-filter:blur(20px); }
.about-video-caption { display:flex; justify-content:space-between; gap:16px; align-items:baseline; padding:22px 28px 26px; color:#1d392c; }
.about-video-caption strong { font-size:1.04rem; }
.about-video-caption span { color:#557064; font-size:.9rem; }
.about-video-card--link { display:flex; flex-direction:column; padding:28px; color:#fff; text-decoration:none; transition:transform .45s var(--spring),box-shadow .45s ease; }
.about-video-card--link:hover { transform:translateY(-8px) rotate(-.5deg); box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 48px 110px rgba(31,75,54,.3); }
.about-video-word { margin-top:auto; font-size:clamp(3.2rem,5.2vw,6.8rem); line-height:.88; letter-spacing:-.055em; font-weight:800; }
.about-video-card--link .about-video-caption { padding:28px 0 0; color:#fff; }
.about-video-card--link .about-video-caption span { color:rgba(255,255,255,.68); }
.about-video-card--link { background:linear-gradient(145deg,rgba(20,82,56,.9),rgba(75,133,105,.58)) padding-box,linear-gradient(135deg,#fff,#20e586,#8cc2df) border-box; }
.about-video-card--violet { background:linear-gradient(145deg,rgba(48,42,72,.9),rgba(116,93,139,.62)) padding-box,linear-gradient(135deg,#fff,#aa82ef,#66dca8) border-box; }
@media (max-width:900px) {
  .about-video-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; padding:4px 4px 26px; margin-inline:-4px; }
  .about-video-card { flex:0 0 min(84vw,520px); min-height:520px; scroll-snap-align:start; }
  .about-video-card--link { flex-basis:min(68vw,380px); }
}
@media (max-width:640px) {
  .about-video-card { flex-basis:88vw; min-height:470px; }
  .about-video-card--link { flex-basis:70vw; }
  .about-video-frame { min-height:390px; }
  .about-video-caption { flex-direction:column; gap:5px; }
}

/* Text on the light value cards must remain readable over every colour layer. */
.subpage-about .about-values .tile h3 { color:#10241a; }
.subpage-about .about-values .tile p { color:#31483c !important; opacity:1; font-weight:550; }

/* Compact, touch-safe subpages. Hero copy never collides and the key content
   uses the available viewport instead of inheriting desktop card widths. */
@media (max-width:700px) {
  body.subpage { overflow-x:hidden; }
  body.subpage nav { top:8px; width:calc(100% - 16px); }
  body.subpage .nav-inner { height:58px; padding-inline:14px; gap:8px; }
  body.subpage .nav-wordmark { font-size:.66rem; letter-spacing:.075em; white-space:nowrap; }
  body.subpage .nav-center-mark { display:none; }
  body.subpage .nav-links { margin-left:auto; }
  body.subpage .page-hero { min-height:100svh; padding:118px 18px 112px; }
  body:is(.subpage-about,.subpage-contact,.subpage-offers) .page-hero .display { max-width:100%; font-size:clamp(3.35rem,15vw,5.2rem); line-height:.94; letter-spacing:-.055em; text-wrap:balance; }
  body.subpage .page-hero .sub { max-width:32ch !important; font-size:1rem; line-height:1.5; }
  body.subpage .section { padding:80px 18px; }
  body.subpage .section.tight { padding-block:68px; }
  body.subpage .section-h { font-size:clamp(3rem,13vw,4.6rem); line-height:.94; text-wrap:balance; }
  .subpage-about .body-col { padding:26px; font-size:1.12rem; line-height:1.48; }
  .subpage-about .stat-row { grid-template-columns:1fr 1fr; gap:28px 16px; }
  .subpage-about .stat-row b { font-size:clamp(2rem,10vw,3rem); }
  .subpage-about .team-card { min-height:350px; padding:26px; }
  .about-video-rail { gap:12px; margin-inline:-18px; padding:4px 18px 24px; scroll-padding-left:18px; }
  .about-video-card { flex-basis:calc(100vw - 52px); min-height:455px; border-radius:30px; }
  .about-video-card--link { flex-basis:min(76vw,330px); min-height:455px; padding:24px; }
  .about-video-frame { min-height:335px; margin:14px 14px 0; border-radius:22px; }
  .about-video-caption { padding:18px 20px 22px; }
  .about-video-word { font-size:clamp(3.2rem,15vw,4.8rem); }
  .subpage-about .about-values .tile-grid { display:grid; grid-template-columns:1fr; gap:14px; overflow:visible; margin:0; padding:0; }
  .subpage-about .about-values .tile-grid > * { width:100%; min-height:200px; padding:26px; }
  .subpage-contact .channel-grid { grid-template-columns:1fr; }
  .subpage-contact .location-stage { min-height:240px; }
  .subpage-contact .location-stage span { font-size:clamp(6rem,31vw,9rem); }
  .subpage-contact .lang-row { gap:10px; }
  .subpage-float-cta { right:10px; bottom:10px; min-height:46px; padding-inline:16px; font-size:.84rem; }
  body.subpage footer { padding-top:100px; }
}

/* Named sections keep the colour bridge stable when the page gains content. */
.subpage-about .about-story {
  background:radial-gradient(ellipse at 15% 30%,rgba(46,232,143,.14),transparent 40%),linear-gradient(180deg,#dbe8e1 0%,#e8efeb 48%,#c8d8d0 100%);
}
.subpage-about .about-stats {
  background:radial-gradient(ellipse at 84% 42%,rgba(164,116,232,.16),transparent 38%),linear-gradient(180deg,#c8d8d0 0%,#8da198 54%,#40574b 100%);
}
.subpage-about .about-team {
  color:#fff;
  background:radial-gradient(ellipse at 14% 28%,rgba(45,229,142,.2),transparent 38%),linear-gradient(180deg,#40574b 0%,#223a2e 46%,#182a21 100%);
}
.subpage-about .about-values {
  background:radial-gradient(ellipse at 84% 54%,rgba(166,116,233,.17),transparent 40%),linear-gradient(180deg,#b5c8bf 0%,#728a7e 46%,#2e4438 100%) !important;
}
.subpage-about .about-cta {
  color:#fff;
  background:radial-gradient(ellipse at 16% 28%,rgba(38,229,140,.15),transparent 40%),linear-gradient(180deg,#2e4438 0%,#30483b 50%,#1d2d25 100%);
}

/* Shared dark footer without a sudden black/white switch. */
body.subpage footer { position:relative; margin-top:-3px; padding-top:clamp(140px,13vw,220px); overflow:hidden; background:linear-gradient(180deg,#1d2923,#34443c 44%,#506259 100%); }
body.subpage footer::before { content:""; position:absolute; inset:0 0 auto; height:140px; background:linear-gradient(180deg,rgba(18,31,24,.9),transparent); }
body.subpage footer .footer-inner { position:relative; z-index:1; }
body.subpage footer .footer-grid div,body.subpage footer .footer-grid a { color:rgba(255,255,255,.84); }
body.subpage footer .footer-h { color:rgba(255,255,255,.55); }
body.subpage footer .contact-list svg { color:rgba(255,255,255,.58); }
body.subpage footer .footer-legal { color:rgba(255,255,255,.58); border-top-color:rgba(255,255,255,.16); }

.subpage-float-cta { position:fixed; z-index:30; right:20px; bottom:20px; display:inline-flex; align-items:center; gap:9px; min-height:52px; padding:0 22px; border-radius:999px; background:#16e47f; color:#0b2216; font-weight:800; box-shadow:0 18px 55px rgba(8,45,26,.28),inset 0 1px 0 rgba(255,255,255,.55); transition:transform .25s ease; }
.subpage-float-cta:hover { transform:translateY(-4px); }

@media (max-width:900px) {
  body.subpage .page-hero { min-height:760px; padding:120px 20px 140px; }
  body.subpage .page-hero .display { font-size:clamp(4rem,18vw,7rem); max-width:8ch; }
  body:is(.subpage-about,.subpage-contact) .page-hero .display { font-size:clamp(3.55rem,15vw,5.8rem); max-width:9.2ch; }
  body.subpage .section { padding-block:100px; }
  body.subpage .section-h { font-size:clamp(3.3rem,14vw,6rem); }
  .subpage-offers .pcard { min-height:560px; }
  .subpage-offers #tarife .tarif-card:nth-child(2n),.subpage-offers #zubehoer .tile:nth-child(2n),.subpage-offers #internet .tile:nth-child(2n) { transform:none; }
  .subpage-about .team-grid-text { grid-template-columns:1fr; }
  .subpage-about .team-card { min-height:430px; }
  .subpage-contact .location-stage { min-height:310px; }
  .subpage-float-cta { right:14px; bottom:14px; min-height:48px; padding:0 18px; }
  .subpage-about .body-col { padding:clamp(28px,7vw,48px); }
  .subpage-about .team-grid-text { grid-template-columns:1fr; }
  .subpage-contact > .section:nth-of-type(3) .section-inner,.subpage-contact #business .section-inner,.subpage-about > .section:nth-of-type(6) .section-inner { padding:clamp(28px,7vw,48px); }
  body.subpage > .section[data-layer-text]::before { font-size:clamp(6rem,27vw,11rem); letter-spacing:.06em; }
}

@media (max-width:640px) {
  .subpage-offers .sheet { width:100%; padding:20px 18px calc(24px + env(safe-area-inset-bottom,0px)); border-radius:28px 28px 0 0; }
  .subpage-offers .sheet-img { height:180px; margin-top:2px; }
  .subpage-offers .sheet h3 { font-size:1.8rem; }
  .subpage-offers .sheet-label { margin-top:16px; }
  .subpage-offers .chip-row[data-group="model"] .chip { flex-basis:calc(50% - 5px); }
}

@media (prefers-reduced-motion:reduce) {
  body.subpage nav::after { animation:none; opacity:.18; left:41%; }
  body.subpage .page-hero::before,body.subpage .page-hero .display,body.subpage [data-subpage-scene] .section-inner { transform:none !important; }
  body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card),.subpage-float-cta { transition:none !important; }
  .subpage-about .page-hero > *,.subpage-contact .page-hero > *,.subpage-offers .page-hero > * { animation:none !important; }
  body.subpage > .section[data-layer-text]::before { transform:translateY(-50%) !important; }
}

/* Final collision-safe type pass: every display line gets a full line box. */
body.subpage .page-hero .display { line-height:1.02; letter-spacing:-.032em; }
.subpage-contact .page-hero .display { width:100%; max-width:none; font-size:clamp(4.4rem,8.2vw,9rem); }
body.subpage .page-hero .display .thin { display:block; margin-top:.08em; }
body.subpage .section-h { line-height:1; letter-spacing:-.035em; }
.subpage-about .team-card h3,.subpage-contact .channel-card strong,.subpage-contact .lang-row { line-height:1.06; letter-spacing:-.025em; }
@media (max-width:640px) {
  body.subpage .page-hero .display { line-height:1.06; letter-spacing:-.022em; }
  .subpage-contact .page-hero .display { max-width:12ch; }
  body.subpage .section-h { line-height:1.04; letter-spacing:-.025em; }
}

/* Final cross-page colour choreography. Every section begins with the exact
   colour produced by the preceding section. Asymmetric radial fields carry
   colour farther into one side so no boundary reads as a straight divider. */
body.subpage {
  background:
    radial-gradient(ellipse at 84% 6%,rgba(164,112,233,.17),transparent 36%),
    radial-gradient(ellipse at 12% 3%,rgba(36,229,140,.18),transparent 34%),
    #dbe8e1;
}
body.subpage nav {
  position:fixed;
  left:50%;
  transform:translateX(-50%);
  margin:0;
  z-index:90;
}

/* Angebote */
.subpage-offers #iphone {
  background:radial-gradient(ellipse at 86% 44%,rgba(160,111,232,.14),transparent 44%),radial-gradient(ellipse at 12% 68%,rgba(38,229,141,.11),transparent 42%),linear-gradient(180deg,#dce7e1 0%,#edf2ef 42%,#cbd9d2 100%) !important;
}
.subpage-offers #samsung {
  background:radial-gradient(ellipse at 12% 44%,rgba(34,224,134,.19),transparent 43%),radial-gradient(ellipse at 86% 65%,rgba(153,109,226,.14),transparent 42%),linear-gradient(180deg,#cbd9d2 0%,#8ca198 25%,#40564b 52%,#17271f 100%) !important;
}
.subpage-offers #tarife {
  background:radial-gradient(ellipse at 83% 44%,rgba(173,123,237,.18),transparent 43%),radial-gradient(ellipse at 15% 66%,rgba(37,228,139,.12),transparent 45%),linear-gradient(180deg,#17271f 0%,#3f554a 29%,#89a096 61%,#dfe8e3 100%) !important;
}
.subpage-offers #vip {
  background:radial-gradient(ellipse at 15% 48%,rgba(36,225,137,.22),transparent 44%),radial-gradient(ellipse at 87% 68%,rgba(156,105,224,.24),transparent 43%),linear-gradient(180deg,#dfe8e3 0%,#a8bab1 12%,#60766b 27%,#2b4036 46%,#18261f 65%,#35363c 100%) !important;
}
.subpage-offers #zubehoer {
  background:radial-gradient(ellipse at 86% 44%,rgba(164,113,232,.14),transparent 43%),radial-gradient(ellipse at 13% 68%,rgba(37,227,139,.12),transparent 44%),linear-gradient(180deg,#35363c 0%,#667870 22%,#aebfb7 52%,#d8e2dd 77%,#edf2ef 100%) !important;
}
.subpage-offers #internet {
  background:radial-gradient(ellipse at 18% 44%,rgba(35,226,137,.18),transparent 43%),radial-gradient(ellipse at 86% 68%,rgba(158,111,230,.12),transparent 44%),linear-gradient(180deg,#edf2ef 0%,#d7e2dc 31%,#a8bab1 65%,#667970 100%) !important;
}
.subpage-offers > .section.center {
  background:radial-gradient(ellipse at 84% 45%,rgba(160,111,232,.15),transparent 43%),radial-gradient(ellipse at 14% 68%,rgba(38,228,141,.13),transparent 44%),linear-gradient(180deg,#667970 0%,#4e6559 31%,#31473b 62%,#19271f 100%) !important;
}

/* Über uns */
.subpage-about .about-story { background:radial-gradient(ellipse at 15% 48%,rgba(46,232,143,.14),transparent 43%),radial-gradient(ellipse at 86% 68%,rgba(162,112,233,.1),transparent 42%),linear-gradient(180deg,#dbe8e1 0%,#e8efeb 48%,#c8d8d0 100%) !important; }
.subpage-about .about-stats { background:radial-gradient(ellipse at 84% 46%,rgba(164,116,232,.16),transparent 43%),radial-gradient(ellipse at 14% 67%,rgba(38,228,141,.11),transparent 43%),linear-gradient(180deg,#c8d8d0 0%,#8da198 55%,#40574b 100%) !important; }
.subpage-about .about-team { background:radial-gradient(ellipse at 14% 44%,rgba(45,229,142,.2),transparent 43%),radial-gradient(ellipse at 87% 66%,rgba(160,111,231,.15),transparent 43%),linear-gradient(180deg,#40574b 0%,#2b4337 44%,#182a21 100%) !important; }
.subpage-about .about-video-section { background:radial-gradient(ellipse at 12% 46%,rgba(35,229,139,.2),transparent 43%),radial-gradient(ellipse at 88% 70%,rgba(157,113,231,.2),transparent 44%),linear-gradient(180deg,#182a21 0%,#456457 34%,#91a99d 70%,#b5c8bf 100%) !important; }
.subpage-about .about-values { background:radial-gradient(ellipse at 84% 48%,rgba(166,116,233,.17),transparent 44%),radial-gradient(ellipse at 14% 70%,rgba(38,228,141,.12),transparent 44%),linear-gradient(180deg,#b5c8bf 0%,#728a7e 46%,#2e4438 100%) !important; }
.subpage-about .about-cta { background:radial-gradient(ellipse at 16% 48%,rgba(38,229,140,.15),transparent 43%),radial-gradient(ellipse at 86% 70%,rgba(158,111,230,.14),transparent 44%),linear-gradient(180deg,#2e4438 0%,#30483b 50%,#1d2d25 100%) !important; }

/* Kontakt */
.subpage-contact #standorte { background:radial-gradient(ellipse at 86% 46%,rgba(159,111,230,.16),transparent 43%),radial-gradient(ellipse at 14% 70%,rgba(38,229,141,.12),transparent 44%),linear-gradient(180deg,#dbe8e1 0%,#e9f0ec 48%,#c3d3cb 100%) !important; }
.subpage-contact .contact-channels { background:radial-gradient(ellipse at 18% 46%,rgba(39,229,139,.22),transparent 43%),radial-gradient(ellipse at 88% 68%,rgba(169,117,235,.18),transparent 44%),linear-gradient(180deg,#c3d3cb 0%,#879c91 48%,#60766b 100%) !important; }
.subpage-contact .contact-languages { background:radial-gradient(ellipse at 14% 46%,rgba(44,231,143,.17),transparent 43%),radial-gradient(ellipse at 84% 70%,rgba(159,111,230,.12),transparent 44%),linear-gradient(180deg,#60766b 0%,#496156 45%,#30473b 100%) !important; }
.subpage-contact #business { background:radial-gradient(ellipse at 82% 46%,rgba(160,111,232,.2),transparent 44%),radial-gradient(ellipse at 14% 68%,rgba(40,228,140,.13),transparent 44%),linear-gradient(180deg,#30473b 0%,#1b3026 54%,#273b31 100%) !important; }
.subpage-contact .contact-faq { background:radial-gradient(ellipse at 20% 46%,rgba(42,229,139,.14),transparent 43%),radial-gradient(ellipse at 86% 70%,rgba(159,111,230,.13),transparent 44%),linear-gradient(180deg,#273b31 0%,#40564b 48%,#1d2d25 100%) !important; }

body.subpage footer {
  background:radial-gradient(ellipse at 84% 46%,rgba(158,111,230,.13),transparent 43%),radial-gradient(ellipse at 14% 68%,rgba(39,226,140,.12),transparent 44%),linear-gradient(180deg,#1d2d25 0%,#34443c 46%,#506259 100%) !important;
}

@media (max-width:640px) {
  body.subpage nav { margin:0; }
}

/* The header stays translucent, but its refraction remains readable when it
   crosses the dark hero and graphite scenes. */
body.subpage nav { background:rgba(239,250,245,.31); }

/* Angebote has no decorative pseudo layers, so a dedicated, offset colour
   tail can carry each outgoing hue into the next chapter. */
.subpage-offers > .section:not(.page-hero)::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:-3px -12% auto;
  height:clamp(150px,20vw,320px);
  pointer-events:none;
  background:radial-gradient(ellipse at var(--bridge-x,78%) 0%,var(--bridge-from) 0%,transparent 70%);
  opacity:.94;
}
.subpage-offers > .section:not(.page-hero) { box-shadow:inset 0 -150px 120px -118px var(--bridge-out); }
.subpage-offers #iphone { --bridge-from:#dce7e1; --bridge-x:82%; }
.subpage-offers #iphone { --bridge-out:#cbd9d2; }
.subpage-offers #samsung { --bridge-from:#cbd9d2; --bridge-out:#17271f; --bridge-x:18%; }
.subpage-offers #tarife { --bridge-from:#17271f; --bridge-out:#dfe8e3; --bridge-x:82%; }
.subpage-offers #vip { --bridge-from:#dfe8e3; --bridge-out:#35363c; --bridge-x:16%; }
.subpage-offers #zubehoer { --bridge-from:#35363c; --bridge-out:#edf2ef; --bridge-x:78%; }
.subpage-offers #internet { --bridge-from:#edf2ef; --bridge-out:#667970; --bridge-x:18%; }
.subpage-offers > .section.center { --bridge-from:#667970; --bridge-out:#19271f; --bridge-x:82%; }
.subpage-offers footer {
  background:radial-gradient(ellipse at 18% 45%,rgba(39,226,140,.12),transparent 44%),radial-gradient(ellipse at 84% 68%,rgba(158,111,230,.13),transparent 43%),linear-gradient(180deg,#19271f 0%,#34443c 46%,#506259 100%) !important;
}

/* About and contact already use their pseudo layer for the large side text.
   The same layer now also paints the incoming colour as an offset ellipse. */
body.subpage > .section[data-layer-text]::after {
  background:
    radial-gradient(ellipse at var(--bridge-x,78%) 0%,var(--bridge-from) 0%,transparent 69%),
    radial-gradient(ellipse at var(--glow-x,18%) 48%,rgba(52,233,148,.12),transparent 40%);
  mix-blend-mode:normal;
}
body.subpage > .section[data-layer-text] { box-shadow:inset 0 -150px 120px -118px var(--bridge-out); }
.subpage-about .about-story { --bridge-from:#dbe8e1; --bridge-out:#c8d8d0; --bridge-x:82%; }
.subpage-about .about-stats { --bridge-from:#c8d8d0; --bridge-out:#40574b; --bridge-x:18%; }
.subpage-about .about-team { --bridge-from:#40574b; --bridge-out:#182a21; --bridge-x:82%; }
.subpage-about .about-video-section { --bridge-from:#182a21; --bridge-out:#b5c8bf; --bridge-x:17%; }
.subpage-about .about-values { --bridge-from:#b5c8bf; --bridge-out:#2e4438; --bridge-x:82%; }
.subpage-about .about-cta { --bridge-from:#2e4438; --bridge-out:#1d2d25; --bridge-x:18%; }
.subpage-contact #standorte { --bridge-from:#dbe8e1; --bridge-out:#c3d3cb; --bridge-x:82%; }
.subpage-contact .contact-channels { --bridge-from:#c3d3cb; --bridge-out:#60766b; --bridge-x:17%; }
.subpage-contact .contact-languages { --bridge-from:#60766b; --bridge-out:#30473b; --bridge-x:82%; }
.subpage-contact #business { --bridge-from:#30473b; --bridge-out:#273b31; --bridge-x:18%; }
.subpage-contact .contact-faq { --bridge-from:#273b31; --bridge-out:#1d2d25; --bridge-x:82%; }

@media (max-width:767px) {
  body.subpage nav { overflow:hidden; }
  body.subpage .nav-menu { top:76px; }
}
@media (max-width:640px) {
  body.subpage .section { padding-block:64px; }
  body.subpage .section.tight { padding-block:54px; }
  body.subpage .page-hero { min-height:82svh; padding-top:106px; padding-bottom:82px; }
  .subpage-offers .pcard { min-height:0; }
  .subpage-contact .channel-card { min-height:220px; }
  .subpage-contact .contact-languages .section-inner,
  .subpage-contact #business .section-inner { padding:26px; }
  .subpage-about .about-video-section { padding-block:72px; }
}

/* ── Über uns: Momo-Karte als Liquid Glass mit Instagram-Reel ─────────────
   Name und Rolle bleiben oben links; darunter sitzt das Zwei-Klick-Embed. */
.subpage-about .team-lead--reel {
  position:relative; isolation:isolate; overflow:hidden; justify-content:flex-start; gap:22px;
  border:1px solid transparent;
  background:
    linear-gradient(150deg,rgba(255,255,255,.34),rgba(214,236,226,.16) 42%,rgba(120,150,138,.22)) padding-box,
    linear-gradient(135deg,rgba(255,255,255,.95),rgba(39,229,139,.7) 45%,rgba(169,117,235,.55)) border-box;
  -webkit-backdrop-filter:blur(38px) saturate(170%) brightness(1.05);
  backdrop-filter:blur(38px) saturate(170%) brightness(1.05);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(255,255,255,.28),inset 1px 0 0 rgba(255,255,255,.35),0 40px 110px rgba(18,52,38,.34);
}
/* Specular: eine weiche Lichtkante, die langsam über das Glas wandert. */
.subpage-about .team-lead--reel::before {
  content:""; position:absolute; inset:-40%; z-index:-1; pointer-events:none;
  background:
    radial-gradient(38% 30% at var(--lg-x,22%) var(--lg-y,18%),rgba(255,255,255,.55),transparent 70%),
    radial-gradient(28% 24% at 78% 84%,rgba(39,229,139,.28),transparent 70%),
    radial-gradient(30% 26% at 70% 20%,rgba(169,117,235,.22),transparent 70%);
  animation:lg-drift 14s ease-in-out infinite alternate;
}
/* Refraktionsstreifen am oberen Rand — die "flüssige" Kante. */
.subpage-about .team-lead--reel::after {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0) 22%),linear-gradient(90deg,rgba(255,255,255,.18),transparent 30%,transparent 70%,rgba(255,255,255,.12));
  mix-blend-mode:screen;
}
@keyframes lg-drift { from { --lg-x:22%; --lg-y:18%; transform:translate3d(0,0,0) rotate(0deg); } to { --lg-x:70%; --lg-y:40%; transform:translate3d(4%,6%,0) rotate(6deg); } }
.subpage-about .team-lead--reel .team-meta { position:relative; z-index:1; }
.subpage-about .team-lead--reel h3 { font-size:clamp(2.6rem,4.4vw,4.8rem); text-shadow:0 2px 24px rgba(0,0,0,.18); }

.ig-embed { position:relative; z-index:1; display:grid; margin-top:auto; border-radius:26px; overflow:hidden; min-height:400px; background:rgba(8,20,14,.42); border:1px solid rgba(255,255,255,.34); box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 24px 60px rgba(0,0,0,.22); }
.ig-embed > * { grid-area:1/1; }
.ig-poster { display:grid; place-items:center; align-content:center; gap:14px; padding:32px 32px 150px; color:#fff; text-align:center;
  background:radial-gradient(circle at 30% 20%,rgba(39,229,139,.28),transparent 42%),radial-gradient(circle at 76% 80%,rgba(169,117,235,.32),transparent 44%),linear-gradient(160deg,#16352a,#0f1d17); }
.ig-badge { font-size:.72rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.7); }
.ig-glyph { width:84px; height:84px; border-radius:28px; display:grid; place-items:center; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.4); box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 18px 50px rgba(0,0,0,.3); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.ig-glyph::before { content:""; width:0; height:0; margin-left:6px; border-style:solid; border-width:15px 0 15px 26px; border-color:transparent transparent transparent #fff; }
.ig-handle { font-weight:700; letter-spacing:-.01em; }
.ig-cta { align-self:end; justify-self:stretch; display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; padding:18px 20px; background:linear-gradient(180deg,transparent,rgba(0,0,0,.55)); color:#fff; }
.ig-play { min-height:44px; padding:0 22px; border:0; border-radius:999px; background:#fff; color:#0f1d17; font:inherit; font-weight:700; cursor:pointer; box-shadow:0 10px 30px rgba(0,0,0,.28); transition:transform .3s var(--spring),background .3s; }
.ig-play:hover { background:#dffbe9; } .ig-play:active { transform:scale(.96); }
.ig-note { margin:0; font-size:.8rem; line-height:1.4; color:rgba(255,255,255,.72); max-width:30ch; }
.ig-note a { color:#fff; font-weight:600; }
.ig-embed .instagram-media { margin:0 !important; max-width:100% !important; min-width:0 !important; border-radius:22px !important; opacity:0; transition:opacity .6s var(--spring); }
.ig-embed.is-on .instagram-media { opacity:1; }
.ig-embed.is-on .ig-poster,.ig-embed.is-on .ig-cta,.ig-embed.is-loading .ig-cta { opacity:0; pointer-events:none; transition:opacity .5s; }
.ig-embed.is-on { min-height:0; background:transparent; border-color:transparent; box-shadow:none; }
.ig-embed.is-on > .ig-poster { display:none; }
.ig-embed.is-loading .ig-poster { animation:spline-pulse 1400ms ease-in-out infinite; }
.ig-embed.is-failed .ig-cta { opacity:1; pointer-events:auto; }

/* ── TikTok-Karte: Phone-Bühne mit wechselnden Themen statt leerer Fläche ─ */
.about-video-frame.tt-stage { display:grid; grid-template-columns:minmax(0,1fr) 210px; align-items:center; gap:34px; padding:26px 28px; overflow:hidden; }
.tt-phone { position:relative; order:2; justify-self:end; width:190px; aspect-ratio:9/19; border-radius:32px; padding:8px; background:linear-gradient(160deg,#2a2f2c,#0c110e); border:1px solid rgba(255,255,255,.28); box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 30px 70px rgba(0,0,0,.45),0 0 0 6px rgba(255,255,255,.06); transform:rotate(-6deg) translateY(6px); transition:transform .6s var(--spring); }
.about-video-card--feed:hover .tt-phone { transform:rotate(-2deg) translateY(0); }
.tt-phone::before { content:""; position:absolute; top:14px; left:50%; width:36%; height:8px; transform:translateX(-50%); border-radius:999px; background:#000; opacity:.8; }
.tt-screen { position:relative; height:100%; border-radius:24px; overflow:hidden; color:#fff; background:radial-gradient(circle at 30% 18%,rgba(39,229,139,.45),transparent 42%),radial-gradient(circle at 80% 80%,rgba(169,117,235,.5),transparent 46%),linear-gradient(170deg,#173b2c,#0b1510 60%,#1b1330); }
.tt-screen::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.6)); pointer-events:none; }
.tt-word { position:absolute; left:16px; right:16px; top:38%; font-size:clamp(1.5rem,2.2vw,1.9rem); font-weight:800; line-height:.95; letter-spacing:-.04em; opacity:0; transform:translateY(14px); animation:tt-cycle 10.5s ease-in-out infinite; }
.tt-word-2 { animation-delay:3.5s; } .tt-word-3 { animation-delay:7s; }
@keyframes tt-cycle { 0%,4% { opacity:0; transform:translateY(14px); } 9%,29% { opacity:1; transform:translateY(0); } 34%,100% { opacity:0; transform:translateY(-12px); } }
.tt-rail { position:absolute; right:10px; bottom:58px; display:grid; gap:12px; z-index:1; }
.tt-rail i { display:block; width:22px; height:22px; border-radius:50%; background:rgba(255,255,255,.22); border:1px solid rgba(255,255,255,.45); }
.tt-meta { position:absolute; left:14px; right:46px; bottom:26px; z-index:1; display:grid; gap:2px; font-size:.62rem; line-height:1.3; }
.tt-meta strong { font-size:.66rem; overflow-wrap:anywhere; } .tt-meta span { color:rgba(255,255,255,.7); }
.tt-bar { position:absolute; left:14px; right:14px; bottom:12px; height:3px; border-radius:999px; background:rgba(255,255,255,.2); overflow:hidden; z-index:1; }
.tt-bar i { display:block; height:100%; width:100%; background:#fff; transform-origin:left; animation:tt-progress 3.5s linear infinite; }
@keyframes tt-progress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.tt-cta { order:1; display:grid; justify-items:start; gap:14px; color:#fff; min-width:0; }
.tt-cta strong { font-size:clamp(1.25rem,1.9vw,1.7rem); letter-spacing:-.02em; line-height:1.1; overflow-wrap:anywhere; }
.tt-cta > span:last-child { color:rgba(255,255,255,.72); }
@media (max-width:700px) {
  .about-video-frame.tt-stage { grid-template-columns:1fr; gap:18px; padding:22px 20px; }
  .tt-phone { order:1; justify-self:center; width:150px; transform:rotate(-4deg); }
  .tt-cta { order:2; }
  .tt-cta { justify-items:center; text-align:center; }
}
@media (prefers-reduced-motion: reduce) {
  .subpage-about .team-lead--reel::before, .tt-bar i { animation:none; }
  .tt-word { animation:none; opacity:0; } .tt-word-1 { opacity:1; transform:none; }
  .tt-phone { transform:none; }
}

/* ═══ Stagger-Reparatur (alle Breiten): die Karten-Transition-Shorthands oben
   löschen transition-delay, .channel-card hatte keine Opacity-Transition. ═══ */
body.subpage .section .stagger-item { transition-delay:var(--stagger,0ms); }
.subpage-contact .channel-card.reveal { transition:opacity 640ms var(--spring), transform 640ms var(--spring), box-shadow .5s ease; }
/* Liquid-Glass-Drift nur über transform (Custom Properties interpolieren nicht). */
@keyframes lg-drift { from { transform:translate3d(0,0,0) rotate(0deg); } to { transform:translate3d(4%,6%,0) rotate(6deg); } }

/* ═══ Mobile-Budget (Subpages) ═══ */
@media (max-width:767px) {
  body.subpage #nav { -webkit-backdrop-filter:blur(12px) saturate(180%); backdrop-filter:blur(12px) saturate(180%); }
  body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card,.faq-item),
  body:is(.subpage-about,.subpage-contact) :is(.team-card,.tile,.loc-card,.faq-item,.stat-row>div),
  .subpage-about .body-col, .subpage-about .team-lead--reel, .about-video-card, .subpage-contact .channel-card,
  .subpage-contact > .section:nth-of-type(3) .section-inner, .subpage-contact #business .section-inner,
  .subpage-contact .contact-languages .section-inner, .subpage-about > .section:nth-of-type(6) .section-inner,
  .subpage-offers .sheet { -webkit-backdrop-filter:blur(18px) saturate(150%); backdrop-filter:blur(18px) saturate(150%); }
  /* Blur im Blur: deckende Füllung statt zweitem Filter */
  .subpage-offers .chip, .subpage-offers .sheet-img, .subpage-offers .sheet-close, .subpage-offers .provider-row,
  .subpage-contact .loc-map, .subpage-contact .loc-phone, .subpage-contact .faq-more, .subpage-contact .page-hero .btn-ghost,
  .about-video-tiktok, .ig-glyph { -webkit-backdrop-filter:none; backdrop-filter:none; }
  .subpage-offers .chip { background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(226,239,233,.84)); }
  .subpage-offers .sheet-img { background:rgba(244,249,246,.88); }
  .subpage-offers .sheet-scrim { -webkit-backdrop-filter:none; backdrop-filter:none; background:rgba(8,18,13,.5); }
  .subpage-contact .loc-grid::before { filter:none; background:radial-gradient(circle,rgba(64,232,153,.26),rgba(64,232,153,.08) 45%,transparent 70%); }
  /* Richtungs-Reveal: nur vertikal, kurz */
  body.subpage > .section:nth-of-type(even) .reveal, body.subpage > .section:nth-of-type(odd) .reveal { transform:translate3d(0,18px,0); }
  body.subpage > .section .reveal.shown { transform:none; }
  body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card) { transition:opacity 480ms var(--spring), transform 520ms var(--spring); }
  .subpage-contact .channel-card.reveal { transition:opacity 480ms var(--spring), transform 520ms var(--spring); }
  .subpage-about .team-lead--reel::before { animation:none; }
  .subpage-about .team-lead--reel::after { mix-blend-mode:normal; opacity:.7; }
  body.subpage .page-hero::before, body.subpage > .section[data-layer-text]::before { will-change:auto; }
  .subpage-float-cta { right:max(14px,env(safe-area-inset-right)); bottom:calc(14px + env(safe-area-inset-bottom,0px)); }
  body.consent-open .subpage-float-cta { opacity:0; pointer-events:none; }
  .subpage-offers > .section.center, .subpage-about .about-values, .subpage-about .about-cta, .subpage-contact .contact-faq { content-visibility:auto; contain-intrinsic-size:auto 700px; }
  .sheet-close { width:44px; height:44px; }
}
@media (hover:none) {   /* klebender Hover auf Touch: die Premium-Hover schlagen base.css */
  body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card):hover { transform:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 30px 86px rgba(18,48,34,.16); }
  .subpage-contact .channel-card:hover, .about-video-card--link:hover, .subpage-contact .loc-actions a:hover, .subpage-offers .chip:hover, .subpage-float-cta:hover { transform:none; }
  body.subpage :is(.pcard,.card,.tile,.loc-card,.team-card):active { transition:transform 90ms ease-out; }
}

/* ═══ Über uns · Zahlen-Kacheln auf dem Phone: Spalten dürfen nicht unter ihre
   Mindestbreite fallen (1fr = minmax(auto,1fr) sprengte das Grid über den Rand). ═══ */
@media (max-width:767px) {
  .subpage-about .stat-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 12px; width:100%; }
  .subpage-about .stat-row > div { min-height:168px; padding:22px 14px; min-width:0; }
  .subpage-about .stat-row b { font-size:clamp(1.7rem,8.2vw,2.5rem); letter-spacing:-.04em; overflow-wrap:anywhere; }
  .subpage-about .stat-row span { margin-top:10px; font-size:.68rem; letter-spacing:.08em; line-height:1.4; }
}
/* Angebote auf dem Phone: Sektionsköpfe zentriert (iPhone-Screenshot 13.09.). */
@media (max-width:767px) {
  .subpage-offers > .section .section-inner > .reveal:first-child { text-align:center; }
  .subpage-offers > .section .section-inner > .reveal:first-child .eyebrow-label { display:block; }
  .subpage-offers > .section .section-inner > .reveal:first-child .sub,
  .subpage-offers > .section .section-inner > .reveal:first-child p { margin-inline:auto; }
}
/* Samsung-Sektion auf dem Phone: Kopf liegt im hellen Bereich des Verlaufs → dunkle Schrift. */
@media (max-width:767px) {
  .subpage-offers #samsung .section-h, .subpage-offers #samsung .eyebrow-label { color:#11291d; text-shadow:none; }
}

/* ═══ Über uns · Momo-Karte mit vollflächigem Foto; Reel in der „Momo live"-Karte ═══ */
.subpage-about .team-lead--photo { position:relative; isolation:isolate; overflow:hidden; padding:38px; justify-content:flex-start; color:#fff;
  background:#25302b; border:1px solid rgba(255,255,255,.28); }
.subpage-about .team-lead--photo .team-photo { position:absolute; inset:-3px; z-index:0; display:block; width:100%; height:100%; margin:0; border-radius:0; overflow:hidden; background:none; }
.subpage-about .team-lead--photo .team-photo img { width:100%; height:100%; max-width:none; max-height:none; border-radius:0; object-fit:cover; object-position:50% 18%; display:block; }
.subpage-about .team-lead--photo::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg,rgba(8,16,12,.62) 0%,rgba(8,16,12,.22) 34%,rgba(8,16,12,0) 60%,rgba(8,16,12,.28) 100%); }
.subpage-about .team-lead--photo .team-meta { position:relative; z-index:2; }
.subpage-about .team-lead--photo h3 { text-shadow:0 2px 24px rgba(0,0,0,.35); }
.subpage-about .team-lead--photo p { color:rgba(255,255,255,.86); }
.about-video-frame--reel { display:grid; padding:0; margin:22px 22px 0; border-radius:26px; overflow:hidden; background:#0f1d17; }
.about-video-frame--reel .ig-embed { margin:0; min-height:470px; border-radius:0; border:0; box-shadow:none; }
.about-video-frame--reel .ig-embed.is-on { min-height:0; background:#fff; }
.about-video-card--feed .about-video-caption a { color:#1d392c; text-decoration:none; font-size:.9rem; }
.about-video-card--feed .about-video-caption a:hover { text-decoration:underline; }
@media (max-width:767px) {
  .subpage-about .team-lead--photo { min-height:520px; }
  .about-video-frame--reel { margin:14px 14px 0; border-radius:22px; }
  .about-video-frame--reel .ig-embed { min-height:420px; }
}

/* ═══ Kontakt · Ladenfotos füllen die Standort-Rahmen; Hausnummer + Straße bleiben als Overlay ═══ */
.subpage-contact .location-stage.has-photo { background:#101a15; }
.subpage-contact .location-stage .location-photo { position:absolute; inset:-3px; z-index:-2; width:calc(100% + 6px); height:calc(100% + 6px); max-width:none; object-fit:cover; object-position:50% 55%; display:block; margin:0; border-radius:0; }
.subpage-contact .loc-card:nth-child(1) .location-photo { object-position:50% 48%; }
.subpage-contact .loc-card:nth-child(2) .location-photo { object-position:50% 45%; }
.subpage-contact .location-stage.has-photo::before { inset:0; aspect-ratio:auto; border-radius:0; z-index:-1;
  background:linear-gradient(180deg,rgba(5,12,9,.06) 0%,rgba(5,12,9,0) 30%,rgba(5,12,9,.28) 62%,rgba(5,12,9,.78) 100%); }
.subpage-contact .location-stage.has-photo span,.subpage-contact .location-stage.has-photo small { text-shadow:0 2px 28px rgba(0,0,0,.45); }
/* Momo-Porträt 2 (vor dem Laden): Gesicht im oberen Drittel */
.subpage-about .team-lead--photo .team-photo img { object-position:50% 22%; }

/* ═══ Angebote: kompakter Seitenkopf statt Vollbild-Hero (14.09.). Die Karten
   stehen beim Einstieg sofort im Bild. Steht hinter allen Hero-Media-Queries,
   damit die 100svh/760px-Regeln oben nicht mehr greifen. ═══ */
body.subpage-offers .page-hero {
  min-height:0; justify-content:flex-end;
  padding-top:clamp(108px,11vw,140px); padding-bottom:clamp(36px,4vw,56px);
}
body.subpage-offers .page-hero::before { top:60%; font-size:clamp(6rem,14vw,15rem); }
body.subpage-offers .page-hero::after { height:clamp(56px,7vw,110px); }
body.subpage-offers .page-hero .display {
  max-width:none; margin-top:8px; font-size:clamp(2.5rem,4.6vw,4.4rem); line-height:1; letter-spacing:-.045em;
}
body.subpage-offers .page-hero .display .thin { display:inline; margin-top:0; }
body.subpage-offers .page-hero .condition { margin-top:14px; }
body.subpage-offers #iphone { padding-top:clamp(48px,5.5vw,76px); }
@media (max-width:900px) {
  body.subpage-offers .page-hero { min-height:0; padding:100px 20px 36px; }
  body.subpage-offers .page-hero .display { max-width:none; font-size:clamp(2.2rem,7.5vw,3.4rem); }
}
@media (max-width:640px) {
  body.subpage-offers .page-hero { min-height:0; padding:92px 18px 30px; }
  body.subpage-offers .page-hero .display { font-size:clamp(2.05rem,9vw,2.9rem); line-height:1.04; }
  body.subpage-offers .page-hero .condition { font-size:.95rem; }
  body.subpage-offers #iphone { padding-top:44px; }
}

/* ═══ Instagram-Feed-Rail lebt seit 14.09. auf Über uns (aus home-premium.css hierher gezogen). ═══ */
/* ═══ Feed-Rail: echte Reels, echte Zahlen, CSS-only-Loop ═══
   Track = zwei identische Gruppen; jede Gruppe trägt den Abstand als padding-right,
   damit translate(-50%) exakt eine Gruppe weit fährt und der Loop nahtlos ist. */
.feed-section {
  position:relative; overflow:hidden; padding:clamp(72px,9vw,140px) 0 clamp(80px,9vw,140px); color:#f2fbf6;
  background:
    radial-gradient(ellipse at 12% 8%,rgba(0,230,118,.42),transparent 38%),
    radial-gradient(ellipse at 88% 92%,rgba(0,230,118,.24),transparent 40%),
    linear-gradient(160deg,#04140c 0%,#0c3d24 48%,#04140c 100%);
}
.feed-section::before {
  content:"INSTAGRAM"; position:absolute; left:-2vw; top:6%; z-index:0; pointer-events:none;
  font-size:clamp(7rem,20vw,22rem); font-weight:850; letter-spacing:-.06em; line-height:.8; color:rgba(255,255,255,.045);
}
.feed-shell { position:relative; z-index:1; width:min(100% - 44px,1360px); margin:0 auto; }
.feed-head { display:grid; gap:14px; max-width:860px; }
.feed-eyebrow { color:#19e783; font-size:.8rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.feed-h { margin:0; color:#fff; font-size:clamp(2.6rem,6vw,5.6rem); line-height:.96; letter-spacing:-.04em; font-weight:800; max-width:14ch; text-wrap:balance; }
.feed-sub { display:flex; flex-wrap:wrap; align-items:center; gap:4px 20px; margin:0; color:rgba(255,255,255,.72); font-size:clamp(1rem,1.4vw,1.2rem); }
.feed-link { position:relative; display:inline-flex; align-items:center; min-height:44px; color:#19e783; font-weight:700; }
.feed-link:hover { text-decoration:underline; }
.feed-marquee {
  position:relative; z-index:1; margin-top:clamp(30px,4vw,54px); padding-block:14px; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.feed-track { display:flex; width:max-content; animation:feed-scroll 48s linear infinite; will-change:transform; }
.feed-group { display:flex; gap:18px; list-style:none; margin:0; padding:0 18px 0 0; }
.feed-marquee:hover .feed-track { animation-play-state:paused; }
@keyframes feed-scroll { to { transform:translate3d(-50%,0,0); } }

.feed-card {
  position:relative; display:block; width:clamp(236px,17.5vw,280px); aspect-ratio:9/16; overflow:hidden; isolation:isolate;
  border-radius:26px; border:1px solid rgba(255,255,255,.18); color:#fff; background:#0d1a13;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 26px 50px rgba(0,0,0,.38); transform:translateZ(0);
  transition:transform .5s var(--spring),box-shadow .4s ease;
}
.feed-card:hover { transform:translateY(-8px) scale(1.01); box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 34px 70px rgba(0,0,0,.45); }
.feed-media { position:absolute; inset:0; z-index:-1; display:block; width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
.feed-card::after { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background:linear-gradient(180deg,rgba(4,10,7,.26),transparent 30%,transparent 46%,rgba(4,10,7,.88)); }
.feed-top { position:absolute; top:14px; left:14px; right:14px; z-index:1; display:flex; justify-content:space-between; align-items:center; }
.feed-badge {
  display:inline-flex; align-items:center; height:28px; padding:0 11px; border-radius:999px;
  font-size:.62rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.32);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
.feed-tag { font-size:.7rem; font-weight:700; letter-spacing:.08em; color:rgba(255,255,255,.88); text-shadow:0 1px 8px rgba(0,0,0,.45); }
.feed-body { position:absolute; left:14px; right:14px; bottom:14px; z-index:1; display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
.feed-body > * { min-width:0; }
.feed-quote { font-size:.86rem; line-height:1.35; font-weight:600; letter-spacing:-.01em; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.feed-meta { display:flex; justify-content:space-between; align-items:center; gap:8px; min-width:0; font-size:.62rem; }
.feed-user { display:inline-flex; align-items:center; gap:5px; min-width:0; flex:1 1 auto; font-weight:700; white-space:nowrap; }
.feed-user > span { min-width:0; overflow:hidden; text-overflow:ellipsis; }
.feed-user i { flex:0 0 auto; }
.feed-user i { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; font-style:normal; font-size:.48rem; font-weight:800; background:#19e783; color:#06281a; }
.feed-stats { display:inline-flex; flex:0 0 auto; gap:10px; font-weight:700; }
.feed-stats b { display:inline-flex; align-items:center; gap:4px; }
.feed-stats svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
/* Helle Karten mit Produktfreistellern (die WebPs sind auf #f5f5f7 geflattet) */
.feed-card--light { background:#f5f5f7; color:#1d1d1f; border-color:rgba(255,255,255,.6); }
.feed-card--light::after { background:linear-gradient(180deg,rgba(245,245,247,.1),transparent 30%,transparent 48%,rgba(245,245,247,.94)); }
.feed-card--light .feed-media { object-fit:contain; object-position:50% 38%; padding:24% 16% 30%; }
.feed-card--light .feed-badge { background:rgba(29,29,31,.07); border-color:rgba(29,29,31,.16); }
.feed-card--light .feed-tag { color:#3d3d40; text-shadow:none; }
.feed-card--light .feed-user i { background:#1d1d1f; color:#fff; }
.feed-word { position:absolute; left:10px; top:10%; z-index:0; pointer-events:none; font-size:clamp(3.4rem,6vw,5.2rem); font-weight:850; letter-spacing:-.05em; line-height:.8; color:rgba(29,29,31,.07); }

@media (max-width:767px) {
  .feed-section { padding:64px 0 72px; content-visibility:auto; contain-intrinsic-size:auto 760px; }
  .feed-section::before { display:none; }
  .feed-shell { width:min(100% - 32px,1360px); }
  .feed-card { width:min(62vw,240px); }
  .feed-card:hover { transform:none; }
  .feed-badge { -webkit-backdrop-filter:none; backdrop-filter:none; background:rgba(0,0,0,.35); }
  .feed-track { animation-duration:36s; }
  .feed-marquee { padding-block:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .feed-track { animation:none; }
  .feed-marquee { overflow-x:auto; -webkit-mask-image:none; mask-image:none; padding-inline:22px; }
  .feed-group[aria-hidden] { display:none; }
  .feed-card { transition:none; }
}

/* Über uns: die Team-Sektion endet dunkelgrün-grau, der Feed beginnt fast schwarz – weicher Übergang oben. */
.subpage-about .feed-section { box-shadow:inset 0 170px 140px -120px #1a2d23; }

/* ═══ Reel-Lightbox: Klick auf eine Feed-Karte spielt das Instagram-Video hier ab.
   Das Embed lädt erst nach Klick (ohne gespeicherte Einwilligung: zweiter Klick im Dialog). ═══ */
.feed-marquee.is-paused .feed-track { animation-play-state:paused; }
.reel-box { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom)); opacity:0; pointer-events:none; transition:opacity 260ms ease; }
.reel-box.is-open { opacity:1; pointer-events:auto; }
.reel-scrim { position:absolute; inset:0; background:rgba(4,10,7,.84); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
.reel-frame { position:relative; z-index:1; width:min(100%,420px); max-height:calc(100dvh - 32px); display:flex; flex-direction:column; border-radius:28px; overflow:hidden; background:#0b1a12; color:#fff; box-shadow:0 40px 120px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.18); transform:translate3d(0,24px,0) scale(.98); transition:transform 420ms cubic-bezier(.2,.72,.2,1); }
.reel-box.is-open .reel-frame { transform:none; }
.reel-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 10px 10px 18px; font-size:.74rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.7); }
.reel-close { width:44px; height:44px; border-radius:50%; border:0; background:rgba(255,255,255,.12); color:#fff; font-size:1rem; cursor:pointer; }
.reel-close:hover { background:rgba(255,255,255,.22); }
.reel-body { position:relative; flex:1 1 auto; min-height:220px; overflow:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; background:#000; }
.reel-body .instagram-media { margin:0 auto !important; min-width:0 !important; max-width:100% !important; width:100% !important; border-radius:0 !important; box-shadow:none !important; }
.reel-gate { display:grid; gap:16px; padding:34px 24px 30px; text-align:center; justify-items:center; }
.reel-gate p { margin:0; max-width:34ch; font-size:.95rem; line-height:1.5; color:rgba(255,255,255,.78); }
.reel-gate a { color:#19e783; }
.reel-gate .btn-primary { color:#062314; }
.reel-loading { position:absolute; inset:0; display:grid; place-items:center; color:rgba(255,255,255,.6); font-size:.85rem; }
.reel-foot { display:flex; justify-content:center; gap:18px; padding:12px 16px; font-size:.82rem; }
.reel-foot a { color:#19e783; font-weight:700; }
body.reel-open { overflow:hidden; }
@media (prefers-reduced-motion:reduce) { .reel-box, .reel-frame { transition:none; } }

/* ═══ Über uns · Reel-Wand unter der Story (16.09.): eigene MP4s (kein Meta-Embed), Endlos-Marquee
   wie .feed-marquee/.feed-track/.feed-group (gleiche Loop-Mechanik, gleiche Reduced-Motion-Fallbacks).
   Autoplay gemuted per IO in funnel.js; Ton nur auf Klick eines Tiles, mutet dabei alle anderen. ═══ */
.subpage-about .about-reels { --bridge-from:#c8d8d0; --bridge-out:#c8d8d0; --bridge-x:24%; background:radial-gradient(ellipse at 86% 28%,rgba(162,112,233,.12),transparent 42%),radial-gradient(ellipse at 12% 72%,rgba(46,232,143,.14),transparent 42%),linear-gradient(180deg,#c8d8d0 0%,#dbe6e0 46%,#c8d8d0 100%) !important; }
.about-reels-intro { max-width:820px; }
.about-reels-intro .section-h { margin-top:16px; }
.about-reels-intro .sub { max-width:52ch; margin-top:18px; }
.reel-marquee { margin-top:clamp(32px,4vw,56px); -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.reel-marquee .feed-track { animation-duration:120s; }
.reel-tile { position:relative; width:clamp(150px,13vw,190px); aspect-ratio:9/16; border-radius:20px; overflow:hidden; list-style:none; background:#0f1d17; border:1px solid rgba(255,255,255,.28); box-shadow:0 20px 50px rgba(18,48,34,.22); }
.reel-vid { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; background:#0f1d17; }
.reel-sound { position:absolute; right:8px; bottom:8px; z-index:1; width:34px; height:34px; border-radius:50%; border:1px solid rgba(255,255,255,.4); background:rgba(8,20,14,.55); color:#fff; display:grid; place-items:center; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); cursor:pointer; }
.reel-sound svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.reel-sound .reel-sound-on { display:none; }
.reel-tile.is-unmuted .reel-sound { background:#19e783; color:#06281a; border-color:transparent; }
.reel-tile.is-unmuted .reel-sound .reel-sound-off { display:none; }
.reel-tile.is-unmuted .reel-sound .reel-sound-on { display:block; }
.about-reels-more { display:flex; flex-wrap:wrap; gap:6px 24px; margin:clamp(22px,3vw,34px) 0 0; }
.about-reels-more .feed-link { color:var(--accent-text); }
@media (max-width:767px) {
  .reel-tile { width:min(38vw,170px); }
  .reel-marquee .feed-track { animation-duration:90s; }
}
@media (prefers-reduced-motion:reduce) {
  .reel-marquee { -webkit-mask-image:none; mask-image:none; }
}
