.elementor-kit-50{--e-global-color-primary:#3B2772;--e-global-color-secondary:#F2EBF8;--e-global-color-text:#000000;--e-global-color-accent:#A7A7A7;--e-global-color-da526be:#FFFFFF;--e-global-color-ccb2c67:#00000000;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-50 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===============================
   DEERNIS – PÅRØRENDE (UNDER HERO)
   Prefix: do-pr-
================================ */

:root{
  --do-ink:#241338;
  --do-text:#3c2f4a;
  --do-muted:#6b5b7b;
  --do-soft:#f6f4fa;
  --do-card:#ffffff;
  --do-line:rgba(36,19,56,.12);
  --do-accent:#36d1c4;
  --do-purple:#432874;
  --do-shadow:0 16px 40px rgba(36,19,56,.10);
}

.do-pr-wrap{max-width:1100px;margin:0 auto;padding:0 20px;}
.do-pr-h2{font-size:30px;letter-spacing:-.2px;margin:0 0 10px;color:var(--do-ink)}
.do-pr-sub{font-size:16.5px;line-height:1.7;margin:0;color:var(--do-muted)}

.do-pr-card{
  background:var(--do-card);
  border:1px solid var(--do-line);
  border-radius:18px;
  box-shadow:0 10px 24px rgba(36,19,56,.06);
}

.do-pr-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 18px;border-radius:999px;font-weight:800;text-decoration:none;
  border:1px solid transparent;transition:transform .12s ease,opacity .12s ease, box-shadow .12s ease;
  cursor:pointer;white-space:nowrap
}
.do-pr-btn:hover{transform:translateY(-1px);opacity:.96}
.do-pr-btn-primary{background:var(--do-accent);color:#071314;box-shadow:0 14px 30px rgba(54,209,196,.25)}
.do-pr-btn-ghost{background:#fff;color:var(--do-purple);border-color:rgba(67,40,116,.22)}

.do-pr-chiprow{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.do-pr-chip{background:rgba(54,209,196,.14);border:1px solid rgba(54,209,196,.22);color:var(--do-ink);font-size:13px;padding:8px 10px;border-radius:999px}

.do-pr-grid2{display:grid;grid-template-columns:1.35fr .65fr;gap:18px;align-items:start}
.do-pr-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

.do-pr-ul{margin:12px 0 0;padding-left:18px;color:var(--do-text);line-height:1.75}
.do-pr-ul li{margin-bottom:8px}

.do-pr-note{
  border-left:4px solid rgba(54,209,196,.9);
  padding:14px 14px;
  background:rgba(54,209,196,.10);
  border-radius:14px;
  color:var(--do-ink);
}

.do-pr-divider{height:1px;background:rgba(36,19,56,.10);margin:26px 0}

@media (max-width: 900px){
  .do-pr-grid2{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .do-pr-h2{font-size:24px}
  .do-pr-grid3{grid-template-columns:1fr}
}
/* FAQ */
.do-faq{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.do-faq-item{
  background:#fff;
  border:1px solid var(--do-line);
  border-radius:14px;
  padding:16px 18px;
  box-shadow:0 6px 18px rgba(36,19,56,.05);
}

.do-faq-item summary{
  font-weight:700;
  color:var(--do-ink);
  cursor:pointer;
  list-style:none;
}

.do-faq-item summary::-webkit-details-marker{
  display:none;
}

.do-faq-item p{
  margin-top:10px;
  color:var(--do-text);
  line-height:1.7;
}
/* ===============================
   DEERNIS – PRISER SIDE SPACING
================================ */

/* Reduser avstand mellom seksjoner */
.page-id-XXX .elementor-section{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

/* Første seksjon etter hero litt mindre */
.page-id-XXX .elementor-section:first-of-type{
  padding-top: 30px !important;
}

/* Reduser spacing mellom widgets */
.page-id-XXX .elementor-widget{
  margin-bottom: 10px !important;
}

/* Reduser container spacing */
.page-id-XXX .elementor-container{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Kort-seksjoner (pris-bokser) litt tettere */
.page-id-XXX .elementor-column-gap-default > .elementor-column > .elementor-element-populated{
  padding: 12px !important;
}
/* CTA – samme stil som andre sider */

.elementor-section .cta-section,
.pricing-cta,
.cta-box{
  background: linear-gradient(135deg,#432874,#2c1a4d) !important;
  color:#ffffff !important;
}

/* tekst inne i CTA */
.cta-section h2,
.pricing-cta h2,
.cta-box h2{
  color:#ffffff !important;
}

.cta-section p,
.pricing-cta p,
.cta-box p{
  color:rgba(255,255,255,0.85) !important;
}

/* sekundær knapp */
.cta-section .elementor-button:last-child{
  background:transparent !important;
  border:2px solid rgba(255,255,255,.35) !important;
  color:#ffffff !important;
}

/* ===============================
   DEERNIS – KUNDEUTTALELSER
   Prefix: do-kt-
================================ */

:root{
  --do-ink:#241338;
  --do-text:#3c2f4a;
  --do-muted:#6b5b7b;
  --do-soft:#f6f4fa;
  --do-card:#ffffff;
  --do-line:rgba(36,19,56,.12);
  --do-accent:#36d1c4;
  --do-purple:#432874;
  --do-shadow:0 16px 40px rgba(36,19,56,.10);
}

.do-kt-wrap{max-width:1100px;margin:0 auto;padding:0 20px;}
.do-kt-h2{font-size:30px;letter-spacing:-.2px;margin:0 0 10px;color:var(--do-ink)}
.do-kt-sub{font-size:16.5px;line-height:1.7;margin:0;color:var(--do-muted)}

.do-kt-card{
  background:var(--do-card);
  border:1px solid var(--do-line);
  border-radius:18px;
  box-shadow:0 10px 24px rgba(36,19,56,.06);
}

.do-kt-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px;
}

.do-kt-quote{
  position:relative;
  padding:22px 22px 18px;
}

.do-kt-quote:before{
  content:"“";
  position:absolute;
  left:18px;
  top:10px;
  font-size:54px;
  line-height:1;
  color:rgba(54,209,196,.35);
  font-weight:900;
}

.do-kt-title{
  margin:0 0 8px;
  color:var(--do-ink);
  font-weight:900;
  font-size:16px;
  padding-left:26px;
}

.do-kt-text{
  margin:0;
  color:var(--do-text);
  line-height:1.7;
  font-size:15.5px;
  padding-left:26px;
}

.do-kt-who{
  margin-top:12px;
  padding-left:26px;
  color:var(--do-muted);
  font-size:13px;
  font-weight:800;
}

.do-kt-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 18px;border-radius:999px;font-weight:800;text-decoration:none;
  border:1px solid transparent;transition:transform .12s ease,opacity .12s ease, box-shadow .12s ease;
  cursor:pointer;white-space:nowrap
}
.do-kt-btn:hover{transform:translateY(-1px);opacity:.96}
.do-kt-btn-primary{background:var(--do-accent);color:#071314;box-shadow:0 14px 30px rgba(54,209,196,.25)}
.do-kt-btn-ghost{background:#fff;color:var(--do-purple);border-color:rgba(67,40,116,.22)}

.do-kt-cta{
  background:linear-gradient(135deg,#432874,#2c1a4d);
  border-radius:22px;
  padding:28px;
  box-shadow:var(--do-shadow);
  border:none;
}

.do-kt-cta h3{margin:0 0 10px;color:#fff;font-size:22px;letter-spacing:-.2px}
.do-kt-cta p{margin:0;color:rgba(255,255,255,.86);line-height:1.7}

.do-kt-meta{
  margin-top:12px;
  color:rgba(255,255,255,.82);
  font-size:13px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

@media (max-width: 900px){
  .do-kt-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .do-kt-h2{font-size:24px}
}

/* ===============================
   DEERNIS – PREMIUM TESTIMONIALS
   Prefix: do-tm-
================================ */

:root{
  --do-ink:#241338;
  --do-text:#3c2f4a;
  --do-muted:#6b5b7b;
  --do-soft:#f6f4fa;
  --do-card:#ffffff;
  --do-line:rgba(36,19,56,.12);
  --do-accent:#36d1c4;
  --do-purple:#432874;
  --do-shadow:0 18px 45px rgba(36,19,56,.12);
}

.do-tm-wrap{max-width:1100px;margin:0 auto;padding:0 20px;}

.do-tm-h2{
  font-size:32px; letter-spacing:-.25px;
  color:var(--do-ink); margin:0 0 10px;
}
.do-tm-sub{
  font-size:16.5px; line-height:1.7;
  color:var(--do-muted); margin:0;
  max-width:820px;
}

.do-tm-trust{
  display:flex; gap:10px; flex-wrap:wrap;
  margin-top:16px;
}
.do-tm-chip{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(54,209,196,.14);
  border:1px solid rgba(54,209,196,.22);
  color:var(--do-ink);
  font-size:13px;
  font-weight:800;
}

.do-tm-grid{
  margin-top:22px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px;
}

.do-tm-card{
  background:var(--do-card);
  border:1px solid var(--do-line);
  border-radius:18px;
  box-shadow:0 10px 24px rgba(36,19,56,.06);
  padding:22px 22px 18px;
  position:relative;
  overflow:hidden;
}

.do-tm-card:before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:4px;
  background:linear-gradient(90deg, var(--do-accent), rgba(54,209,196,.05));
}

.do-tm-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.do-tm-title{
  margin:0;
  color:var(--do-ink);
  font-weight:900;
  font-size:16px;
  letter-spacing:-.1px;
}

.do-tm-stars{
  font-size:14px;
  letter-spacing:.06em;
  opacity:.95;
  white-space:nowrap;
}

.do-tm-quote{
  margin:0;
  color:var(--do-text);
  line-height:1.75;
  font-size:15.5px;
}

.do-tm-who{
  margin-top:12px;
  color:var(--do-muted);
  font-size:13px;
  font-weight:900;
}

.do-tm-btnrow{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}

.do-tm-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  font-weight:900;
  text-decoration:none;
  border:1px solid transparent;
  transition:transform .12s ease, opacity .12s ease, box-shadow .12s ease;
  white-space:nowrap;
}
.do-tm-btn:hover{transform:translateY(-1px);opacity:.96}

.do-tm-btn-primary{
  background:var(--do-accent);
  color:#071314;
  box-shadow:0 14px 30px rgba(54,209,196,.25);
}
.do-tm-btn-ghost{
  background:#fff;
  color:var(--do-purple);
  border-color:rgba(67,40,116,.22);
}

/* Midt-CTA (compact) */
.do-tm-midcta{
  margin-top:18px;
  padding:16px 18px;
  border-radius:16px;
  background:rgba(36,19,56,.04);
  border:1px solid rgba(36,19,56,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.do-tm-midcta p{
  margin:0;
  color:var(--do-text);
  line-height:1.7;
  font-size:14.5px;
  max-width:680px;
}

/* Bunn-CTA (premium lilla) */
.do-tm-cta{
  margin-top:26px;
  background:linear-gradient(135deg,#432874,#2c1a4d);
  border-radius:22px;
  padding:26px 26px 22px;
  box-shadow:var(--do-shadow);
  position:relative;
  overflow:hidden;
}
.do-tm-cta:before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 20% 30%, rgba(54,209,196,.22), transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(255,255,255,.10), transparent 55%);
  pointer-events:none;
}
.do-tm-cta h3{
  position:relative;
  margin:0 0 10px;
  color:#fff;
  font-size:22px;
  letter-spacing:-.2px;
}
.do-tm-cta p{
  position:relative;
  margin:0;
  color:rgba(255,255,255,.86);
  line-height:1.7;
}
.do-tm-cta .do-tm-btn-ghost{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.35);
}
.do-tm-meta{
  position:relative;
  margin-top:12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  color:rgba(255,255,255,.82);
  font-size:13px;
}

/* Mobil */
@media (max-width: 900px){
  .do-tm-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .do-tm-h2{font-size:24px}
  .do-tm-cta{padding:22px 18px 18px}
}

/* ===============================
   DEERNIS – OM OSS
   Prefix: do-about-
================================ */

:root{
  --do-ink:#241338;
  --do-text:#3c2f4a;
  --do-muted:#6b5b7b;
  --do-soft:#f6f4fa;
  --do-card:#ffffff;
  --do-line:rgba(36,19,56,.12);
  --do-accent:#36d1c4;
  --do-purple:#432874;
  --do-shadow:0 18px 45px rgba(36,19,56,.10);
}

.do-about-wrap{
  max-width:1100px;
  margin:0 auto;
  padding:0 20px;
}

.do-about-kicker{
  display:inline-block;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--do-purple);
  font-weight:800;
  margin-bottom:10px;
}

.do-about-h2{
  font-size:32px;
  line-height:1.15;
  letter-spacing:-.3px;
  color:var(--do-ink);
  margin:0 0 12px;
}

.do-about-sub{
  font-size:17px;
  line-height:1.75;
  color:var(--do-muted);
  margin:0;
}

.do-about-card{
  background:var(--do-card);
  border:1px solid var(--do-line);
  border-radius:20px;
  box-shadow:0 10px 24px rgba(36,19,56,.06);
}

.do-about-grid-2{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:22px;
}

.do-about-grid-3{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.do-about-grid-4{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}

.do-about-list{
  margin:14px 0 0;
  padding-left:18px;
  color:var(--do-text);
  line-height:1.75;
}

.do-about-list li{
  margin-bottom:8px;
}

.do-about-mini-title{
  font-size:20px;
  color:var(--do-ink);
  margin:0 0 8px;
  font-weight:900;
}

.do-about-service{
  padding:22px;
  position:relative;
  overflow:hidden;
}

.do-about-service:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,#36d1c4,#432874);
}

.do-about-chiprow{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}

.do-about-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--do-line);
  color:var(--do-text);
  font-size:13px;
  font-weight:700;
}

.do-about-btnrow{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}

.do-about-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  border:1px solid transparent;
  transition:transform .12s ease, opacity .12s ease, box-shadow .12s ease;
  white-space:nowrap;
}

.do-about-btn:hover{
  transform:translateY(-1px);
  opacity:.96;
}

.do-about-btn-primary{
  background:var(--do-accent);
  color:#071314;
  box-shadow:0 14px 30px rgba(54,209,196,.25);
}

.do-about-btn-ghost{
  background:#fff;
  color:var(--do-purple);
  border-color:rgba(67,40,116,.22);
}

.do-about-note{
  background:rgba(54,209,196,.10);
  border-left:4px solid rgba(54,209,196,.9);
  padding:16px 16px;
  border-radius:14px;
  color:var(--do-ink);
  line-height:1.7;
}

.do-about-cta{
  background:linear-gradient(135deg,#432874,#2c1a4d);
  border-radius:22px;
  padding:32px 28px;
  box-shadow:var(--do-shadow);
  position:relative;
  overflow:hidden;
}

.do-about-cta:before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 20% 30%, rgba(54,209,196,.22), transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(255,255,255,.10), transparent 55%);
  pointer-events:none;
}

.do-about-cta h3{
  position:relative;
  margin:0 0 10px;
  color:#fff;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.2px;
}

.do-about-cta p{
  position:relative;
  margin:0;
  color:rgba(255,255,255,.88);
  line-height:1.75;
  font-size:16px;
}

.do-about-cta .do-about-btn-ghost{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.35);
}

.do-about-meta{
  position:relative;
  margin-top:12px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  color:rgba(255,255,255,.82);
  font-size:13px;
}

@media (max-width: 900px){
  .do-about-grid-2,
  .do-about-grid-3,
  .do-about-grid-4{
    grid-template-columns:1fr;
  }
}

@media (max-width: 767px){
  .do-about-h2{
    font-size:25px;
  }
}

/* Premium testimonials */

.do-tm-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:26px;
  margin-top:30px;
}

.do-tm-card{
  background:#ffffff;
  border-radius:18px;
  padding:28px 30px;
  border:1px solid rgba(36,19,56,.12);
  box-shadow:0 18px 40px rgba(36,19,56,.08);
  position:relative;
  transition:all .2s ease;
}

/* gradient toppstripe */

.do-tm-card:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,#36d1c4,#432874);
  border-radius:18px 18px 0 0;
}

/* hover effekt */

.do-tm-card:hover{
  transform:translateY(-6px);
  box-shadow:0 26px 50px rgba(36,19,56,.15);
}

/* stjerner */

.do-tm-stars{
  color:#f5b400;
  font-size:15px;
  letter-spacing:2px;
}

/* sitat */

.do-tm-quote{
  font-size:16px;
  line-height:1.8;
  color:#3c2f4a;
  margin-top:10px;
}

/* navn */

.do-tm-who{
  margin-top:14px;
  font-size:13px;
  font-weight:700;
  color:#6b5b7b;
}

/* mobil */

@media (max-width:900px){
  .do-tm-grid{
    grid-template-columns:1fr;
  }
}

/* ===============================
   DEERNIS – TESTIMONIALS 3+1 LAYOUT
================================ */

/* Desktop: 2 kolonner, men første kort blir større */
.do-tm-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:26px;
  margin-top:30px;
}

