/* ─────────────────────────────────────────────────────────────────────────
   B GREEN editorial "content page" sections (Om os / Kontakt / Presse), packaged
   as editable PageBuilder content types. Namespaced under .bgp (each content type
   root = class="bgp bgp-<type>"), styled here so nothing leaks site-wide. Same
   brand system as the front page + campaign. Per-section default vertical padding
   (like .bgs / .bgc) so the client never sets spacing in PageBuilder.
   ───────────────────────────────────────────────────────────────────────── */
.bgp{
  --accent:#566644;--accent-hover:#465438;--paper:#FCFBF8;--paper-warm:#F7F5EF;--sand:#EFEBE2;
  --ink-heading:#3E3E37;--ink-body:#57564D;--ink-soft:#85847A;--ink-faint:#ABAA9F;--hairline:#E6E3D9;
  --font-serif:'Playfair Display','Times New Roman',Georgia,serif;--font-sans:'Nunito Sans',system-ui,sans-serif;
  --container:1600px;--container-pad:3rem;--bgp-section-pad:clamp(48px,4.5vw,84px);
  font-family:var(--font-sans);color:var(--ink-body);font-size:16px;line-height:1.65;font-weight:500;
}
.bgp *,.bgp *::before,.bgp *::after{box-sizing:border-box;}
.bgp img{display:block;max-width:100%;margin:0;}
.bgp img[src=""],.bgp img:not([src]){visibility:hidden;}
.bgp a{color:inherit;text-decoration:none;}
.bgp h1,.bgp h2,.bgp h3,.bgp h4,.bgp .serif{font-family:var(--font-serif);font-weight:500;color:var(--ink-heading);line-height:1.14;margin:0;text-wrap:balance;}
.bgp p{margin:0;}
.bgp .container{max-width:var(--container);margin:0 auto;padding:0 var(--container-pad);}
.bgp .lead{font-size:18px;line-height:1.75;max-width:60ch;}
.bgp .h-display{font-size:clamp(42px,4.2vw,70px);letter-spacing:-.018em;line-height:1.05;}
.bgp .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;padding:18px 38px;border:1px solid var(--accent);background:var(--accent);color:#FDFDFB;border-radius:0;cursor:pointer;transition:background .2s,border-color .2s;}
.bgp .btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);}
.bgp .link-arrow{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-heading);border-bottom:1px solid var(--ink-faint);padding-bottom:6px;transition:color .2s,border-color .2s;}
.bgp .link-arrow::after{content:"→";}
.bgp .link-arrow:hover{color:var(--accent);border-color:var(--accent);}

/* default per-section vertical padding (paper page background comes from
   bgreen-sections.css .page-cms, loaded on every CMS page) */
.page-cms .bgp{padding-top:var(--bgp-section-pad);padding-bottom:var(--bgp-section-pad);}

/* HERO — full-bleed veiled photo + copy at the bottom */
.bgp-hero{padding-top:0!important;padding-bottom:0!important;}
.bgp .page-hero{position:relative;width:100vw;margin-left:calc(50% - 50vw);min-height:min(64vh,600px);background:var(--paper-warm);display:flex;align-items:flex-end;}
.bgp .page-hero .ph-media{position:absolute;inset:0;z-index:0;overflow:hidden;}
.bgp .page-hero .ph-media img{width:100%;height:100%;object-fit:cover;object-position:center 58%;}
.bgp .page-hero .ph-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--paper-warm) 0%,rgba(247,245,239,.9) 120px,rgba(247,245,239,.35) 300px,rgba(247,245,239,.15) 100%),linear-gradient(90deg,var(--paper-warm) 0%,rgba(247,245,239,.7) 30%,rgba(247,245,239,0) 62%);}
.bgp .page-hero .ph-copy{position:relative;z-index:2;max-width:var(--container);margin:0 auto;width:100%;padding:190px var(--container-pad) 78px;display:flex;flex-direction:column;gap:22px;}
.bgp .page-hero .h-display{max-width:16em;}
.bgp .page-hero .lead:empty{display:none;}

/* STORY — image + copy, image side left/right, sand offset */
.bgp .story{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(48px,6vw,110px);align-items:center;}
.bgp .story[data-side="left"]{grid-template-columns:1fr 1.1fr;}
.bgp .story[data-side="left"] .st-media{order:0;}
.bgp .story[data-side="left"] .st-copy{order:1;}
.bgp .story .st-copy{display:flex;flex-direction:column;gap:22px;max-width:52ch;}
.bgp .story h2{font-size:clamp(30px,2.6vw,44px);}
.bgp .story .st-copy p:last-child:empty{display:none;}
.bgp .story .st-media{position:relative;aspect-ratio:5/4;overflow:visible;}
.bgp .story .st-media::before{content:"";position:absolute;right:-26px;bottom:-26px;width:78%;height:78%;background:var(--sand);z-index:0;}
.bgp .story[data-side="left"] .st-media::before{right:auto;left:-26px;top:-26px;bottom:auto;}
.bgp .story .st-media img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;}

/* VALUES — heading + 4 top-accent cards */
.bgp .values h2{font-size:clamp(28px,2.2vw,38px);text-align:center;margin-bottom:52px;}
.bgp .val-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(24px,2.5vw,44px);}
.bgp .val{display:flex;flex-direction:column;gap:12px;border-top:2px solid var(--accent);padding-top:22px;}
.bgp .val:has(.serif:empty){display:none;}
.bgp .val h3{font-size:22px;}
.bgp .val p{font-size:15px;color:var(--ink-body);}

