/* Approved option 1. Scope all About layout to its own root. */
#gerhman-about-directions {
  --ga-radius:18px;
  --ga-ink:var(--ink, #f5f5f7);
  --ga-muted:var(--muted, #bcbcc2);
  --ga-panel:var(--surface-solid, #242424);
  --ga-line:var(--line, #ffffff1c);
  --ga-accent-soft:#ef7d8c;
  --ga-accent-panel:#43252b;
  --ga-brands-background:linear-gradient(125deg,#281b1e,#1c1c1c 70%);
  --ga-closing-background:linear-gradient(105deg,#242424,#332126);
  --ga-suite-background:linear-gradient(135deg,#39242b 0%,#232124 55%,#202020 100%);
  width:100%; max-width:1440px; min-width:0; margin:0 auto;
  padding:32px clamp(20px,3vw,48px) 72px;
  color:var(--ga-ink); background:transparent;
}
[data-theme="light"] #gerhman-about-directions {
  --ga-ink:var(--ink, #242424);
  --ga-muted:var(--muted, #5d5d65);
  --ga-panel:var(--surface-solid, #fff);
  --ga-line:var(--line, #00000024);
  --ga-accent-soft:#b51a35;
  --ga-accent-panel:#fff0f3;
  --ga-brands-background:linear-gradient(125deg,#fff0f3,#fff 70%);
  --ga-closing-background:linear-gradient(105deg,#fff,#fff0f3);
  --ga-suite-background:linear-gradient(135deg,#fff0f3 0%,#fff 65%);
}
#gerhman-about-directions *, #gerhman-about-directions *::before, #gerhman-about-directions *::after { box-sizing:border-box; }
#gerhman-about-directions [hidden] { display:none!important; }
#gerhman-about-directions a:focus-visible, #gerhman-about-directions button:focus-visible { outline:3px solid #d61f3e; outline-offset:4px; }
#gerhman-about-directions button { text-transform:none; letter-spacing:normal; box-shadow:none; }
#gerhman-about-directions :is(h1,h2,h3) { text-transform:none; }
#gerhman-about-directions .ga-product a.ga-action { color:#fff; }
#gerhman-about-directions .ga-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:0; font-size:15px; line-height:1.5; }
#gerhman-about-directions .ga-breadcrumb a:hover { text-decoration:underline; text-underline-offset:4px; }
#gerhman-about-directions .ga-suite-visual img { display:block; width:100%; max-width:100%; height:auto; margin:0; border:0; }
#gerhman-about-directions .ga-native-tooltip { position:absolute; left:50%; bottom:100%; transform:translateX(-50%); padding:7px 11px; background:#b71b34; color:#fff; font-size:13px; font-weight:500; line-height:1.3; border-radius:7px; white-space:nowrap; opacity:0; visibility:hidden; pointer-events:none; }
#gerhman-about-directions .ga-presence-pin:is(:hover,:focus-visible,.is-active) { z-index:5; }
#gerhman-about-directions .ga-presence-pin:is(:hover,:focus-visible,.is-active) .ga-native-tooltip { opacity:1; visibility:visible; }
[data-theme="light"] #gerhman-about-directions .ga-offer-grid img { filter:invert(1); }
#gerhman-about-directions .ga-video-dialog:not([open]) { display:none; }
#gerhman-about-directions .ga-video-heading h2 { color:#f6f6f6; line-height:1.3; }

#gerhman-about-directions { --ga-radius:18px; --ga-media-height:280px; }
#gerhman-about-directions .ga-product { background:transparent; color:var(--ga-ink); font-family:inherit; font-size:15px; line-height:1.55; }
#gerhman-about-directions .ga-product * { box-sizing:border-box; }
#gerhman-about-directions .ga-product a { color:inherit; text-decoration:none; }
#gerhman-about-directions .ga-product p { margin:0 0 17px; color:var(--ga-muted); font-size:15px; line-height:1.7; }
#gerhman-about-directions .ga-product h1, #gerhman-about-directions .ga-product h2, #gerhman-about-directions .ga-product h3 { margin:0; color:var(--ga-ink); font-family:inherit; font-weight:600; letter-spacing:-.04em; }
#gerhman-about-directions .ga-product h1 { font-size:clamp(36px,5.1vw,58px); line-height:1.04; }
#gerhman-about-directions .ga-product h2 { font-size:clamp(27px,3.3vw,38px); line-height:1.13; }
#gerhman-about-directions .ga-product h3 { font-size:20px; line-height:1.25; letter-spacing:-.025em; margin:18px 0 12px; }
#gerhman-about-directions .ga-eyebrow { display:block; margin-bottom:14px; color:var(--ga-accent-soft); font-size:11px; font-weight:600; letter-spacing:.15em; }
#gerhman-about-directions .ga-action { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; min-height:45px; padding:12px 20px; border-radius:10px; background:#c21b38; color:#fff; font-weight:500; font-size:14px; line-height:1.4; }
#gerhman-about-directions .ga-action:hover { background:#da2446; }
#gerhman-about-directions .ga-about { margin:0; padding:0; border:0; background:transparent; }
#gerhman-about-directions .ga-suite { flex-shrink:0; padding:10px 13px; color:var(--ga-accent-soft); background:var(--ga-accent-panel); border:1px solid #65343d; border-radius:10px; font-size:12px; }
#gerhman-about-directions .ga-body { padding:0; }
#gerhman-about-directions .ga-breadcrumb { color:var(--ga-muted); font-size:12px; margin-bottom:34px; }
#gerhman-about-directions .ga-hero { padding:6px 0 30px; }
#gerhman-about-directions .ga-split { display:grid; grid-template-columns:1.1fr 1fr; gap:40px; align-items:center; }
#gerhman-about-directions .ga-lead { font-size:16px; }
#gerhman-about-directions .ga-hero p:last-child { margin-bottom:0; }
#gerhman-about-directions .ga-section { padding:34px 0; border-bottom:1px solid var(--ga-line); }
#gerhman-about-directions .ga-offer-intro { margin:22px 0 28px; }
#gerhman-about-directions .ga-offer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
#gerhman-about-directions .ga-offer-grid article { display:flex; flex-direction:column; min-width:0; padding:24px 20px; border:1px solid var(--ga-line); border-radius:var(--ga-radius); background:var(--ga-panel); }
#gerhman-about-directions .ga-offer-grid img { display:block; width:80px; height:80px; object-fit:contain; margin:3px 0 24px; }
#gerhman-about-directions .ga-offer-grid h3 { font-size:20px; margin:0 0 24px; min-height:76px; }
#gerhman-about-directions .ga-offer-grid p { margin:0; font-size:14px; }
#gerhman-about-directions .ga-brands-section { margin:38px 0 4px; padding:34px 28px; border:1px solid #513037; border-radius:var(--ga-radius); background:var(--ga-brands-background); }
#gerhman-about-directions .ga-brands-heading { text-align:center; max-width:730px; margin:0 auto 32px; }
#gerhman-about-directions .ga-brands-heading h2 { font-size:clamp(32px,4.3vw,48px); }
#gerhman-about-directions .ga-brands-heading p { margin:22px 0 0; }
#gerhman-about-directions .ga-brands-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
#gerhman-about-directions .ga-brands-grid article { min-width:0; }
/* Separate original logos; retain their proportions and use supplied theme variants. */
#gerhman-about-directions .ga-brand-logo { display:flex; align-items:center; min-width:0; height:104px; margin:0 0 27px; }
#gerhman-about-directions .ga-brand-logo img { display:block; position:static; width:100%; max-width:300px; max-height:100%; height:auto; object-fit:contain; object-position:left center; filter:none; }
#gerhman-about-directions .ga-brand-logo-main img { max-width:242px; }
#gerhman-about-directions .ga-brand-logo-heavy img { max-width:270px; }
#gerhman-about-directions .ga-brand-logo-plus img { max-width:280px; }
#gerhman-about-directions .ga-brand-logo .ga-logo-light { display:none; }
[data-theme="light"] #gerhman-about-directions .ga-brand-logo .ga-logo-dark { display:none; }
[data-theme="light"] #gerhman-about-directions .ga-brand-logo .ga-logo-light { display:block; }
#gerhman-about-directions .ga-brand-detail { padding-top:20px; border-top:1px solid var(--ga-line); }
#gerhman-about-directions .ga-brand-stage { display:block; font-size:10px; color:var(--ga-accent-soft); letter-spacing:.12em; line-height:1.5; }
#gerhman-about-directions .ga-brand-detail h3 { margin:12px 0 16px; }
#gerhman-about-directions .ga-brand-detail p { font-size:14px; margin:0; }
#gerhman-about-directions .ga-home-references { margin:34px 0 0; }
#gerhman-about-directions .ga-philosophy { display:grid; grid-template-columns:1.4fr 1fr; align-items:center; gap:34px; padding:50px 0 38px; }
#gerhman-about-directions .ga-philosophy-heading>span { display:block; margin-bottom:9px; color:var(--ga-accent-soft); font-size:clamp(25px,3.6vw,36px); line-height:1.15; font-weight:600; letter-spacing:-.03em; }
#gerhman-about-directions .ga-philosophy-heading h2 { font-size:clamp(34px,4.6vw,48px); }
#gerhman-about-directions .ga-philosophy-values { border-left:1px solid var(--ga-line); padding:10px 0 10px 28px; }
#gerhman-about-directions .ga-philosophy-values p { margin:0 0 9px; color:var(--ga-ink); font-size:clamp(21px,2.9vw,29px); line-height:1.35; }
#gerhman-about-directions .ga-philosophy-values p:last-child { margin:0; }
#gerhman-about-directions .ga-philosophy-values strong { color:var(--ga-accent-soft); font-weight:500; }
#gerhman-about-directions .ga-purpose-grid { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px; padding-top:30px; margin-top:8px; border-top:1px solid var(--ga-line); }
#gerhman-about-directions .ga-purpose-grid article { min-width:0; }
#gerhman-about-directions .ga-purpose-grid h3 { margin:0 0 18px; font-size:clamp(25px,3vw,32px); line-height:1.15; letter-spacing:-.035em; }
#gerhman-about-directions .ga-purpose-grid p { margin:0; font-size:16px; line-height:1.7; }
#gerhman-about-directions .ga-story { display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; }
#gerhman-about-directions .ga-story p:last-child { margin-bottom:0; }
#gerhman-about-directions .ga-closing { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:30px; padding:26px; background:var(--ga-closing-background); border:1px solid #523039; border-radius:var(--ga-radius); }
#gerhman-about-directions .ga-closing h2 { font-size:28px; }
#gerhman-about-directions .ga-closing p { font-size:14px; max-width:510px; margin:12px 0 0; }
#gerhman-about-directions .ga-closing .ga-action { flex-shrink:0; }
#gerhman-about-directions .ga-text-link { display:inline-block; color:var(--ga-accent-soft); border-bottom:1px solid #8d4755; padding-bottom:4px; font-size:14px; }
#gerhman-about-directions .ga-suite-feature { margin:36px 0 2px; padding:34px; border:1px solid #74323e; border-radius:var(--ga-radius); background:var(--ga-suite-background); }
#gerhman-about-directions .ga-suite-heading { max-width:750px; margin-bottom:28px; }
#gerhman-about-directions .ga-suite-heading h2 { font-size:clamp(34px,4.7vw,52px); line-height:1.07; }
#gerhman-about-directions .ga-suite-heading .ga-suite-intro { margin:20px 0 0; color:var(--ga-ink); font-size:18px; line-height:1.65; }
#gerhman-about-directions .ga-suite-content { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; }
#gerhman-about-directions .ga-suite-content>div { min-width:0; }
#gerhman-about-directions .ga-suite-visual { margin:0; min-width:0; overflow:hidden; border:1px solid var(--ga-line); border-radius:var(--ga-radius); background:var(--ga-panel); }
#gerhman-about-directions .ga-suite-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px 22px; margin-top:25px; }
#gerhman-about-directions .ga-suite-actions .ga-suite { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 20px; font-size:16px; border-color:#944153; color:var(--ga-accent-soft); background:var(--ga-accent-panel); }
#gerhman-about-directions .ga-suite-actions .ga-text-link { font-size:13px; }
#gerhman-about-directions .ga-suite-workflow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:30px; padding-top:22px; border-top:1px solid var(--ga-line); }
#gerhman-about-directions .ga-suite-workflow span { font-size:14px; color:var(--ga-ink); }
#gerhman-about-directions .ga-suite-workflow b { display:block; margin-bottom:8px; color:var(--ga-accent-soft); font-size:12px; font-weight:500; }
@media(max-width:760px){
  #gerhman-about-directions .ga-purpose-grid { grid-template-columns:1fr; gap:30px; }
  #gerhman-about-directions .ga-offer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #gerhman-about-directions .ga-offer-grid h3 { min-height:52px; }
  #gerhman-about-directions .ga-brands-grid { grid-template-columns:1fr; gap:30px; }
  #gerhman-about-directions .ga-brands-grid article { display:grid; grid-template-columns:.75fr 1.25fr; align-items:center; gap:24px; }
  #gerhman-about-directions .ga-brand-logo { margin:0; }
  #gerhman-about-directions .ga-brand-detail { padding-top:0; border:0; }
  #gerhman-about-directions .ga-suite { margin-left:auto; }
  #gerhman-about-directions .ga-body { padding:0; }
#gerhman-about-directions .ga-split, #gerhman-about-directions .ga-story{ grid-template-columns:1fr; gap:24px; }
  #gerhman-about-directions .ga-closing { align-items:flex-start; flex-direction:column; }
  #gerhman-about-directions .ga-suite-feature { padding:26px; }
  #gerhman-about-directions .ga-suite-content{ grid-template-columns:1fr; }
  #gerhman-about-directions .ga-suite-actions .ga-suite { margin-left:0; }
}
@media(max-width:480px){
  #gerhman-about-directions .ga-philosophy { grid-template-columns:1fr; gap:25px; }
  #gerhman-about-directions .ga-offer-grid { grid-template-columns:1fr; }
  #gerhman-about-directions .ga-offer-grid h3 { min-height:0; }
  #gerhman-about-directions .ga-brands-section { padding:26px 22px; }
  #gerhman-about-directions .ga-brands-grid article { grid-template-columns:1fr; gap:18px; }
  #gerhman-about-directions .ga-brand-logo { width:100%; max-width:280px; }
  #gerhman-about-directions .ga-closing { padding:22px; }
  #gerhman-about-directions .ga-suite-feature { padding:22px; }
  #gerhman-about-directions .ga-suite-workflow { grid-template-columns:1fr; gap:16px; }
  #gerhman-about-directions .ga-suite-workflow b { display:inline; margin-right:12px; }
}
#gerhman-about-directions .ga-photo { width:100%; min-width:0; background-color:#202020; background-size:cover; background-position:center; background-repeat:no-repeat; border-radius:var(--ga-radius); overflow:hidden; aspect-ratio:4/3; }
#gerhman-about-directions .ga-photo-wide { aspect-ratio:2/1; }
#gerhman-about-directions .ga-photo-team { background-position:76% 50%; }
#gerhman-about-directions .ga-story-photo { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:34px; align-items:center; padding:44px 0; }
#gerhman-about-directions .ga-story-photo h2 { margin-bottom:24px; }
#gerhman-about-directions .ga-closing-photo { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); padding:0; gap:0; overflow:hidden; }
#gerhman-about-directions .ga-closing-photo .ga-photo { height:100%; min-height:260px; aspect-ratio:4/3; border-radius:0; }
#gerhman-about-directions .ga-closing-copy { padding:30px; min-width:0; }
#gerhman-about-directions .ga-closing-copy .ga-action { margin-top:22px; }
@media(max-width:760px){
  #gerhman-about-directions .ga-story-photo, #gerhman-about-directions .ga-closing-photo { grid-template-columns:minmax(0,1fr); }
  #gerhman-about-directions .ga-photo-wide, #gerhman-about-directions .ga-story-photo .ga-photo{ aspect-ratio:16/9; }
  #gerhman-about-directions .ga-closing-photo .ga-photo { aspect-ratio:16/9; height:auto; min-height:0; }
  #gerhman-about-directions .ga-closing-copy { padding:26px; }
}
@media(max-width:480px){
  #gerhman-about-directions .ga-closing-copy { padding:22px; }
}

#gerhman-about-directions .ga-photo-laser { background-image:url(about-laser.jpg); }


#gerhman-about-directions .ga-photo-team { background-image:url(about-team.jpg); }
#gerhman-about-directions .ga-home-references { background:var(--ga-panel); border:1px solid var(--ga-line); border-radius:var(--ga-radius); overflow:hidden; }
#gerhman-about-directions .ga-references-heading { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:36px; align-items:start; padding:36px 4.7% 32px; }
#gerhman-about-directions .ga-references-heading h2 { font-size:clamp(28px,3.3vw,38px); }
#gerhman-about-directions .ga-references-heading .ga-action { margin-top:24px; }
#gerhman-about-directions .ga-references-heading p { margin:0; font-size:15px; line-height:1.75; }
@media(max-width:760px){
  #gerhman-about-directions .ga-references-heading { grid-template-columns:minmax(0,1fr); gap:24px; padding:28px 24px; }
}
#gerhman-about-directions .ga-presence { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:32px; align-items:center; padding:42px 0; border-bottom:1px solid var(--ga-line); }
#gerhman-about-directions .ga-presence-copy, #gerhman-about-directions .ga-presence-visual { min-width:0; }
#gerhman-about-directions .ga-presence-copy h2 { font-size:clamp(27px,3.25vw,37px); }
#gerhman-about-directions .ga-presence-copy p { margin:22px 0; }
#gerhman-about-directions .ga-presence-visual { width:100%; max-width:680px; margin:0 auto; }
#gerhman-about-directions .ga-presence-map { width:100%; overflow:hidden; padding:16px 0 0; }
#gerhman-about-directions .ga-presence-plane { position:relative; width:max(100%,560px); aspect-ratio:1200/520; margin-left:50%; transform:translateX(-50%); background-size:100% 100%; background-repeat:no-repeat; background-position:center; }
#gerhman-about-directions .ga-presence-pin { position:absolute; left:var(--ga-pin-x); top:var(--ga-pin-y); transform:translate(-50%,-50%); width:28px; height:44px; display:flex; align-items:center; justify-content:center; margin:0; padding:0; border:0; border-radius:14px; background:transparent; color:var(--ga-ink); cursor:pointer; }
#gerhman-about-directions .ga-presence-pin::before { content:""; width:9px; height:9px; border-radius:50%; background:#e32949; box-shadow:0 0 0 0 #e3294900; transition:box-shadow .18s ease; }
#gerhman-about-directions .ga-presence-pin.is-active::before { box-shadow:0 0 0 5px #e329492b,0 0 0 6px #e3294970; }
#gerhman-about-directions .ga-presence-countries { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:12px 0 0; }
#gerhman-about-directions .ga-presence-countries button { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-width:0; min-height:66px; padding:12px 10px; color:var(--ga-ink); background:transparent; border:0; border-top:1px solid var(--ga-line); border-radius:0; font:inherit; text-align:left; cursor:pointer; transition:color .18s ease,border-color .18s ease,background .18s ease; }
#gerhman-about-directions .ga-presence-countries button span { font-size:15px; font-weight:500; }
#gerhman-about-directions .ga-presence-countries button small { margin-top:4px; color:var(--ga-muted); font-size:11px; line-height:1.4; }
#gerhman-about-directions .ga-presence-countries button.is-active { color:var(--ga-accent-soft); border-top-color:#e32949; background:linear-gradient(#d5224016,transparent); }
@media(max-width:760px){
  #gerhman-about-directions .ga-presence { grid-template-columns:minmax(0,1fr); gap:20px; padding:34px 0; }
}
@media(max-width:480px){
  #gerhman-about-directions .ga-presence-plane { transform:translateX(-60%); }
  #gerhman-about-directions .ga-presence-countries { gap:7px; }
  #gerhman-about-directions .ga-presence-countries button { padding:11px 5px; }
}
@media(prefers-reduced-motion:reduce){
  #gerhman-about-directions .ga-presence-pin::before, #gerhman-about-directions .ga-presence-countries button { transition:none; }
}

#gerhman-about-directions .ga-presence-plane { background-image:url(contact-world-map.svg); }
#gerhman-about-directions .ga-story-video { position:relative; display:block; width:100%; min-width:0; aspect-ratio:4/3; margin:0; padding:0; overflow:hidden; border:1px solid #42363a; border-radius:var(--ga-radius); background:#202020; color:#fff; text-align:left; cursor:pointer; }
#gerhman-about-directions .ga-story-video>img { display:block; width:100%; height:100%; object-fit:cover; object-position:59% center; }
#gerhman-about-directions .ga-story-video::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,#000b); pointer-events:none; }
#gerhman-about-directions .ga-story-video-label { position:absolute; z-index:1; left:24px; right:24px; bottom:24px; display:flex; align-items:center; gap:14px; font-size:18px; font-weight:500; line-height:1.4; font-family:inherit; }
#gerhman-about-directions .ga-story-video-label small { display:block; margin-top:3px; color:#ddd; font-size:12px; font-weight:400; line-height:1.4; font-family:inherit; }
#gerhman-about-directions .ga-story-play { display:flex; align-items:center; justify-content:center; flex:0 0 52px; width:52px; height:52px; border:1px solid #fa8194; border-radius:50%; background:#bf1b38; font-size:17px; padding-left:3px; }
#gerhman-about-directions .ga-story-video:hover .ga-story-play { background:#dd2948; }
#gerhman-about-directions .ga-video-dialog { width:calc(100% - 40px); max-width:1120px; max-height:calc(100dvh - 32px); padding:0; border:1px solid #504147; border-radius:16px; background:#151515; color:#f6f6f6; font-family:inherit; }
#gerhman-about-directions .ga-video-dialog::backdrop { background:#000d; }
#gerhman-about-directions .ga-video-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 22px; }
#gerhman-about-directions .ga-video-heading h2 { margin:0; font-size:20px; font-weight:500; }
#gerhman-about-directions .ga-video-heading button { min-height:44px; padding:10px 14px; border:1px solid #61434a; border-radius:8px; background:#392329; color:#f6e7ea; font-size:14px; font-weight:500; line-height:1.4; font-family:inherit; cursor:pointer; }
#gerhman-about-directions .ga-video-dialog video { display:block; width:100%; max-height:calc(100dvh - 132px); aspect-ratio:16/9; background:#000; object-fit:contain; }
#gerhman-about-directions .ga-video-message { padding:12px 22px; color:#f4bec8; font-size:14px; }
@media(max-width:760px){
  #gerhman-about-directions .ga-story-video { aspect-ratio:16/9; }
  #gerhman-about-directions .ga-story-video-label { left:18px; bottom:18px; }
}

/* Opening film breaks out of the text column, keeping the rest of About aligned. */
#gerhman-about-directions .ga-opening-film { position:relative; width:var(--ga-viewport-width,100vw); max-width:none; height:min(56.25vw,calc(100svh - var(--ga-header-height,88px))); margin:0 0 8px calc((100% - var(--ga-viewport-width,100vw))/2); overflow:hidden; background:#141414; border:0; border-radius:0; }
#gerhman-about-directions .ga-opening-video { display:block; width:100%; max-width:none; height:100%; margin:0; object-fit:cover; object-position:center; border:0; border-radius:0; }
#gerhman-about-directions .ga-opening-toggle { position:absolute; right:clamp(18px,3vw,48px); bottom:24px; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; min-width:96px; padding:10px 16px; border:1px solid #ffffff75; border-radius:28px; background:#171717bb; color:#fff; font-family:inherit; font-weight:500; font-size:13px; line-height:1.4; cursor:pointer; backdrop-filter:blur(12px); }
#gerhman-about-directions .ga-opening-toggle:hover { background:#171717e6; }
#gerhman-about-directions .ga-opening-toggle:focus-visible { outline:3px solid #fff; outline-offset:-6px; }
#gerhman-about-directions .ga-opening-toggle-icon { width:14px; font-size:13px; text-align:center; }
@media(max-width:760px){
  #gerhman-about-directions .ga-opening-film { height:auto; aspect-ratio:16/9; }
  #gerhman-about-directions .ga-opening-toggle { right:16px; bottom:14px; min-width:44px; padding:10px 13px; }
  #gerhman-about-directions .ga-opening-toggle-label { display:none; }
}

/* Keep the video on its own compositing layer in embedded WebKit previews. */
#gerhman-about-directions .ga-opening-film { isolation:isolate; }
#gerhman-about-directions .ga-opening-video { position:relative; z-index:0; transform:translateZ(0); }
#gerhman-about-directions .ga-opening-toggle { z-index:1; backdrop-filter:none; -webkit-backdrop-filter:none; }

/* Engineering, organisational standards and a concise company story. */
#gerhman-about-directions .ga-engineering { padding:52px 0 0; border-bottom:0; }
#gerhman-about-directions .ga-engineering-intro, #gerhman-about-directions .ga-story-intro { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
#gerhman-about-directions .ga-engineering-intro>div, #gerhman-about-directions .ga-story-intro>div { min-width:0; }
#gerhman-about-directions .ga-engineering-intro h2 { margin-bottom:22px; }
#gerhman-about-directions .ga-engineering-image { margin:0; overflow:hidden; border-radius:var(--ga-radius); aspect-ratio:4/3; background:var(--ga-panel); }
#gerhman-about-directions .ga-engineering-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:42% 50%; filter:brightness(.89) saturate(.8); }
[data-theme="light"] #gerhman-about-directions .ga-engineering-image img { filter:saturate(.88); }
#gerhman-about-directions .ga-film-link { display:inline-flex; align-items:center; flex-wrap:wrap; gap:10px; padding:10px 0; min-height:44px; border:0; border-bottom:1px solid var(--ga-line); border-radius:0; background:none; color:var(--ga-accent-soft); font-family:inherit; font-size:14px; font-weight:500; line-height:1.5; cursor:pointer; }
#gerhman-about-directions .ga-film-duration { color:var(--ga-muted); font-size:12px; }
#gerhman-about-directions .ga-project-support { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin:32px 0 42px; }
#gerhman-about-directions .ga-project-support article { padding-top:18px; border-top:1px solid var(--ga-line); }
#gerhman-about-directions .ga-step { color:var(--ga-accent-soft); font-size:11px; font-weight:500; letter-spacing:.1em; }
#gerhman-about-directions .ga-project-support h3 { font-size:20px; margin:12px 0; }
#gerhman-about-directions .ga-project-support p { margin:0; font-size:14px; }
#gerhman-about-directions .ga-quality { display:grid; grid-template-columns:1fr 1.08fr; gap:36px; padding:36px; border:1px solid var(--ga-line); border-top:2px solid #c21b38; border-radius:var(--ga-radius); background:var(--ga-panel); scroll-margin-top:140px; }
#gerhman-about-directions .ga-quality-copy { display:flex; flex-direction:column; gap:30px; min-width:0; }
#gerhman-about-directions .ga-quality-heading h2 { margin-bottom:26px; }
#gerhman-about-directions .ga-quality-heading p { margin:0; }
#gerhman-about-directions .ga-standards { display:grid; grid-template-columns:minmax(0,1fr); gap:0; margin:0; padding:0 0 0 32px; border-left:1px solid var(--ga-line); }
#gerhman-about-directions .ga-standards > div { position:relative; display:flex; flex-direction:column; justify-content:center; min-width:0; min-height:132px; padding:18px 0 18px 132px; border-bottom:1px solid var(--ga-line); }
#gerhman-about-directions .ga-standards > div:last-child { border-bottom:0; }
#gerhman-about-directions .ga-standard-mark { display:block; position:absolute; left:0; top:50%; transform:translateY(-50%); width:112px; height:112px; object-fit:contain; }
#gerhman-about-directions .ga-standards dt { color:var(--ga-ink); font-size:clamp(18px,1.8vw,22px); font-weight:600; line-height:1.3; letter-spacing:-.025em; }
#gerhman-about-directions .ga-standards dd { margin:7px 0 0; font-size:15px; line-height:1.5; color:var(--ga-muted); }
#gerhman-about-directions .ga-quality-footer { margin-top:auto; padding-top:22px; border-top:1px solid var(--ga-line); }
#gerhman-about-directions .ga-quality-footer p { margin:0 0 12px; font-size:14px; }
#gerhman-about-directions .ga-quality-footer a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
#gerhman-about-directions .ga-story-purpose { padding:48px 0; }
#gerhman-about-directions .ga-story-intro { align-items:start; }
#gerhman-about-directions .ga-story-intro p { margin:0; }
#gerhman-about-directions .ga-philosophy-compact { grid-template-columns:1fr 1fr; padding:28px 0 0; margin-top:28px; border-top:1px solid var(--ga-line); gap:40px; }
#gerhman-about-directions .ga-philosophy-compact .ga-philosophy-heading>span { font-size:17px; }
#gerhman-about-directions .ga-philosophy-compact h3 { font-size:32px; margin:0; }
#gerhman-about-directions .ga-philosophy-compact .ga-philosophy-values { display:flex; gap:6px 20px; flex-wrap:wrap; padding:0; border:0; }
#gerhman-about-directions .ga-philosophy-compact .ga-philosophy-values p { margin:0; font-size:19px; }
#gerhman-about-directions .ga-story-purpose .ga-purpose-grid { margin-top:25px; padding-top:25px; gap:40px; }
#gerhman-about-directions .ga-story-purpose .ga-purpose-grid h3 { font-size:23px; margin-bottom:12px; }
#gerhman-about-directions .ga-story-purpose .ga-purpose-grid p { font-size:14px; }
#gerhman-about-directions .ga-brands-heading p { max-width:680px; }
@media(max-width:1000px){
  #gerhman-about-directions .ga-quality { gap:26px; padding:28px; }
  #gerhman-about-directions .ga-standards { padding-left:24px; }
  #gerhman-about-directions .ga-standards > div { min-height:122px; padding-left:100px; }
  #gerhman-about-directions .ga-standard-mark { width:84px; height:84px; }
  #gerhman-about-directions .ga-standards dt { font-size:18px; }
  #gerhman-about-directions .ga-standards dd { font-size:14px; }
}
@media(max-width:760px){
  #gerhman-about-directions .ga-engineering-intro, #gerhman-about-directions .ga-story-intro { grid-template-columns:minmax(0,1fr); gap:24px; }
  #gerhman-about-directions .ga-engineering-image { aspect-ratio:16/9; }
  #gerhman-about-directions .ga-project-support { grid-template-columns:minmax(0,1fr); gap:20px; }
  #gerhman-about-directions .ga-quality { grid-template-columns:minmax(0,1fr); gap:28px; padding:26px; }
  #gerhman-about-directions .ga-standards { padding:12px 0 0; border-left:0; border-top:1px solid var(--ga-line); }
  #gerhman-about-directions .ga-standard-mark { width:96px; height:96px; }
  #gerhman-about-directions .ga-standards > div { min-height:118px; padding-left:116px; }
  #gerhman-about-directions .ga-philosophy-compact { grid-template-columns:minmax(0,1fr); gap:18px; }
}
@media(max-width:480px){
  #gerhman-about-directions .ga-quality { padding:22px; }
  #gerhman-about-directions .ga-standard-mark { width:82px; height:82px; }
  #gerhman-about-directions .ga-standards > div { min-height:110px; padding-left:98px; }
  #gerhman-about-directions .ga-standards dt { font-size:17px; }
  #gerhman-about-directions .ga-standards dd { font-size:13px; }
}

#gerhman-about-directions .ga-suite-visual figcaption { padding:12px 16px; border-top:1px solid var(--ga-line); color:var(--ga-muted); font-size:12px; line-height:1.5; }

/* Research photos belong to About; preserve the existing light/dark theme. */
#gerhman-about-directions .ga-research { margin:0 0 44px; padding-top:34px; border-top:1px solid var(--ga-line); scroll-margin-top:140px; }
#gerhman-about-directions .ga-research-heading { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:start; gap:40px; margin-bottom:28px; }
#gerhman-about-directions .ga-research-heading > div { min-width:0; }
#gerhman-about-directions .ga-research-heading p { margin:0; }
#gerhman-about-directions .ga-research-gallery { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:22px; }
#gerhman-about-directions .ga-research-figure { min-width:0; margin:0; overflow:hidden; border:1px solid var(--ga-line); border-radius:var(--ga-radius); background:var(--ga-panel); }
#gerhman-about-directions .ga-research-image { height:clamp(280px,31vw,390px); overflow:hidden; background:var(--ga-panel); }
#gerhman-about-directions .ga-research-image img { display:block; width:100%; height:100%; max-width:100%; object-fit:cover; }
#gerhman-about-directions .ga-research-product img { object-position:75% center; }
#gerhman-about-directions .ga-research-fire img { object-position:center 52%; }
#gerhman-about-directions .ga-research-figure figcaption { padding:15px 18px; border-top:1px solid var(--ga-line); color:var(--ga-ink); font-size:14px; line-height:1.5; }
@media(max-width:760px){
  #gerhman-about-directions .ga-research-heading { grid-template-columns:minmax(0,1fr); gap:20px; }
  #gerhman-about-directions .ga-research-gallery { grid-template-columns:minmax(0,1fr); gap:20px; }
  #gerhman-about-directions .ga-research-image { height:auto; aspect-ratio:16/9; }
  #gerhman-about-directions .ga-research-fire .ga-research-image { aspect-ratio:4/3; }
}

/* Keep section headings clear of the fixed header on direct menu links. */
#gerhman-about-directions :is(#ga-offer, #ga-suite, #ga-engineering, #ga-research, #ga-quality, #ga-references, #ga-story, #ga-presence, #ga-brands, #ga-contact) {
  scroll-margin-top: max(20px, calc(var(--ga-header-height, 120px) + 20px - var(--ga-scroll-padding-top, 110px)));
}