.do-tm-card{
  background:#ffffff;
  border-radius:18px;
  padding:28px 30px;
  border:1px solid rgba(36,19,56,.12);
  box-shadow:0 18px 40px rgba(36,19,56,.08);
  position:relative;
  transition:all .2s ease;
}

.do-tm-card:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg,#36d1c4,#432874);
  border-radius:18px 18px 0 0;
}

.do-tm-card:hover{
  transform:translateY(-6px);
  box-shadow:0 26px 50px rgba(36,19,56,.15);
}

/* Gjør første kort større */
.do-tm-card:first-child{
  grid-column:span 2;
  padding:34px 36px;
}

/* Typografi */
.do-tm-title{
  margin:0;
  color:#241338;
  font-weight:900;
  font-size:18px;
}

.do-tm-stars{
  color:#f5b400;
  font-size:15px;
  letter-spacing:2px;
}

.do-tm-quote{
  font-size:16px;
  line-height:1.8;
  color:#3c2f4a;
  margin-top:10px;
}

.do-tm-who{
  margin-top:14px;
  font-size:13px;
  font-weight:700;
  color:#6b5b7b;
}

/* Mobil */
@media (max-width:900px){
  .do-tm-grid{
    grid-template-columns:1fr;
  }

  .do-tm-card:first-child{
    grid-column:span 1;
    padding:28px 30px;
  }
}

