/*
Theme Name:RA Huber
Theme URI:https://www.huber-recht.de
Author:Weh Communications GmbH, Benjamin Klar
Author URI:http://www.communications.de
Description:Benutzerdefiniertes Theme fuer Rechtsanwalt Huber.
Version:1.0
Tags:Berlinka Group
Text Domain:huber-recht
*/

@import url("fonts.css?t=20211222");

* { margin:0px;padding:0px;-webkit-box-sizing:border-box;box-sizing:border-box; }

:root {
  --color-huber:#212121;
  --color-white:#ffffff;
  --color-huber-lightblue:rgba(0,0,0,.9);
  --color-huber-dark:#003334;
  --color-huber-black:rgba(25,25,25,1);
  --color-huber-gold:#fedfb1;

  --color-huber-lang:rgba(121,121,121,1);
  --color-huber-lang-hover:rgba(150,150,150,1);

  --color-huber-red:#cc0000;
  --color-huber-navy:#000080;
  --color-huber-royalblue:#4169E1;
  --font-huber-logo:'Inter';
  --font-huber-title:'Inter';
  --font-huber-main:'Inter';

  --transition-default:all 1s ease-in-out;
  --transition-faster:all 0.25s ease-in-out;
  --transition-slow:all 1.75s ease-in-out;
}

html, body { position:relative;height:100%;background:#ffffff;font-family:var(--font-huber-main);font-weight:300;font-size:21px;line-height:1.5em;color:var(--color-huber); }
html { scroll-behavior:smooth; }

html.section-scroll { -ms-scroll-snap-type:proximity;scroll-snap-type:proximity;-ms-scroll-snap-points-y:repeat(100vh);scroll-snap-points-y:repeat(100vh);-ms-scroll-snap-type:y proximity;scroll-snap-type:y proximity;scroll-padding:140px 0 0 0; }
              
a img { border:none; }
.clearboth { float:none !important;clear:both !important;line-height:1px !important;height:1px !important;font-size:1px !important;color:transparent !important; }

.wrapper { width:100%; }

body main { min-height:calc(100vh - 407px); }

header { width:100%;height:auto;min-height:135px;background:var(--color-white);border:0px solid #ffffff;z-index:40;position:relative; }

header.sticky { border-bottom:4px solid var(--color-huber-royalblue); }
header.sticky.hasteaser { border-bottom:none; }

body.home header.hasteaser { height:calc(100vh - 4px); }
header.hasteaser .header-image { display:block;height:100%;width:100%; }
header.hasteaser .header-image img { display:block;height:100%;width:100%;object-fit:cover;object-position:center;aspect-ratio:72 / 25; }
body.page-id-2 header.hasteaser .header-image img { object-position:0 15%; }
body.home header.hasteaser .header-image img { aspect-ratio:16 / 10; }

header .teaser-logo { text-align:center;margin:0 auto;padding-top:35px;z-index:90;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default);width:fit-content; }
header.hasteaser .teaser-logo { margin-bottom:35px; }
body.home .teaser-logo { position:absolute;top:45%;left:calc(50% - 139px);padding:0;margin:0; }

body.page header .teaser-logo a { display:block;width:fit-content;height:auto;color:var(--color-huber);text-decoration:none;font-family:var(--font-huber-logo);font-weight:300; }
body.page header .teaser-logo a span { display:block; }
body.page header .teaser-logo a span:first-of-type { font-size:40px;line-height:1em;letter-spacing:5px; }
body.page header .teaser-logo a span:last-of-type { font-size:20px;margin-left:0px;text-transform:uppercase;letter-spacing:0.1px; }

body.home header .teaser-logo a { display:block;width:fit-content;height:auto;color:var(--color-huber);text-decoration:none;font-family:var(--font-huber-logo);font-weight:300; }
body.home header .teaser-logo a { color:var(--color-white); }
body.home header .teaser-logo a span:first-of-type { font-size:72px;line-height:1em;letter-spacing:10px; }
body.home header .teaser-logo a span:last-of-type { font-size:37px;line-height:1.5em;text-transform:uppercase;letter-spacing:0.1px; }

header .mobile { position:fixed;right:30px;top:30px;z-index:999;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default);background-color:rgba(255, 255, 255, .85);padding:20px; }
header .mobile.opennav { background-color:rgba(255, 255, 255, 0) }
header .mobile.visible { opacity:1; }
header .mobile a { display:block;cursor:pointer;width:40px;height:32px;position:relative;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
header .mobile a span { display:block;position:absolute;height:4px;width:100%;background:var(--color-huber);opacity:1;left:0;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0deg);-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
body.home header .mobile.opennav a span:nth-child(1), body.home header .mobile.opennav a span:nth-child(3) { background:var(--color-huber); }

/* Animation Burger-Menu */
header .mobile a span:nth-child(1) { top:0px;-webkit-transform-origin:left center;-moz-transform-origin:left center;-o-transform-origin:left center;transform-origin:left center; }
header .mobile a span:nth-child(2) { top:14px;-webkit-transform-origin:left center;-moz-transform-origin:left center;-o-transform-origin:left center;transform-origin:left center;background:var(--color-huber-royalblue); }
header .mobile a span:nth-child(3) { top:28px;-webkit-transform-origin:left center;-moz-transform-origin:left center;-o-transform-origin:left center;transform-origin:left center; }
header .mobile.opennav a span { background:var(--color-huber); }
header .mobile.opennav a span:nth-child(1) { -webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);top:0px;left:7px;}
header .mobile.opennav a span:nth-child(2) { width:0%; }
header .mobile.opennav a span:nth-child(3) { -webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);top:28px;left:7px; }

