:root{
--bg:#f6f2ee;
--card:#fbf8f5;
--text:#181818;
--muted:#6c6661;
--accent:#8d2333;
--line:#e6ddd6;
}
*{box-sizing:border-box}
body{margin:0;font:16px Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}
.de .en,.en .de{display:none}
.hero{padding:24px;background:linear-gradient(180deg,#efe5dd,#f6f2ee)}
nav{display:flex;justify-content:space-between;align-items:center;max-width:1100px;margin:auto}
.logo img{height:52px}
#lang{border:1px solid var(--line);background:white;border-radius:99px;padding:10px 16px}
.hero-grid{max-width:1100px;margin:50px auto;display:grid;gap:40px;grid-template-columns:1.1fr .9fr;align-items:center}
.kicker{letter-spacing:.25em;color:var(--accent);font-size:.78rem;font-weight:700}
h1{font:700 clamp(2.7rem,8vw,5rem)/1.02 system-ui,sans-serif;margin:.2em 0}
h2{font:700 2rem system-ui;margin:0 0 20px}
h3{margin:0 0 10px}
p{color:var(--muted);max-width:680px;line-height:1.7}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:14px 22px;border-radius:99px;margin-right:10px}
.ghost{background:white;color:var(--accent);border:1px solid var(--line)}
.heroimg img,.grid img{width:100%;display:block;border-radius:22px;box-shadow:0 20px 45px rgba(0,0,0,.12)}
section{max-width:1100px;margin:auto;padding:70px 24px}
.grid{display:grid;gap:22px}
.bullets{display:grid;gap:14px}
.bullets div,.pricecard,.conditions{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 16px 38px rgba(0,0,0,.06)}
.bullets div:before{content:"✦";color:var(--accent);margin-right:10px}
.pricecards{display:grid;gap:22px;margin-bottom:28px}
.pricecard strong{display:block;color:var(--accent);font-size:2.2rem;margin:8px 0}
.conditions strong{color:var(--accent)}
@media(min-width:760px){.grid,.pricecards,.bullets{grid-template-columns:1fr 1fr}.hero-grid{grid-template-columns:1.1fr .9fr}}
@media(max-width:759px){.hero-grid{grid-template-columns:1fr}}

.footer{margin-top:60px;padding-top:30px;text-align:center}
.footerline{height:1px;background:linear-gradient(to right,transparent,#8d2333,transparent);margin:0 auto 28px;max-width:280px}


.toplinks{
  display:flex;
  align-items:center;
  gap:14px;
  margin-left:auto;
  margin-right:12px;
}
.toplinks a{
  color:var(--text);
  text-decoration:none;
  font-size:.92rem;
  font-weight:700;
}
.toplinks a:hover{color:var(--accent)}
.clean-conditions{margin-top:0}
.clean-conditions .pricecards{margin-bottom:28px}
.clean-conditions > .pricecards + p{margin-top:0}
@media(max-width:760px){
  nav{gap:10px}
  .toplinks{gap:10px;margin-right:4px}
  .toplinks a{font-size:.84rem}
  .logo img{height:44px}
}
@media(max-width:480px){
  nav{flex-wrap:wrap}
  .toplinks{order:3;width:100%;justify-content:center;margin:10px 0 0}
}


/* Premium icons for selling points */
.bullets div{
display:flex;
align-items:center;
gap:14px;
}
.bullets div:before{
content:"";
width:22px;
height:22px;
flex:0 0 22px;
background-repeat:no-repeat;
background-size:contain;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%238d2333'/%3E%3Cpath d='M7 12.5l3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
margin-right:0;
}

/* Luxury feature icons inspired by the banner */
.bullets div{
    display:flex;
    align-items:center;
    gap:18px;
    padding:18px 20px;
}
.bullets div::before{
    content:"";
    width:52px;
    height:52px;
    flex:0 0 52px;
    border-radius:50%;
    background:#8d2333;
    border:2px solid rgba(255,255,255,.9);
    box-shadow:0 8px 18px rgba(141,35,51,.25);
    background-repeat:no-repeat;
    background-position:center;
    background-size:28px 28px;
}
.bullets.de div:nth-child(1)::before,
.bullets.en div:nth-child(1)::before{
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8'%3E%3Cpath d='M4 8h16v10H4z'/%3E%3Ccircle cx='12' cy='13' r='3.2'/%3E%3Cpath d='M8 8l1.2-2h5.6L16 8'/%3E%3C/svg%3E");
}
.bullets.de div:nth-child(2)::before,
.bullets.en div:nth-child(2)::before{
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8'%3E%3Cpath d='M3 12l11-5v10L3 12z'/%3E%3Cpath d='M14 10h4a3 3 0 010 6h-4'/%3E%3C/svg%3E");
}
.bullets.de div:nth-child(3)::before,
.bullets.en div:nth-child(3)::before{
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8'%3E%3Cpath d='M12 4c3 0 5 2 5 5v2c0 2 1 3 2 4H5c1-1 2-2 2-4V9c0-3 2-5 5-5z'/%3E%3Cpath d='M9 18a3 3 0 006 0'/%3E%3C/svg%3E");
}
.bullets.de div:nth-child(4)::before,
.bullets.en div:nth-child(4)::before{
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8'%3E%3Cpath d='M5 19V9M11 19V5M17 19v-8M3 19h18'/%3E%3Cpath d='M6 8l5-3 5 2 4-3'/%3E%3C/svg%3E");
}


/* Contact section with square profile picture placeholder */
.contact-content{
  display:grid;
  grid-template-columns:1fr 170px;
  gap:28px;
  align-items:center;
}
.profile-photo-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:24px;
  padding:10px;
  box-shadow:0 16px 38px rgba(0,0,0,.06);
}
.profile-photo-card img{
  width:100%;
  aspect-ratio:1/1;
  display:block;
  border-radius:18px;
  object-fit:cover;
}
@media(max-width:700px){
  .contact-content{
    grid-template-columns:1fr;
  }
  .profile-photo-card{
    width:150px;
    margin-top:10px;
  }
}


.contact-cards{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px}
.contact-card{
display:flex;align-items:center;gap:14px;
padding:16px 20px;
background:#fff;
border:1px solid rgba(141,35,51,.12);
border-radius:18px;
box-shadow:0 10px 26px rgba(0,0,0,.06);
text-decoration:none;
color:#1b1b1b;
transition:.2s ease;
}
.contact-card:hover{
transform:translateY(-2px);
box-shadow:0 16px 36px rgba(0,0,0,.1);
}
.contact-icon{
width:48px;height:48px;border-radius:50%;
background:#8d2333;color:#fff;
display:flex;align-items:center;justify-content:center;
font-size:22px;flex:none;
}
.contact-card strong{color:#8d2333}


/* Compact section spacing: roughly half the previous vertical gap */
section{
  padding-top:35px !important;
  padding-bottom:35px !important;
}
section h2{
  margin-top:0 !important;
}

/* Keep About Me & Contact profile image to the right, also on mobile */
.contact-content{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 170px !important;
  gap:24px !important;
  align-items:start !important;
}
.profile-photo-card{
  width:170px !important;
  max-width:170px !important;
  justify-self:end !important;
}
.profile-photo-card img{
  width:100% !important;
  aspect-ratio:1/1 !important;
  object-fit:cover !important;
}
@media(max-width:700px){
  .contact-content{
    grid-template-columns:minmax(0,1fr) 112px !important;
    gap:14px !important;
    align-items:start !important;
  }
  .profile-photo-card{
    width:112px !important;
    max-width:112px !important;
    margin-top:0 !important;
  }
  .contact-text p{
    font-size:.95rem;
  }
}
@media(max-width:390px){
  .contact-content{
    grid-template-columns:minmax(0,1fr) 92px !important;
    gap:10px !important;
  }
  .profile-photo-card{
    width:92px !important;
    max-width:92px !important;
  }
}


/* Studio placeholder in pricing section */
.pricing{
  position:relative;
}
.studio-placeholder-card{
  width:42%;
  margin:-8px 0 26px auto;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:22px;
  padding:10px;
  box-shadow:0 16px 38px rgba(0,0,0,.06);
}
.studio-placeholder-card img{
  width:100%;
  aspect-ratio:5/4;
  display:block;
  border-radius:16px;
  object-fit:cover;
}
@media(min-width:760px){
  .pricing .conditions{
    max-width:54%;
  }
}
@media(max-width:759px){
  .studio-placeholder-card{
    width:100%;
    margin:0 0 24px 0;
  }
}


/* Correct studio layout inside pricing text */
.pricing .studio-placeholder-card{
  float:none !important;
  position:static !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:22px;
  padding:10px;
  box-shadow:0 16px 38px rgba(0,0,0,.06);
}
.pricing .studio-placeholder-card img{
  width:100%;
  aspect-ratio:5/4;
  display:block;
  border-radius:16px;
  object-fit:cover;
}
.studio-text-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 42%;
  gap:24px;
  align-items:start;
  margin:0 0 18px;
}
.studio-text-layout .studio-text{
  min-width:0;
}
@media(max-width:759px){
  .studio-text-layout{
    display:flex;
    flex-direction:column;
    gap:18px;
  }
  .studio-text-layout .studio-placeholder-card{
    order:-1;
  }
}


/* About Me profile image: larger and aligned with first paragraph */
.contact-content{
  align-items:start !important;
}
.profile-photo-card{
  width:220px !important;
  max-width:220px !important;
  align-self:start !important;
  margin-top:3.2rem !important; /* aligns with first paragraph instead of section title */
}
@media(max-width:700px){
  .profile-photo-card{
    width:150px !important;
    max-width:150px !important;
    margin-top:2.8rem !important;
  }
}
@media(max-width:390px){
  .profile-photo-card{
    width:130px !important;
    max-width:130px !important;
    margin-top:2.6rem !important;
  }
}


/* Fix Pricing & Conditions desktop width */
.pricing{
  max-width:1100px !important;
  width:100% !important;
}
.pricing .conditions{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
}
.pricing .pricecards{
  width:100% !important;
}
.pricing .studio-text-layout{
  width:100% !important;
  max-width:100% !important;
}
@media(min-width:760px){
  .pricing .conditions{
    max-width:100% !important;
  }
  .pricing .studio-text-layout{
    grid-template-columns:minmax(0,1fr) 42% !important;
  }
}


/* Mobile: place profile image between About Me heading and first paragraph */
@media (max-width:700px){
  .contact-content{
    display:block !important;
  }
  .profile-photo-card{
    width:170px !important;
    max-width:170px !important;
    margin:16px auto 22px auto !important;
  }
  .contact-text h2{
    margin-bottom:10px !important;
  }
}


/* FINAL CLEAN STRUCTURE FIXES */
body.en .de,
body.de .en,
body.lang-en .de,
body.lang-de .en{
  display:none !important;
}
body.en .en,
body.de .de{
  display:block;
}

/* compact section spacing */
section{
  padding-top:35px !important;
  padding-bottom:35px !important;
}

/* pricing full width and correct studio placement */
.pricing{
  max-width:1100px !important;
  width:100% !important;
}
.pricing .conditions{
  width:100% !important;
  max-width:100% !important;
}
.pricing .pricecards{
  width:100% !important;
}
.studio-text-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 42% !important;
  gap:24px !important;
  align-items:start !important;
  margin:0 0 18px !important;
}
.studio-placeholder-card{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  float:none !important;
  position:static !important;
}
.studio-placeholder-card img{
  width:100% !important;
  aspect-ratio:5/4 !important;
  display:block !important;
  object-fit:cover !important;
}

/* About/contact: desktop image right of text, no text splitting */
.contact-section{
  max-width:1100px !important;
  width:100% !important;
}
.contact-content{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 220px !important;
  gap:28px !important;
  align-items:start !important;
}
.contact-text{
  min-width:0 !important;
}
.profile-photo-card{
  width:220px !important;
  max-width:220px !important;
  margin-top:0 !important;
  justify-self:end !important;
  align-self:start !important;
}
.profile-photo-card img{
  width:100% !important;
  aspect-ratio:1/1 !important;
  object-fit:cover !important;
  display:block !important;
}

/* mobile: heading, profile, then about text */
@media(max-width:759px){
  .studio-text-layout{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .studio-placeholder-card{
    order:-1 !important;
  }

  .contact-content{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .profile-photo-card{
    order:-1 !important;
    width:170px !important;
    max-width:170px !important;
    margin:0 auto 4px auto !important;
    align-self:center !important;
  }
}


/* Final tweaks: keep all pricing condition paragraphs beside studio image on desktop */
@media(min-width:760px){
  .studio-text-layout{
    grid-template-columns:minmax(0,1fr) 42% !important;
    align-items:start !important;
  }
  .studio-text-layout .studio-text p{
    max-width:none !important;
  }
}

/* Mobile: About Me profile placeholder fills page width */
@media(max-width:759px){
  .contact-content .profile-photo-card{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 20px 0 !important;
    align-self:stretch !important;
  }
  .contact-content .profile-photo-card img{
    width:100% !important;
    aspect-ratio:1/1 !important;
    object-fit:cover !important;
  }
}


/* Restore pricing package pair layout */
.pricecards{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:24px !important;
  width:100% !important;
  margin-bottom:28px !important;
}
.pricecard{
  width:100% !important;
}
@media (max-width:759px){
  .pricecards{
    grid-template-columns:1fr !important;
  }
}


/* Restore "What you get" bullet points as pairs on desktop */
.bullets{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}
.bullets div{
  width:100% !important;
}
@media(max-width:759px){
  .bullets{
    grid-template-columns:1fr !important;
  }
}


/* Mobile header: menu row underneath logo, all items in one line */
@media(max-width:759px){
  nav{display:flex !important;flex-wrap:wrap !important;gap:10px !important;align-items:center !important;}
  nav .logo{width:100% !important;display:flex !important;justify-content:center !important;}
  nav .logo img{height:46px !important;}
  .toplinks{order:2 !important;width:calc(100% - 92px) !important;display:flex !important;justify-content:space-between !important;gap:8px !important;margin:0 !important;}
  .toplinks a{font-size:.86rem !important;white-space:nowrap !important;}
  #lang,.language-toggle{order:3 !important;width:82px !important;min-width:82px !important;padding:9px 8px !important;font-size:.82rem !important;margin:0 !important;}
}

/* About Me placeholder: no white frame, like portfolio images */
.profile-photo-card{padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;border-radius:22px !important;}
.profile-photo-card img{border-radius:22px !important;box-shadow:0 20px 45px rgba(0,0,0,.12) !important;}

/* Mobile About Me: full-width placeholder and reduced space underneath */
@media(max-width:759px){
  .contact-content .profile-photo-card{width:100% !important;max-width:100% !important;margin:0 0 10px 0 !important;align-self:stretch !important;}
}


/* Main page dynamic protected images */
.protected-photo{
  position:relative;
  margin:0;
  user-select:none;
  -webkit-user-select:none;
}
.protected-photo img{
  -webkit-user-drag:none;
}
.grid .protected-photo img{
  width:100%;
  display:block;
  border-radius:22px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}
.heroimg .protected-photo img{
  width:100%;
  display:block;
  border-radius:22px;
  box-shadow:0 20px 45px rgba(0,0,0,.12);
}
.image-watermark{
  position:absolute;
  right:9px;
  bottom:9px;
  padding:4px 7px;
  border-radius:6px;
  background:rgba(0,0,0,.52);
  color:#fff;
  font-size:11px;
  line-height:1.15;
  font-weight:700;
  letter-spacing:.02em;
  pointer-events:none;
}
.profile-photo-card.protected-photo{
  overflow:hidden;
}
.profile-photo-card .image-watermark{
  right:9px;
  bottom:9px;
}


/* requested mobile nav layout */
@media(max-width:759px){
  body:not(.admin-page) nav{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
  }
  body:not(.admin-page) nav .logo{
    order:1 !important;
    width:auto !important;
    flex:1 1 auto !important;
    justify-content:flex-start !important;
  }
  body:not(.admin-page) nav .logo img{height:46px !important;}
  body:not(.admin-page) #lang,
  body:not(.admin-page) .language-toggle{
    order:2 !important;
    width:auto !important;
    min-width:82px !important;
    margin-left:auto !important;
    padding:9px 12px !important;
    font-size:.82rem !important;
  }
  body:not(.admin-page) .toplinks{
    order:3 !important;
    width:100% !important;
    flex:0 0 100% !important;
    display:flex !important;
    justify-content:space-between !important;
    gap:5px !important;
    margin:0 !important;
  }
  body:not(.admin-page) .toplinks a{
    font-size:.72rem !important;
    white-space:nowrap !important;
  }
  .mobile-title-break{display:block;}
  .nowrap{white-space:nowrap;}
}
@media(min-width:760px){
  .mobile-title-break{display:none;}
}

/* force German studio placeholder to same desktop placement as English */
@media(min-width:760px){
  .pricing .conditions.de .studio-text-layout,
  .pricing .conditions.en .studio-text-layout{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 42% !important;
    gap:24px !important;
    align-items:start !important;
  }
  .pricing .conditions.de .studio-text,
  .pricing .conditions.en .studio-text{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .pricing .conditions.de .studio-placeholder-card,
  .pricing .conditions.en .studio-placeholder-card{
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    margin:0 !important;
    align-self:start !important;
  }
}

/* Reviews */
.reviews-section{max-width:1100px !important;width:100% !important;}
.reviews-list{display:grid;gap:22px;}
.review-card{
  display:grid;
  grid-template-columns:32% minmax(0,1fr);
  gap:22px;
  align-items:start;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 38px rgba(0,0,0,.06);
}
.review-card img{
  width:100%;
  aspect-ratio:5/4;
  object-fit:cover;
  display:block;
  border-radius:16px;
  box-shadow:0 14px 30px rgba(0,0,0,.08);
}
.review-card h3{margin:0 0 8px;color:var(--accent);}
.review-card p{margin:0;max-width:none;}
@media(max-width:759px){
  .review-card{grid-template-columns:36% minmax(0,1fr);gap:14px;padding:14px;}
  .review-card p{font-size:.92rem;line-height:1.55;}
}

/* Studio placeholder not clickable/right-click protected */
.studio-placeholder-card.protected-photo{user-select:none;-webkit-user-select:none;}
.studio-placeholder-card.protected-photo img{-webkit-user-drag:none;}


/* FINAL mobile header layout:
   Row 1: logo left, language button right.
   Row 2: menu across full width. */
@media(max-width:759px){
  header.hero nav{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    grid-template-areas:
      "logo lang"
      "menu menu" !important;
    align-items:center !important;
    column-gap:12px !important;
    row-gap:12px !important;
    width:100% !important;
  }

  header.hero nav .logo{
    grid-area:logo !important;
    width:auto !important;
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
    margin:0 !important;
  }

  header.hero nav .logo img{
    height:46px !important;
    display:block !important;
  }

  header.hero nav #lang,
  header.hero nav .language-toggle{
    grid-area:lang !important;
    justify-self:end !important;
    align-self:center !important;
    width:auto !important;
    min-width:82px !important;
    margin:0 !important;
    padding:9px 12px !important;
    font-size:.82rem !important;
    white-space:nowrap !important;
  }

  header.hero nav .toplinks{
    grid-area:menu !important;
    width:100% !important;
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:6px !important;
    margin:0 !important;
  }

  header.hero nav .toplinks a{
    flex:1 1 auto !important;
    text-align:center !important;
    font-size:.72rem !important;
    white-space:nowrap !important;
  }
}

/* Reviews: image always left of review text, also on mobile */
.review-card{
  display:grid !important;
  grid-template-columns:32% minmax(0,1fr) !important;
  align-items:start !important;
}
@media(max-width:759px){
  .review-card{
    grid-template-columns:36% minmax(0,1fr) !important;
    gap:14px !important;
  }
  .review-card img{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .review-card > div{
    grid-column:2 !important;
    grid-row:1 !important;
  }
}


/* Final review spacing */
.reviews-list{
  gap:30px !important;
}
.review-card{
  margin-bottom:4px !important;
}
@media(max-width:759px){
  .reviews-list{
    gap:24px !important;
  }
}


/* Collapsible Reviews */
.reviews-section{
  cursor:pointer;
}
.reviews-toggle{
  width:100%;
  display:block;
  text-align:left;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px 20px;
  color:var(--text);
  font:inherit;
  box-shadow:0 16px 38px rgba(0,0,0,.06);
  cursor:pointer;
}
.reviews-toggle span{
  font-weight:700;
}
.reviews-content{
  display:none;
  margin-top:24px;
}
.reviews-section.reviews-open .reviews-content{
  display:block;
}
.reviews-section.reviews-open .reviews-toggle{
  margin-bottom:0;
}


/* Hide reviews teaser when reviews are open */
.reviews-section.reviews-open .reviews-toggle{
  display:none !important;
}


/* Review image fix: replacement photos always keep the same 5:4 placeholder shape */
.review-card img{
  width:100% !important;
  aspect-ratio:5/4 !important;
  height:auto !important;
  object-fit:cover !important;
  display:block !important;
}

/* Admin portfolio width fix: same content width/margins as main-page portfolio */
.admin-wrap{
  max-width:1100px !important;
  width:100% !important;
  margin:0 auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
  box-sizing:border-box !important;
}
.admin-top,
.year-index,
.shoot,
.shoot-toggle,
.shoot-content,
.admin-grid,
.admin-image{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.admin-image img{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  object-fit:contain !important;
}
@media(max-width:759px){
  .admin-wrap{
    padding-left:24px !important;
    padding-right:24px !important;
  }
}


/* Trilingual visibility */
body.en .de, body.en .nl,
body.de .en, body.de .nl,
body.nl .en, body.nl .de{
  display:none !important;
}

/* Language option buttons */
.language-toggle{
  display:flex;
  gap:6px;
  align-items:center;
  justify-content:flex-end;
}
.language-toggle button{
  border:1px solid var(--line);
  background:white;
  border-radius:99px;
  padding:9px 12px;
  color:var(--text);
  font:inherit;
  font-size:.86rem;
  cursor:pointer;
}
@media(max-width:759px){
  header.hero nav .language-toggle{
    grid-area:lang !important;
    justify-self:end !important;
    display:flex !important;
    gap:4px !important;
    width:auto !important;
    min-width:0 !important;
  }
  header.hero nav .language-toggle button{
    padding:8px 9px !important;
    font-size:.72rem !important;
    white-space:nowrap !important;
  }
}


/* Mobile language labels: show EN/DE/NL instead of full names */
.lang-short{display:none}
@media(max-width:759px){
  .language-toggle .lang-full{display:none!important}
  .language-toggle .lang-short{display:inline!important}
}
@media(min-width:760px){
  .language-toggle .lang-full{display:inline!important}
  .language-toggle .lang-short{display:none!important}
}


/* Remove outer rounded language box; keep only individual button boxes */
#lang.language-toggle,
.language-toggle{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
}

/* Reviews toggle fix: when open, hide teaser but keep content visible */
.reviews-content{
  display:none;
}
.reviews-section.reviews-open .reviews-content{
  display:block!important;
}
.reviews-section.reviews-open .reviews-toggle{
  display:none!important;
}

.contact-card,.contact-card *,a[href^='mailto'],a[href*='wa.me']{user-select:text;-webkit-user-select:text;}