.do-about-hero-text{
  color:#ffffff;
  font-size:20px;
  line-height:1.7;
  text-align:center;
  max-width:700px;
  margin:18px auto 0 auto;
}

@media (max-width: 767px){
  .do-about-hero-text{
    font-size:17px;
    line-height:1.6;
    padding:0 20px;
  }
}

/* CTA knapp forbedring */

.do-about-btn-primary{
  background:#36d1c4;
  color:#071314;
  padding:14px 22px;
  font-size:16px;
  font-weight:800;
  border-radius:999px;
  box-shadow:0 16px 35px rgba(54,209,196,.35);
  transition:all .2s ease;
}

/* hover effekt */

.do-about-btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 45px rgba(54,209,196,.45);
}

/* sekundær knapp */

.do-about-btn-ghost{
  background:#ffffff;
  color:#432874;
  border:1px solid rgba(67,40,116,.25);
  padding:14px 22px;
  border-radius:999px;
}

/* TRUST SECTION */

.do-trust-wrap{
  max-width:1100px;
  margin:auto;
  padding:0 20px;
}

.do-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.do-trust-item{
  background:#ffffff;
  padding:24px;
  border-radius:16px;
  text-align:center;
  border:1px solid rgba(36,19,56,.08);
  box-shadow:0 10px 25px rgba(36,19,56,.06);
}