/* Language Selector */
header .language { position:fixed;right:50px;bottom:50px;z-index:99;text-align:right;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default); }
header .language .lang-button { display:inline-block;font-size:40px;color:var(--color-huber-lang);cursor:pointer;text-shadow:0 0 20px rgba(114,112,104,0.7); }
header .language .lang-button:hover {  color:var(--color-huber-lang-hover); }
header .language .lang-navi { display:none;margin:0 30px 5px 0;padding:15px;background:rgba(255,255,255,0.9);border-radius:10px;border-bottom-right-radius:0px;text-align:center;font-size:18px;box-shadow:0 0 20px rgba(114,112,104,0.7); }
header .language .lang-navi a { display:inline-block;text-decoration:none;color:rgba(0,0,0,1); }
header .language .lang-navi a:after { content:"";display:block;width:20px;height:2px;background:transparent;margin:0px auto 3px auto; }
header .language .lang-navi a:hover:after { content:"";display:block;width:20px;height:2px;background:rgba(0,0,0,1);margin:0px auto 3px auto; }
header .language .lang-navi ul { list-style-type:none; }
header .language .lang-navi ul.menu > li > a:after { background:rgba(0,0,0,1); }

.container-navigation { display:none;position:fixed;right:0px;top:0px;width:100%;height:100vh;background:rgba(255,255,255,.85);padding:35px;z-index:99; }
.container-navigation > .teaser-logo { padding-top:0; }
.container-navigation .wrapper { display:table;height:calc(100% - 111px);width:100%; }
.container-navigation .wrapper a { color:var(--color-huber);text-decoration:none;font-family:var(--font-huber-main), sans-serif;font-weight:300;font-size:30px; }
.container-navigation .wrapper a:hover { font-weight:400; }
.container-navigation .wrapper .menu-header-menu-container { display:table-cell;vertical-align:middle;width:300px; }
.container-navigation .mobile-close { position:fixed;top:44px;right:73px; }
.container-navigation .mobile-close a { font-size:50px;color:rgba(0,0,0,1);cursor:pointer; }
.container-navigation .mobile-close a:hover { color:rgba(0,0,0,0.65); }
.container-navigation ul.menu { list-style-type:none;margin:0 auto;padding:0;text-align:center; }
.container-navigation ul.menu > li { padding:5px 0;position:relative; }
.container-navigation ul.menu > li:not(:last-child):after { content:" ";display:block;height:3px;width:25px;background:var(--color-huber-royalblue);margin:0 auto; }
.container-navigation ul.menu > li > a { display:block;padding:10px 0;width:fit-content;margin:0 auto; }
.container-navigation ul.menu > li.current-menu-item a { font-weight:400; }
.container-navigation ul.menu > li > ul { display:none;list-style-type:none; }
.container-navigation ul.menu > li > ul > li > a { display:block;padding:5px;font-size:18px; }

