/*
Theme Name: Mariazellerland Lederhosen
Theme URI: https://www.hirschlederhosen.at/
Author: Custom theme for Fred Lindmoser
Description: Helles, bildorientiertes WordPress-Theme mit Unterstützung bestehender Galerien und Seiten.
Version: 10.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: maria-lederhosen
*/
:root{--green:#08663b;--brown:#49301f;--cream:#faf8f2;--line:#e5ddd0;--text:#2b281f}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:var(--green)}img{max-width:100%;height:auto}h1,h2,h3{font-family:Georgia,serif;color:var(--brown);line-height:1.18}h1{font-size:clamp(2.3rem,5vw,4.6rem)}h2{font-size:clamp(1.8rem,3vw,3rem)}.wrap{max-width:1320px;margin:auto;padding:0 28px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.head-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:105px}.branding{display:flex;align-items:center;gap:18px;text-decoration:none;color:var(--brown);font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:clamp(1rem,2vw,1.5rem);line-height:1.2}.branding img{max-width:105px;max-height:100px;object-fit:contain}.branding small{display:block;color:var(--green);font-size:.65em;letter-spacing:.16em}.main-nav ul{list-style:none;display:flex;gap:26px;margin:0;padding:0;flex-wrap:wrap}.main-nav a{text-decoration:none;color:var(--brown);font-weight:600}.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--green);border-bottom:2px solid var(--green)}.hero{background:#f0ede4;padding:80px 0;border-bottom:1px solid var(--line)}.hero.has-image{background-size:cover;background-position:center}.hero.has-image .hero-copy{background:rgba(250,248,242,.94);padding:32px;max-width:590px}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--green);font-size:.8rem;font-weight:700}.hero p{max-width:550px;font-size:1.15rem}.btn{display:inline-block;background:var(--green);color:white;text-decoration:none;padding:13px 22px;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.section{padding:65px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}.gallery,.wp-block-gallery,.blocks-gallery-grid{gap:18px!important}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-item{float:none!important;width:auto!important;margin:0!important}.gallery img,.wp-block-gallery img,.wp-block-image img{display:block;width:100%;object-fit:cover}.gallery img,.wp-block-gallery img{aspect-ratio:4/3}.gallery a img,.wp-block-gallery a img{transition:transform .2s ease}.gallery a:hover img,.wp-block-gallery a:hover img{transform:scale(1.025)}.gallery-icon{overflow:hidden}.gallery-caption,figcaption{font-size:.82rem;color:#5d574e}.page-content{padding:55px 0 85px}.page-content>*{max-width:100%}.feature{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:48px 0}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.feature h2{margin-top:0}.social{display:flex;gap:15px;flex-wrap:wrap}.social a{display:inline-flex;align-items:center;gap:7px;font-weight:700}.appointment{background:#eef4ec;padding:35px;border-left:4px solid var(--green)}.site-footer{background:#e9e8df;border-top:1px solid var(--line);padding:36px 0}.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:25px}.footer-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:16px;padding:0;margin:0}.footer-nav a{text-decoration:none}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);display:none;align-items:center;justify-content:center;z-index:1000;padding:60px}.lightbox.open{display:flex}.lightbox img{max-width:90vw;max-height:83vh;object-fit:contain}.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.13);color:#fff;font-size:32px;cursor:pointer;padding:8px 17px}.lightbox .close{right:18px;top:12px}.lightbox .prev{left:12px}.lightbox .next{right:12px}.lightbox .caption{position:absolute;bottom:15px;color:#fff;text-align:center;padding:0 20px}@media(max-width:850px){.head-inner{flex-direction:column;align-items:flex-start;padding-top:15px;padding-bottom:15px}.main-nav ul{gap:15px}.feature-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:45px 0}}@media(max-width:520px){.gallery{grid-template-columns:1fr}.wrap{padding:0 18px}.branding img{max-width:70px}.hero.has-image .hero-copy{padding:20px}.lightbox{padding:40px 12px}}

/* v2: generous, responsive photo tiles using the original WordPress media IDs */
.ml-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
.ml-gallery-item{margin:0;min-width:0}.ml-gallery-item a{display:block;overflow:hidden;background:#ece6dc;aspect-ratio:4/3}
.ml-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.ml-gallery-item a:hover img{transform:scale(1.035)}.ml-gallery-item figcaption{padding:8px 0;color:#635947}
.gallery-more{text-align:center;margin:38px 0 0}.home-extra{margin-top:35px}.full-gallery{min-height:60vh}
.site-header{background:#faf8f2}.branding img{max-width:115px;max-height:105px}
@media(max-width:800px){.ml-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:480px){.ml-gallery{grid-template-columns:1fr;gap:18px}}

/* Version 3: quiet editorial layout, original portrait and full photographs */
:root{--green:#116b42;--brown:#4b3225;--cream:#faf9f5;--line:#e8e5dd;--text:#332f2a}
body{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.7;background:var(--cream)}
h1,h2,h3{font-family:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.12}
h1{font-size:clamp(2.6rem,5.4vw,5.4rem)}h2{font-size:clamp(2rem,3.3vw,3.5rem)}
.wrap{max-width:1240px;padding:0 34px}.site-header{background:#fffdf8;border-bottom:1px solid #e8e3d9}.head-inner{min-height:110px;gap:34px}.branding{gap:15px;font-size:clamp(.98rem,1.5vw,1.3rem);letter-spacing:.015em;font-weight:650;text-transform:none}.branding img{width:96px;height:96px;max-width:96px;max-height:96px;object-fit:contain}.branding small{font-weight:500;letter-spacing:.05em;text-transform:none;margin-top:5px}.main-nav a{font-weight:500}.main-nav ul{gap:24px}
.hero{position:relative;isolation:isolate;min-height:530px;display:flex;align-items:center;background:#f1ede5;padding:70px 0;overflow:hidden}.hero.has-image{background-image:none!important}.hero.has-image:before{content:"";position:absolute;inset:0 0 0 47%;background-image:var(--portrait-image);background-size:cover;background-position:center 32%;z-index:-2}.hero.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f1ede5 0%,#f1ede5 38%,rgba(241,237,229,.92) 46%,rgba(241,237,229,.15) 67%,transparent 100%);z-index:-1}.hero.has-image .hero-copy{background:none;padding:0;max-width:560px}.hero-copy{max-width:560px}.hero h1{margin:20px 0 26px}.hero h1 em{display:block;font-style:normal;color:var(--green);font-size:.8em}.hero p{font-size:1.13rem;line-height:1.65;max-width:490px}.eyebrow{letter-spacing:.17em;font-size:.72rem;font-weight:650}.btn{border-radius:2px;padding:14px 22px;letter-spacing:.07em;font-weight:600}.section{padding:72px 0}.section-heading h2{margin:12px 0 8px}.ml-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 23px;margin-top:35px;align-items:start}.ml-gallery-item{margin:0;min-width:0}.ml-gallery-item a{display:block;aspect-ratio:auto;overflow:visible;background:transparent}.ml-gallery-item img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;transition:opacity .2s}.ml-gallery-item a:hover img{transform:none;opacity:.88}.ml-gallery-item figcaption{font-size:.8rem;margin-top:7px;color:#6b6257}.gallery-more{margin-top:44px}.feature{background:#f1f1ea;border-color:#e2e2d8;padding:75px 0}.feature-grid{gap:70px;align-items:center}.appointment{background:#fffdf8;border-left:2px solid var(--green);padding:35px 40px}.site-footer{background:#eaece5}.page-content{min-height:55vh}
/* Keep existing galleries elsewhere uncropped too */
.gallery img,.wp-block-gallery img,.wp-block-image img,.blocks-gallery-grid img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
@media(max-width:950px){.hero.has-image:before{left:42%;opacity:.65}.hero.has-image:after{background:linear-gradient(90deg,#f1ede5 0%,rgba(241,237,229,.97) 42%,rgba(241,237,229,.55) 75%,rgba(241,237,229,.25))}.ml-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.head-inner{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}}
@media(max-width:600px){.wrap{padding:0 20px}.hero{min-height:460px;padding:55px 0}.hero.has-image:before{inset:0;opacity:.26;background-position:center 20%}.hero.has-image:after{background:rgba(241,237,229,.75)}.hero-copy{max-width:100%}.ml-gallery{grid-template-columns:1fr;gap:24px}.branding img{width:75px;height:75px}.section{padding:50px 0}.feature-grid{gap:32px}.appointment{padding:26px}}

/* V4: integrated editorial layout; full uncropped photographs; captions only in lightbox */
:root{--green:#08663b;--brown:#4b3225;--cream:#faf9f5;--line:#e8e5dd}
.site-header{border-bottom:0;box-shadow:0 1px 12px rgba(55,45,35,.045)}
.head-inner{min-height:98px}.branding img{width:86px;height:86px}.main-nav a{font-size:.95rem}
.hero{min-height:440px;padding:54px 0 50px;background:#f2eee6;border-bottom:0}
.hero.has-image:before{content:"";position:absolute;inset:0 0 0 48%;background-image:var(--portrait-image);background-size:cover;background-position:center 26%;opacity:1;z-index:-2}
.hero.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f2eee6 0%,#f2eee6 38%,rgba(242,238,230,.96) 45%,rgba(242,238,230,.45) 61%,rgba(242,238,230,0) 83%);z-index:-1}
.hero.has-image .hero-copy{background:transparent;padding:0}.hero-copy{max-width:535px}
.hero h1{font-size:clamp(2.6rem,4.7vw,4.65rem);line-height:1.13;margin:12px 0 18px}
.hero p{font-size:1.07rem;line-height:1.6}.hero .btn{margin-top:5px}
.section{padding:42px 0 58px}.section-heading h2{font-size:clamp(1.85rem,2.8vw,2.9rem);margin:6px 0 4px}
.ml-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;align-items:start}
.ml-gallery-item{margin:0;min-width:0}.ml-gallery-item a{display:block;aspect-ratio:auto;overflow:hidden;border-radius:12px;background:#f0ede7;line-height:0}
.ml-gallery-item img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:12px;transition:opacity .2s ease}
.ml-gallery-item a:hover img{opacity:.88}.ml-gallery-item figcaption{display:none!important}
.gallery-more{margin:26px 0 0}.feature{padding:55px 0;background:#f2f1ea}.feature-grid{gap:42px}
.appointment{border-radius:12px;border-left:0;border-top:3px solid var(--green);padding:28px 32px}
.btn{border-radius:5px}.home-extra{margin-top:28px}
.lightbox .caption{font-size:1rem;bottom:14px;max-width:85vw}
@media(max-width:950px){.ml-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hero.has-image:before{inset:0 0 0 44%;opacity:.9}.hero.has-image:after{background:linear-gradient(90deg,#f2eee6 0%,#f2eee6 34%,rgba(242,238,230,.85) 53%,rgba(242,238,230,.12) 100%)}}
@media(max-width:600px){.hero{min-height:400px;padding:46px 0}.hero.has-image:before{inset:0;opacity:.22;background-position:center 18%}.hero.has-image:after{background:rgba(242,238,230,.76)}.ml-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ml-gallery-item a,.ml-gallery-item img{border-radius:8px}.section{padding:35px 0 45px}.hero h1{font-size:clamp(2.25rem,9vw,3.3rem)}}
@media(max-width:390px){.ml-gallery{grid-template-columns:1fr}}

/* Version 5: icon links and uniform-ratio original photographs */
.social-icons{display:flex;align-items:center;gap:12px;margin-top:16px}
.social-icons a{width:44px;height:44px;border:1px solid rgba(8,102,59,.25);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--green);background:#fff;text-decoration:none;transition:background .2s,color .2s}
.social-icons a:hover,.social-icons a:focus-visible{background:var(--green);color:#fff}
.social-icons svg{width:24px;height:24px;display:block}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Version 6: portrait alignment refinement, desktop only. */
@media (min-width: 951px) {
  .hero.has-image::before {
    inset: 0 0 0 43%;
    background-position: 62% 26%;
  }
  .hero.has-image::after {
    background: linear-gradient(90deg,
      #f2eee6 0%,
      #f2eee6 34%,
      rgba(242,238,230,.96) 41%,
      rgba(242,238,230,.58) 57%,
      rgba(242,238,230,.08) 78%,
      rgba(242,238,230,0) 92%);
  }
}

/* Version 8: portrait more central, dedicated contact/visit section; old sidebar stays registered but is not duplicated on homepage. */
@media (min-width:951px){
 .hero.has-image::before{inset:0 0 0 35%;background-position:100% 25%}
 .hero.has-image::after{background:linear-gradient(90deg,#f2eee6 0%,#f2eee6 27%,rgba(242,238,230,.96) 35%,rgba(242,238,230,.78) 45%,rgba(242,238,230,.28) 63%,rgba(242,238,230,0) 86%)}
}
.visit-section{padding:70px 0;background:#faf8f2;border-top:1px solid #e5ddd0}
.visit-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:55px;align-items:center}
.visit-photo img{display:block;width:100%;height:auto;border-radius:12px}
.visit-details h2{margin:10px 0 24px}.visit-details p{margin:0 0 20px}
@media(max-width:800px){.visit-grid{grid-template-columns:1fr;gap:26px}.visit-section{padding:45px 0}}

/* Version 9: desktop portrait only; tablet/mobile unchanged. */
@media (min-width: 1100px) {
  .hero.has-image::before { inset:0 9% 0 30%; background-position:65% 25%; }
  .hero.has-image::after { background:linear-gradient(90deg,#f2eee6 0%,#f2eee6 27%,rgba(242,238,230,.98) 36%,rgba(242,238,230,.74) 48%,rgba(242,238,230,.12) 70%,rgba(242,238,230,0) 90%); }
}
.contact-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:center;margin:26px 0 38px}
.contact-feature img{width:100%;height:auto;display:block;border-radius:12px}
.contact-feature .contact-body{min-width:0}
@media(max-width:760px){.contact-feature{grid-template-columns:1fr;gap:20px}}
.seo-intro{max-width:850px;margin:36px auto 0;color:#4b443b;font-size:1rem;line-height:1.7}

/* Version 10: Desktop only. Bring portrait left without clipping it at the right edge. */
@media(min-width:1100px){
 .hero.has-image::before{inset:0 0 0 17%;background-position:50% 25%;}
 .hero.has-image::after{background:linear-gradient(90deg,#f2eee6 0%,#f2eee6 23%,rgba(242,238,230,.98) 31%,rgba(242,238,230,.85) 41%,rgba(242,238,230,.30) 57%,rgba(242,238,230,0) 78%);}
}
/* Contact image flows into a single full-width editorial panel, not a separate photo card. */
.contact-feature{display:block;position:relative;isolation:isolate;min-height:460px;margin:32px 0 55px;padding:58px clamp(25px,5vw,72px);background:#f0ece4;overflow:hidden;border-radius:16px}
.contact-feature::before{content:"";position:absolute;inset:0 0 0 30%;background-image:url('https://www.hirschlederhosen.at/wp-content/uploads/2018/05/Hirschlederhosen-Mariazell.jpg');background-size:cover;background-position:center;z-index:-2}
.contact-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f0ece4 0%,#f0ece4 33%,rgba(240,236,228,.95) 44%,rgba(240,236,228,.40) 66%,rgba(240,236,228,0) 90%);z-index:-1}
.contact-feature .contact-body{width:min(48%,530px);position:relative}
.contact-feature .contact-photo{display:none}
.contact-feature .contact-body p{margin:.5em 0}
@media(max-width:760px){.contact-feature{min-height:0;padding:30px 25px 250px}.contact-feature::before{inset:auto 0 0;height:280px;background-position:center 45%}.contact-feature::after{background:linear-gradient(180deg,#f0ece4 0%,#f0ece4 45%,rgba(240,236,228,.7) 65%,transparent 100%)}.contact-feature .contact-body{width:100%}}

/* Version 10 gallery compatibility patch: avoid oversized empty lazy-load placeholders. */
.ml-gallery{align-items:start!important;grid-auto-rows:auto!important}
.ml-gallery .ml-gallery-item{display:block!important;position:static!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;padding:0!important;overflow:visible!important}
.ml-gallery .ml-gallery-item>a{display:block!important;position:static!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;padding:0!important;line-height:0!important}
.ml-gallery .ml-gallery-item img{display:block!important;position:static!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important;margin:0!important}