.do-trust-icon{
  font-size:22px;
  color:#36d1c4;
  margin-bottom:10px;
}

.do-trust-item h4{
  margin:6px 0;
  font-size:17px;
  color:#241338;
}

.do-trust-item p{
  font-size:14px;
  color:#6b5b7b;
  line-height:1.6;
}

/* mobil */

@media (max-width:900px){
  .do-trust-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:600px){
  .do-trust-grid{
    grid-template-columns:1fr;
  }
}

/* ===============================
   OM OSS – OPPUSSING
================================ */

.do-about-polish-section,
.do-about-location-section,
.do-about-final-cta-section{
  padding: 64px 0;
}

.do-about-polish-card{
  background: #ffffff;
  border: 1px solid rgba(36,19,56,.10);
  border-radius: 22px;
  box-shadow: 0 18px 45px rgba(36,19,56,.08);
  padding: 34px 32px;
}

.do-about-polish-points{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  margin-top: 22px;
}

.do-about-polish-point{
  background: #f6f4fa;
  border: 1px solid rgba(36,19,56,.08);
  border-radius: 14px;
  padding: 14px 16px;
  color: #241338;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 600;
}

.do-about-location-box{
  text-align: center;
  max-width: 860px;
  margin: 0 auto;
}

.do-about-location-chips{
  justify-content: center;
  margin-top: 22px;
}