.container-content hr { display:block;height:3px;width:50px;color:rgba(0,0,0,0.0);background:var(--color-huber-royalblue);margin:27px auto 0; }
.container-content .wrapper { padding-top:75px;background:#ffffff; }
.container-content .wrapper.nopadding { padding:0; }
.container-content .wrapper.nobackground { background:unset; }

.container-content > .wrapper > div { width:80%;margin:0 auto 50px; }

.container-content h1 { font-family:var(--font-huber-title), sans-serif;text-align:center;font-weight:400;margin:0 auto 30px;font-size:40px;line-height:1.1em;color:var(--color-huber);letter-spacing:0.07em; }
.container-content h1:after { content:" ";display:block;height:3px;width:50px;background:var(--color-huber-royalblue);margin:27px auto 0; }
.container-content h2 { font-family:var(--font-huber-title), sans-serif;text-align:center;font-weight:300;margin:0 auto 30px;font-size:36px;line-height:1.1em;letter-spacing:0.07em; }
.container-content h2.visible:after { width:50px; }
.container-content h3 { font-family:var(--font-huber-title), sans-serif;text-align:center;font-weight:600;margin:0 auto 20px;font-size:30px;line-height:1.1em;letter-spacing:0.07em; }
.container-content h4 { font-family:var(--font-huber-title), sans-serif;text-align:center;font-weight:400;margin:0 auto 20px;font-size:26px;line-height:1.1em;letter-spacing:0.07em; }
.container-content h5 { font-family:var(--font-huber-title), sans-serif;text-align:center;font-weight:600;margin:0 autp 20px;font-size:22px;line-height:1.1em;letter-spacing:0.07em; }
.container-content h1 a, .container-content h2 a, .container-content h3 a, .container-content h4 a, .container-content h5 a { color:inherit; }
.container-content a { color:var(--color-huber-royalblue);text-decoration:none; }
.container-content a.button { display:inline-block;padding:10px 15px;color:#ffffff;cursor:pointer;background:var(--color-huber-lightblue);border-radius:5px;font-family:var(--font-huber-main), sans-serif;text-align:center;font-weight:300;-webkit-transition:var(--transition-faster);-moz-transition:var(--transition-faster);-ms-transition:var(--transition-faster);-o-transition:var(--transition-faster);transition:var(--transition-faster); }
.container-content a.button:hover { background:var(--color-huber); }
.container-content a.wp-element-button { color:var(--color-white); }
.container-content p { font-size:24px;line-height:1.6em;width:60%;margin:0 auto 50px auto;text-align:justify;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default); }
.container-content p.text-kleiner { font-size:21px; }
.container-content p.absatz-normal { width:90%; }
.container-content .wp-block-columns p { width:90%; }
.container-content ul { margin:0 auto 25px auto;text-align:left;width:fit-content;min-width:505px; }
.container-content ul > li { margin-left:25px;width:fit-content; }
.container-content.text p { margin:0 0 25px 0;text-align:left;width:100%; }

.container-content > .wrapper > div.wp-block-lazyblock-bildtrenner { display:block;height:100%;width:100%;margin:100px 0;position:relative; }
.container-content > .wrapper > div.wp-block-lazyblock-bildtrenner img { display:block;height:100%;width:100%;object-fit:cover;object-position:center;aspect-ratio:72 / 25; }
.container-content > .wrapper > div.wp-block-lazyblock-bildtrenner > div { position:absolute;top:25%;left:5vw;background:rgba(255,255,255,.7);width:45vw;padding:40px 50px;font-size:1em;border-radius:35px;box-shadow:0 0 50px rgba(0,0,0,.2); }

.wp-block-lazyblock-world-map { width:1250px;margin:0 auto; }

.container-content .wrapper .team p { word-break:break-word;width:100%; }
.container-content .wrapper .team h2 { margin-bottom:25px;text-align:left; }
.container-content .wrapper .team h3 { font-size:18px;text-align:left;width:100%;margin:0 auto 25px; }

.container-content .wp-block-media-text { margin-bottom:50px;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default); }
.container-content .wp-block-media-text.visible { opacity:1; }
.container-content .wp-block-media-text__media { text-align:center; }
.container-content .wp-block-media-text.middle-size img, .container-content .wp-block-media-text.middle-size video { height:60%;width:60%; }
.container-content .wp-block-media-text__media img, .wp-block-media-text__media video { height:80%;width:80%; }