/* TEAM / DEPARTMENTS — heading + optional lead + member grid */
.bgp .team .t-head{display:flex;flex-direction:column;gap:14px;margin-bottom:48px;max-width:56ch;}
.bgp .team h2{font-size:clamp(28px,2.2vw,38px);}
.bgp .team .t-head .lead:empty{display:none;}
.bgp .team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--hairline);border:1px solid var(--hairline);}
.bgp .member{background:var(--paper);padding:34px 30px;display:flex;flex-direction:column;gap:6px;}
.bgp .member:has(.m-name:empty){display:none;}
.bgp .member .m-name{font-family:var(--font-serif);font-size:22px;color:var(--ink-heading);}
.bgp .member .m-title{font-size:13px;letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase;margin-bottom:8px;}
.bgp .member .m-title:empty{display:none;}
.bgp .member a{font-size:15px;color:var(--ink-body);transition:color .2s;}
.bgp .member a:hover{color:var(--accent);}
.bgp .member a:empty{display:none;}
.bgp .member .m-contact{display:flex;flex-direction:column;gap:2px;margin-top:6px;}

/* CTA band — green (default) or paper-warm split */
.bgp .cta{width:100vw;margin-left:calc(50% - 50vw);background:var(--accent);color:#FDFDFB;}
.bgp .cta-inner{max-width:var(--container);margin:0 auto;padding:clamp(64px,7vw,110px) var(--container-pad);display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;}
.bgp .cta h2{color:#FDFDFB;font-size:clamp(30px,3vw,50px);max-width:16em;}
.bgp .cta p{max-width:54ch;color:rgba(253,253,251,.86);}
.bgp .cta p:empty{display:none;}
.bgp .cta .btn{background:rgba(252,251,248,.96);border-color:rgba(252,251,248,.96);color:var(--accent);}
.bgp .cta .btn:hover{background:#fff;border-color:#fff;}
.bgp .cta[data-variant="warm"]{background:var(--paper-warm);color:var(--ink-body);border-top:1px solid var(--hairline);}
.bgp .cta[data-variant="warm"] .cta-inner{flex-direction:row;align-items:center;justify-content:space-between;text-align:left;gap:32px;flex-wrap:wrap;padding:clamp(48px,5vw,80px) var(--container-pad);}
.bgp .cta[data-variant="warm"] h2{color:var(--ink-heading);font-size:clamp(24px,2.2vw,34px);}
.bgp .cta[data-variant="warm"] .btn{background:var(--accent);border-color:var(--accent);color:#FDFDFB;}
.bgp .cta[data-variant="warm"] .btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);}

/* CONTACT (info blocks + map) */
.bgp .k-main{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,96px);}
.bgp .info-block+.info-block{margin-top:36px;}
.bgp .info-block h3{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;}
.bgp .info-block h3:empty{display:none;}
.bgp .info-block p,.bgp .info-block a{font-size:17px;color:var(--ink-body);line-height:1.7;}
.bgp .info-block a:hover{color:var(--accent);}
.bgp .k-map{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--sand);border:1px solid var(--hairline);}
.bgp .k-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.2) saturate(.9);}

/* PRESS FORM (2-col: form + info) */
.bgp .p-main{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(40px,5vw,88px);align-items:start;}
.bgp .p-main h2{font-size:clamp(26px,2.2vw,36px);}
.bgp .p-form-intro{margin:14px 0 30px;}
.bgp .field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;}
.bgp .field label{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);}
.bgp .field input,.bgp .field textarea{font-family:var(--font-sans);font-size:15px;color:var(--ink-heading);background:#fff;border:1px solid var(--hairline);border-radius:0;padding:13px 15px;outline:none;transition:border-color .2s;}
.bgp .field input:focus,.bgp .field textarea:focus{border-color:var(--accent);}
.bgp .field textarea{min-height:130px;resize:vertical;}
.bgp .field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.bgp .consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ink-soft);margin-bottom:22px;line-height:1.5;}
.bgp .consent input{margin-top:3px;accent-color:var(--accent);}
.bgp .p-info h3{font-family:var(--font-serif);font-size:22px;margin-bottom:6px;}
.bgp .p-info .info-line{font-size:16px;line-height:1.8;color:var(--ink-body);}
.bgp .p-info a:hover{color:var(--accent);}
.bgp .p-info hr{border:none;border-top:1px solid var(--hairline);margin:24px 0;}
.bgp .p-info h4{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;}

/* PRESS IMAGE GRID */
.bgp .pressimg h2{margin-bottom:14px;font-size:clamp(26px,2.2vw,36px);}
.bgp .pressimg .lead{margin-bottom:40px;}
.bgp .img-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.bgp .img-grid a{position:relative;aspect-ratio:1;overflow:hidden;background:var(--sand);}
.bgp .img-grid a:has(img[src=""]){display:none;}
.bgp .img-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.bgp .img-grid a:hover img{transform:scale(1.04);}
.bgp .img-note{font-size:12.5px;color:var(--ink-faint);margin-top:16px;}
.bgp .img-note:empty{display:none;}

@media (max-width:1000px){
  .bgp .story,.bgp .story[data-side="left"]{grid-template-columns:1fr;}
  .bgp .val-grid{grid-template-columns:1fr 1fr;}
  .bgp .team-grid{grid-template-columns:1fr 1fr;}
  .bgp .k-main,.bgp .p-main{grid-template-columns:1fr;}
  .bgp .dept-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .bgp .val-grid,.bgp .team-grid{grid-template-columns:1fr;}
  .bgp .img-grid,.bgp .field-row{grid-template-columns:1fr;}
  .bgp .page-hero .ph-copy{padding-top:150px;padding-bottom:56px;}
  .bgp .cta[data-variant="warm"] .cta-inner{flex-direction:column;align-items:flex-start;}
}