.do-about-final-cta{
  background: linear-gradient(135deg, #432874, #2c1a4d);
  border-radius: 24px;
  padding: 34px 30px 28px;
  box-shadow: 0 20px 50px rgba(36,19,56,.18);
  position: relative;
  overflow: hidden;
}

.do-about-final-cta:before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 20% 30%, rgba(54,209,196,.22), transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(255,255,255,.10), transparent 55%);
  pointer-events:none;
}

.do-about-final-cta h2{
  position: relative;
  margin: 0 0 12px;
  color: #ffffff;
  font-size: 30px;
  line-height: 1.15;
  letter-spacing: -.2px;
}

.do-about-final-cta p{
  position: relative;
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 16px;
  line-height: 1.75;
  max-width: 760px;
}

.do-about-kicker-light{
  color: rgba(255,255,255,.82) !important;
}

.do-about-btn-ghost-light{
  background: transparent !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.35) !important;
}

@media (max-width: 767px){
  .do-about-polish-points{
    grid-template-columns: 1fr;
  }

  .do-about-polish-card,
  .do-about-final-cta{
    padding: 24px 18px;
  }

  .do-about-final-cta h2{
    font-size: 24px;
  }
}

/* =========================
   DEERNIS OMSORG - KONTAKT OSS
========================= */

.do-contact-page{
  padding: 80px 20px;
  background: #f8f6fb;
}

.do-contact-wrap{
  max-width: 1180px;
  margin: 0 auto;
}

.do-contact-head{
  text-align: center;
  max-width: 760px;
  margin: 0 auto 48px;
}

.do-contact-kicker{
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  color: #5b3a8e;
  background: rgba(91, 58, 142, 0.08);
  padding: 8px 14px;
  border-radius: 999px;
  margin-bottom: 18px;
}

.do-contact-head h1{
  font-size: 42px;
  line-height: 1.15;
  color: #241533;
  margin: 0 0 16px;
  font-weight: 700;
}

.do-contact-head p{
  font-size: 18px;
  line-height: 1.7;
  color: #5d5667;
  margin: 0;
}

.do-contact-grid{
  display: grid;
  grid-template-columns: 1.35fr 0.85fr;
  gap: 30px;
  align-items: start;
}

.do-contact-formbox,
.do-contact-infobox{
  width: 100%;
}

.do-contact-formbox{
  background: #ffffff;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 18px 45px rgba(39, 22, 70, 0.08);
}

.do-contact-formbox h2{
  font-size: 28px;
  color: #241533;
  margin: 0 0 20px;
}

.do-contact-card{
  background: #ffffff;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 18px 45px rgba(39, 22, 70, 0.08);
  margin-bottom: 24px;
}

.do-contact-card h3{
  font-size: 22px;
  color: #241533;
  margin: 0 0 20px;
}

.do-contact-item{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}

.do-contact-item:last-child{
  margin-bottom: 0;
}