/* Home Parallax */
body.home .container-content { padding:0px; }
body.home .container-content:before { content:"";display:block;position:fixed;left:0px;top:0px;height:100%;width:100%;z-index:-1;background-color:unset;filter:blur(10px);background-size:cover;background-position:center;background-attachment:fixed, scroll;-webkit-transition:var(--transition-default);-moz-transition:var(--transition-default);-ms-transition:var(--transition-default);-o-transition:var(--transition-default);transition:var(--transition-default); }
body.home .container-content.visible:before { filter:blur(0px); }
body.home .container-content .wrapper { margin:0 0 0px 0; }
body.home .container-content .wrapper:last-of-type { margin:0; }

footer { width:100%;z-index:1;border-top:solid 4px var(--color-huber-royalblue);padding-bottom:50px; }
footer a { color:var(--color-huber-royalblue);text-decoration:none;  }

footer .gender-info { padding:0 110px 0;width:80%;margin:0 auto;padding-top:20px; }
footer .gender-info h5 { font-size:12px;line-height:14px;font-weight:500; }
footer .gender-info p { font-size:10px;line-height:18px; }

footer .references { padding:50px 110px 0;width:80%;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:50px; }
footer .references div:nth-child(2n) { text-align: right; }
footer .references img { max-width:300px;max-height:140px;  }


footer .wrapper { padding:0 110px;width:80%;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap: 30px;grid-template-areas:"information contact" "menu menu"; }
footer .wrapper .footer-data { font-size:16px;line-height:24px; }
footer .wrapper .footer-data.information { grid-area:information; }
footer .wrapper .footer-data.contact { grid-area:contact; }
footer .wrapper .footer-data.menu { grid-area:menu; }
footer .wrapper .footer-data:nth-child(2n) { text-align: right; }
footer .wrapper .footer-data h4 { font-weight:600;font-size:18px; }
footer .wrapper .footer-data:nth-child(1) { font-size:21px;line-height:30px; }
footer .wrapper .footer-data:nth-child(1) h4 { font-size:21px;line-height:30px;font-weight:600; }
footer .wrapper .footer-data:nth-child(2) { font-size:16px;line-height:24px; }
footer .wrapper .footer-data:nth-child(2) h4 { font-size:18px;line-height:30px;font-weight:600;text-transform:uppercase; }
footer .wrapper .footer-data:nth-child(2) p { margin:0 0 25px 0;display:grid;grid-template-columns:repeat(2,auto);justify-content:end;column-gap:10px;row-gap:5px; }
footer .wrapper .footer-data:nth-child(2) p:last-of-type { margin:0; }
footer .wrapper .footer-data:last-of-type {  }
footer .wrapper #menu-footer-menu { display:flex;list-style-type:none;justify-content:flex-end;gap:35px; }

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus { -webkit-text-fill-color:var(--color-white); }