.do-contact-icon{
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  background: #5b3a8e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.do-contact-item strong{
  display: block;
  font-size: 16px;
  color: #241533;
  margin-bottom: 4px;
}

.do-contact-item p,
.do-contact-note p{
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: #5d5667;
}

.do-contact-altcta{
  margin-top: 28px;
  padding: 24px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f3eefb 0%, #ede6f8 100%);
}

.do-contact-altcta h3{
  font-size: 20px;
  color: #241533;
  margin: 0 0 10px;
}

.do-contact-altcta p{
  font-size: 16px;
  color: #5d5667;
  line-height: 1.7;
  margin: 0 0 18px;
}

.do-contact-btn{
  display: inline-block;
  padding: 14px 22px;
  background: #5b3a8e;
  color: #ffffff !important;
  text-decoration: none;
  border-radius: 999px;
  font-weight: 600;
  transition: all 0.25s ease;
}

.do-contact-btn:hover{
  background: #45296f;
  transform: translateY(-1px);
}

/* WPForms styling */
.do-contact-formbox .wpforms-container{
  margin: 0 !important;
}

.do-contact-formbox .wpforms-field-label{
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #241533 !important;
}

.do-contact-formbox input,
.do-contact-formbox textarea,
.do-contact-formbox select{
  border: 1px solid #d8d1e3 !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
  color: #241533 !important;
  background: #fcfbfe !important;
}

.do-contact-formbox input:focus,
.do-contact-formbox textarea:focus,
.do-contact-formbox select:focus{
  border-color: #5b3a8e !important;
  box-shadow: 0 0 0 3px rgba(91, 58, 142, 0.10) !important;
}

.do-contact-formbox textarea{
  min-height: 140px !important;
}

.do-contact-formbox .wpforms-submit{
  background: #5b3a8e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  transition: all 0.25s ease !important;
}

.do-contact-formbox .wpforms-submit:hover{
  background: #45296f !important;
}

/* Tablet */
@media (max-width: 991px){
  .do-contact-head h1{
    font-size: 34px;
  }

  .do-contact-grid{
    grid-template-columns: 1fr;
  }
}

/* Mobile */
@media (max-width: 767px){
  .do-contact-page{
    padding: 60px 16px;
  }

  .do-contact-head{
    margin-bottom: 32px;
  }

  .do-contact-head h1{
    font-size: 29px;
  }

  .do-contact-head p{
    font-size: 16px;
  }

  .do-contact-formbox,
  .do-contact-card{
    padding: 22px;
    border-radius: 18px;
  }

  .do-contact-formbox h2{
    font-size: 24px;
  }

  .do-contact-card h3{
    font-size: 20px;
  }
}

/* CONTACT PAGE IMPROVEMENTS */

.contact-section h2{
font-size:34px;
font-weight:600;
margin-bottom:10px;
}

.contact-section p{
font-size:16px;
color:#666;
margin-bottom:40px;
}

.contact-form input,
.contact-form textarea{
width:100%;
padding:14px;
border:1px solid #ddd;
border-radius:6px;
font-size:15px;
}

.contact-form textarea{
min-height:120px;
}

.contact-form button{
background:#4b2e83;
color:white;
border:none;
padding:16px 30px;
font-size:15px;
font-weight:600;
border-radius:6px;
cursor:pointer;
transition:0.3s;
}

.contact-form button:hover{
background:#362063;
}

/* =========================
   DEERNIS OMSORG - CONTACT PAGE
========================= */

.do-contact-page{
  padding: 80px 20px;
  background: #f7f4fb;
}

.do-contact-wrap{
  max-width: 1180px;
  margin: 0 auto;
}

.do-contact-head{
  text-align: center;
  max-width: 760px;
  margin: 0 auto 42px;
}

.do-contact-kicker{
  display: inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(91,58,142,0.08);
  color: #5b3a8e;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  margin-bottom: 16px;
}

.do-contact-head h1{
  margin: 0 0 14px;
  font-size: 44px;
  line-height: 1.12;
  color: #241533;
}

.do-contact-head p{
  margin: 0;
  font-size: 18px;
  line-height: 1.7;
  color: #655d71;
}

.do-contact-grid{
  display: grid;
  grid-template-columns: 1.45fr 0.85fr;
  gap: 28px;
  align-items: start;
}

.do-contact-formbox{
  background: #ffffff;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 18px 45px rgba(40,22,70,0.08);
}

.do-contact-formbox h2{
  margin: 0 0 20px;
  font-size: 30px;
  line-height: 1.2;
  color: #241533;
}

.do-contact-infobox{
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.do-contact-card{
  background: #ffffff;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 18px 45px rgba(40,22,70,0.08);
}

.do-contact-card h3{
  margin: 0 0 20px;
  font-size: 24px;
  line-height: 1.2;
  color: #241533;
}

.do-contact-item{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}

.do-contact-item:last-child{
  margin-bottom: 0;
}

.do-contact-icon{
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  background: #5b3a8e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.do-contact-item strong{
  display: block;
  margin-bottom: 4px;
  font-size: 16px;
  color: #241533;
}

.do-contact-item p,
.do-contact-note p{
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: #655d71;
}

.do-contact-altcta{
  margin-top: 26px;
  padding: 26px;
  border-radius: 18px;
  background: linear-gradient(135deg, #efe8fb 0%, #e9e0f8 100%);
}

.do-contact-altcta h3{
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.25;
  color: #241533;
}

.do-contact-altcta p{
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.7;
  color: #655d71;
}

.do-contact-btn{
  display: inline-block;
  padding: 14px 22px;
  border-radius: 999px;
  background: #5b3a8e;
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
  transition: all .25s ease;
}

.do-contact-btn:hover{
  background: #45296f;
  transform: translateY(-1px);
}

/* WPForms styling inside contact card */
.do-contact-formbox .wpforms-container{
  margin: 0 !important;
}

.do-contact-formbox .wpforms-field{
  padding-bottom: 18px !important;
}

.do-contact-formbox .wpforms-field-label{
  color: #241533 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
}

.do-contact-formbox .wpforms-field-sublabel,
.do-contact-formbox .wpforms-description{
  color: #7a7385 !important;
  font-size: 13px !important;
}

.do-contact-formbox input,
.do-contact-formbox textarea,
.do-contact-formbox select{
  width: 100% !important;
  background: #fcfbfe !important;
  border: 1px solid #d8d1e3 !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
  color: #241533 !important;
}

.do-contact-formbox input:focus,
.do-contact-formbox textarea:focus,
.do-contact-formbox select:focus{
  border-color: #5b3a8e !important;
  box-shadow: 0 0 0 3px rgba(91,58,142,0.10) !important;
}

.do-contact-formbox textarea{
  min-height: 140px !important;
}

.do-contact-formbox .wpforms-submit-container{
  margin-top: 8px !important;
}

.do-contact-formbox .wpforms-submit{
  background: #5b3a8e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  transition: all .25s ease !important;
}

.do-contact-formbox .wpforms-submit:hover{
  background: #45296f !important;
}

.do-contact-formbox .wpforms-field-checkbox ul{
  margin: 0 !important;
  padding: 0 !important;
}

.do-contact-formbox .wpforms-field-checkbox li{
  margin: 0 !important;
}

.do-contact-formbox .wpforms-confirmation-container-full{
  background: #f1ecfa !important;
  border: 1px solid #d8d1e3 !important;
  color: #241533 !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
}

/* Tablet */
@media (max-width: 991px){
  .do-contact-grid{
    grid-template-columns: 1fr;
  }

  .do-contact-head h1{
    font-size: 36px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .do-contact-page{
    padding: 60px 16px;
  }

  .do-contact-head{
    margin-bottom: 30px;
  }

  .do-contact-head h1{
    font-size: 30px;
  }

  .do-contact-head p{
    font-size: 16px;
  }

  .do-contact-formbox,
  .do-contact-card{
    padding: 22px;
    border-radius: 18px;
  }

  .do-contact-formbox h2{
    font-size: 24px;
  }

  .do-contact-card h3,
  .do-contact-altcta h3{
    font-size: 20px;
  }
}

/* =========================
   DEERNIS OMSORG – CONTACT PAGE POLISH
========================= */

/* Page section */
.do-contact-page,
.elementor-section .do-contact-page{
  background: #f7f4fb;
  padding: 70px 20px 80px;
}

/* Main wrapper */
.do-contact-wrap{
  max-width: 1180px;
  margin: 0 auto;
}

/* Top intro */
.do-contact-head{
  max-width: 760px;
  margin: 0 auto 38px;
  text-align: center;
}

.do-contact-kicker{
  display: inline-block;
  padding: 7px 14px;
  border-radius: 999px;
  background: rgba(91, 58, 142, 0.08);
  color: #5b3a8e;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.6px;
  margin-bottom: 14px;
}

.do-contact-head h1{
  margin: 0 0 14px;
  font-size: 44px;
  line-height: 1.15;
  color: #241533;
}

.do-contact-head p{
  margin: 0;
  font-size: 17px;
  line-height: 1.75;
  color: #655d71;
}

/* Layout cards */
.do-contact-formbox,
.do-contact-card{
  background: #ffffff;
  border-radius: 22px;
  padding: 30px;
  box-shadow: 0 14px 35px rgba(46, 24, 80, 0.08);
}

.do-contact-formbox{
  margin-bottom: 0;
}

.do-contact-card{
  margin-bottom: 22px;
}

.do-contact-formbox h2,
.do-contact-card h3{
  margin: 0 0 18px;
  color: #241533;
  line-height: 1.25;
}

.do-contact-formbox h2{
  font-size: 31px;
}

.do-contact-card h3{
  font-size: 28px;
}

/* CTA box inside left card */
.do-contact-altcta{
  margin-top: 24px;
  padding: 24px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f0e9fb 0%, #e8ddf8 100%);
}

.do-contact-altcta h3{
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.3;
  color: #241533;
}

.do-contact-altcta p{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 1.75;
  color: #655d71;
}

/* Button */
.do-contact-btn{
  display: inline-block;
  padding: 13px 22px;
  border-radius: 999px;
  background: #5b3a8e;
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  transition: all 0.25s ease;
}

.do-contact-btn:hover{
  background: #47246f;
  transform: translateY(-1px);
}

/* Right column text cards */
.do-contact-card p{
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.75;
  color: #655d71;
}

.do-contact-card p:last-child{
  margin-bottom: 0;
}

.do-contact-card strong{
  color: #241533;
}

/* Optional icon rows if used */
.do-contact-item{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 18px;
}

.do-contact-item:last-child{
  margin-bottom: 0;
}

.do-contact-icon{
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: #5b3a8e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
}

/* WPForms styling */
.do-contact-formbox .wpforms-container{
  margin: 0 !important;
}

.do-contact-formbox .wpforms-field{
  padding-bottom: 16px !important;
}

.do-contact-formbox .wpforms-field-label{
  margin-bottom: 8px !important;
  color: #241533 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.do-contact-formbox .wpforms-field-sublabel,
.do-contact-formbox .wpforms-description{
  color: #7b7486 !important;
  font-size: 13px !important;
}

.do-contact-formbox input,
.do-contact-formbox textarea,
.do-contact-formbox select{
  width: 100% !important;
  border: 1px solid #d9d1e6 !important;
  border-radius: 12px !important;
  background: #fcfbfe !important;
  color: #241533 !important;
  padding: 13px 15px !important;
  font-size: 15px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.do-contact-formbox input:focus,
.do-contact-formbox textarea:focus,
.do-contact-formbox select:focus{
  border-color: #5b3a8e !important;
  box-shadow: 0 0 0 3px rgba(91, 58, 142, 0.10) !important;
}

.do-contact-formbox textarea{
  min-height: 140px !important;
}

.do-contact-formbox .wpforms-submit-container{
  margin-top: 6px !important;
}

.do-contact-formbox .wpforms-submit{
  background: #5b3a8e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 14px 24px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  transition: all 0.25s ease !important;
}

.do-contact-formbox .wpforms-submit:hover{
  background: #47246f !important;
  transform: translateY(-1px);
}

.do-contact-formbox .wpforms-field-checkbox ul{
  margin: 0 !important;
  padding: 0 !important;
}

.do-contact-formbox .wpforms-field-checkbox li{
  margin: 0 !important;
}

.do-contact-formbox .wpforms-confirmation-container-full{
  background: #f2ecfb !important;
  border: 1px solid #ddd2ef !important;
  color: #241533 !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
}

/* Elementor column spacing */
.elementor-column-gap-default > .elementor-column > .elementor-element-populated{
  padding: 12px;
}

/* Tablet */
@media (max-width: 1024px){
  .do-contact-head h1{
    font-size: 36px;
  }

  .do-contact-formbox,
  .do-contact-card{
    padding: 24px;
  }

  .do-contact-formbox h2{
    font-size: 27px;
  }

  .do-contact-card h3,
  .do-contact-altcta h3{
    font-size: 22px;
  }
}

/* Mobile */
@media (max-width: 767px){
  .do-contact-page,
  .elementor-section .do-contact-page{
    padding: 50px 16px 60px;
  }

  .do-contact-head{
    margin-bottom: 28px;
  }

  .do-contact-head h1{
    font-size: 30px;
  }

  .do-contact-head p{
    font-size: 15px;
  }

  .do-contact-formbox,
  .do-contact-card{
    padding: 20px;
    border-radius: 18px;
  }

  .do-contact-formbox h2{
    font-size: 24px;
  }

  .do-contact-card h3,
  .do-contact-altcta h3{
    font-size: 20px;
  }

  .do-contact-altcta{
    padding: 18px;
  }

  .do-contact-btn,
  .do-contact-formbox .wpforms-submit{
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}
.wpforms-container input,
.wpforms-container textarea,
.wpforms-container select{
width:100% !important;
}

/* =========================
   MOBILE STICKY CTA
========================= */

.do-mobile-cta{
position:fixed;
bottom:18px;
left:50%;
transform:translateX(-50%);
z-index:999;
display:none;
}

.do-mobile-cta a{
background:#5b3a8e;
color:#fff;
padding:14px 22px;
border-radius:999px;
font-weight:700;
font-size:14px;
text-decoration:none;
box-shadow:0 8px 25px rgba(0,0,0,0.15);
display:inline-block;
}

.do-mobile-cta a:hover{
background:#47246f;
}

/* Only show on mobile */
@media (max-width:768px){

.do-mobile-cta{
display:block;
}

}/* End custom CSS */