/* =WordPress Core - START */
/* -------------------------------------------------------------- */
.alignnone { margin:0; }
.aligncenter,
div.aligncenter { display:block; margin:0px auto 0px auto; }
.alignright { float:right; margin:4px 0px 10px 10px; }
.alignleft { float:left; margin:4px 10px 10px 0; }
a img.alignright { float:right; margin:4px 0px 10px 10px; }
a img.alignnone { margin:0; }
a img.alignleft { float:left; margin:4px 10px 10px 0; }
a img.aligncenter { display:block; margin-left:auto; margin-right:auto }
.wp-caption { background:#fff; border:1px solid #f0f0f0; max-width:96%; padding:5px 3px 10px; text-align:center; }
.wp-caption.alignnone { margin:0; }
.wp-caption.alignleft { margin:5px 20px 20px 0; }
.wp-caption.alignright { margin:5px 0 20px 20px; }
.wp-caption img { border:0 none; height:auto; margin:0; max-width:98.5%; padding:0; width:auto; }
.wp-caption p.wp-caption-text { font-size:11px; line-height:17px; margin:0; padding:0 4px 5px; }

main > .container-content > .wrapper > .wp-block-image { margin-bottom:40px; }

/* Text meant only for screen readers. */
.screen-reader-text { clip:rect(1px, 1px, 1px, 1px); position:absolute !important; height:1px; width:1px; overflow:hidden; }
.screen-reader-text:focus { background-color:#f1f1f1; border-radius:3px; box-shadow:0 0 2px 2px rgba(0, 0, 0, 0.6); clip:auto !important; color:#21759b; display:block; font-size:14px; font-size:0.875rem; font-weight:bold; height:auto; left:5px; line-height:normal; padding:15px 23px 14px; text-decoration:none; top:5px; width:auto; z-index:100000; }
/* -------------------------------------------------------------- */
/* =WordPress Core - END */

/* Full HD */
@media only screen and (max-width:1920px) {
	
}

/* iPad Pro */
@media only screen and (max-width:1180px) {
	.container-content ul { margin:0 auto 25px auto;text-align:left;width:fit-content;width:60%; }
}

/* Tablet Landscape */
@media only screen and (max-width:1024px) {

  .container-content h1, .container-content h2, .container-content h3, .container-content h4, .container-content h5 { width:80%; }
  
  .container-content p { width:80%;word-break:break-word; }
  .container-content ul { width:80%; }

  footer .references { padding:50px 0px 0; }
  footer .wrapper { padding:50px 0px 0; }
  footer .gender-info { padding:50px 0px 0; }
}

/* Tablet Portrait */
@media only screen and (max-width:768px) {
  header .language { bottom:25px; }

  .container-content h1 { width:100%;padding:0 35px; }
  .container-content h2 { width:100%;padding:0 35px; }
  .container-content h3 { width:100%;padding:0 35px; }
  .container-content h4 { width:100%;padding:0 35px; }
  .container-content h5 { width:100%;padding:0 35px; }

  .container-content p { width:100%;padding:0 35px; }
  .container-content ul { width:100%;padding:0 35px; }

  .container-content .wrapper .team { display:grid;grid-template-columns:1fr;grid-template-areas:"image" "text"; }
  
  .container-content .wrapper .team:nth-of-type(odd) div:nth-child(1) { grid-area:image; }
  .container-content .wrapper .team:nth-of-type(odd) div:nth-child(2) { grid-area:text; }

  .container-content .wrapper .team:nth-of-type(even) div:nth-child(1) { grid-area:text; }
  .container-content .wrapper .team:nth-of-type(even) div:nth-child(2) { grid-area:image; }
  
  .container-content .wrapper .team p,.container-content .wrapper .team h2, .container-content .wrapper .team h3 { padding:inherit; }
  


  footer { padding-bottom:75px; }

  footer .references { padding:35px 35px 0;width:100%; }
  footer .references img { width:100%; }
  footer .wrapper { padding:35px 35px 0;width:100%; }
  footer .wrapper #menu-footer-menu { gap:20px; }
  footer .gender-info { padding:35px 35px 0;width:100%; }
	
}

/* Tablet Portrait */
@media only screen and (max-width:600px) {
  body.home header.hasteaser { height:calc(55vh - 4px); }

  body.home .teaser-logo { left:calc(50% - 122.15px) }
  body.home header .teaser-logo a span:first-of-type { font-size:53px;line-height:1em;letter-spacing:10px; }
  body.home header .teaser-logo a span:last-of-type { font-size:28px;line-height:1.5em;text-transform:uppercase; }

  header .mobile { position:fixed;right:25px;top:25px;padding:10px; }
  header .language { right:25px; }
  
  footer .references { grid-template-columns:1fr; }
  footer .references div,footer .references div:nth-child(2n) { text-align:center; }
  footer .wrapper { grid-template-columns:1fr;grid-template-areas:"information" "contact" "menu";gap:15px; }
  footer .wrapper .footer-data { width:280px;margin:0 auto;text-align:left; }
  footer .wrapper .footer-data:nth-child(2) h4 { text-align:left; }
  footer .wrapper .footer-data:nth-child(2) p { text-align:left;justify-content:start; }
  footer .wrapper #menu-footer-menu { display:grid;grid-template-columns:1fr;gap:10px; }
}

/* SmartPhone */
@media only screen and (max-width:480px) {	
	
}