@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--ink:#090d0c;--olive:#253a34;--gold:#c6a66a;--cream:#d8d0c0;--paper:#eee9df;--line:#bdb39f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid rgba(198,166,106,.24);position:sticky;top:0;background:rgba(9,13,12,.94);backdrop-filter:blur(15px);z-index:20}.brand{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.17em;font-weight:600}.mark{font-family:'Playfair Display',serif;font-size:27px;letter-spacing:-.08em;border-right:1px solid var(--gold);padding-right:13px}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover{opacity:.55}.navcta{background:var(--ink);color:white;padding:13px 20px;border-radius:100px}#menu{display:none;background:none;border:0;font-size:22px}.hero{min-height:760px;display:grid;grid-template-columns:1.3fr .7fr;padding:7vw 5vw 5vw;overflow:hidden}.hero-inner{max-width:900px;position:relative;z-index:2}.eyebrow,.kicker{font-size:11px;letter-spacing:.25em;font-weight:600;color:var(--olive);margin-bottom:28px}.hero h1,.section h2,.process h2{font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(55px,7vw,108px);line-height:.91;letter-spacing:-.045em;margin:0}.hero h1 em,.section h2 i,.process h2 i{font-weight:500;color:var(--olive)}.lead{font-size:20px;line-height:1.65;max-width:700px;margin:38px 0}.actions{display:flex;gap:24px;align-items:center}.btn{border:0;background:var(--ink);color:#fff;padding:17px 24px;border-radius:100px;font:inherit;font-weight:500;cursor:pointer}.textlink{border-bottom:1px solid var(--ink);padding-bottom:4px}.trust{display:flex;flex-wrap:wrap;gap:12px;margin-top:65px}.trust span{border:1px solid var(--line);border-radius:100px;padding:10px 15px;font-size:12px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center}.hero-art:before{content:'';position:absolute;width:560px;height:560px;border:1px solid var(--line);border-radius:50%}.hero-art:after{content:'';position:absolute;width:400px;height:620px;background:linear-gradient(160deg,#737966,#30342b);clip-path:polygon(30% 0,100% 18%,100% 100%,0 100%,0 24%);opacity:.95}.building{z-index:2;color:#fff;font-family:'Playfair Display';font-size:52px;letter-spacing:-.06em;transform:rotate(-90deg);white-space:nowrap}.building span{font-family:'DM Sans';font-size:11px;letter-spacing:.5em;margin-left:20px}.section{padding:9vw 5vw}.twocol,.about,.booking{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.section h2{font-size:clamp(48px,6vw,88px)}.big{font-family:'Playfair Display';font-size:29px;line-height:1.35;margin-top:0}.twocol p,.story p,.booking p{font-size:16px;line-height:1.8}.fine{font-size:12px!important;opacity:.65}.dark{background:#171a15;color:#f4f0e7}.light{color:#b9bda9}.headrow{display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;align-items:end}.headrow p{line-height:1.7;color:#c5c6bf}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:70px}.property{background:#22261f;overflow:hidden}.property img{width:100%;height:340px;object-fit:cover;filter:saturate(.65) contrast(.95);display:block}.pc{padding:26px}.pc>span,.insightgrid span,.bookbox>span{font-size:10px;letter-spacing:.22em;color:#b9bda9}.pc h3{font-family:'Playfair Display';font-size:27px;font-weight:500}.facts{display:flex;justify-content:space-between;border-top:1px solid #3d4139;padding-top:20px}.facts b{font-size:18px}.pc small{display:flex;justify-content:space-between;color:#8f9389;margin-top:8px}.asterisk{font-size:11px;opacity:.55;margin-top:18px}.about{background:var(--cream)}.signature{margin-top:24px;color:var(--olive);letter-spacing:.08em}.story{padding-top:60px}.credentials{border-top:1px solid var(--line);margin-top:45px}.credentials div{display:grid;grid-template-columns:160px 1fr;padding:18px 0;border-bottom:1px solid var(--line)}.credentials span{opacity:.65}.insightgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:60px}.insightgrid article{border:1px solid var(--line);padding:34px;min-height:330px}.insightgrid h3{font-family:'Playfair Display';font-size:29px;font-weight:500}.insightgrid p{line-height:1.7}.process{padding:9vw 5vw;background:#606652;color:#f5f1e8}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid #8d927f}.steps>div{padding:30px 30px 10px 0;border-right:1px solid #8d927f}.steps b{color:#d3c092}.steps h3{font-family:'Playfair Display';font-size:25px}.steps p{line-height:1.6;color:#e1e1da}.booking{align-items:center}.bookbox{border:1px solid var(--line);padding:45px;background:#fff}.bookbox h3{font-family:'Playfair Display';font-size:36px}.bookbox .btn{width:100%;margin:15px 0}.bookbox>a{font-size:12px;text-decoration:underline}footer{background:#10120f;color:#dedfd8;padding:55px 5vw;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px;font-size:13px;line-height:1.8}.foot{align-items:flex-start}.linkbtn{border:0;background:none;color:inherit;padding:0;font:inherit;cursor:pointer;text-decoration:underline}.cookie{position:fixed;left:20px;right:20px;bottom:20px;background:#11130f;color:#fff;z-index:99;padding:24px 28px;display:none;grid-template-columns:1fr auto;gap:30px;align-items:center;box-shadow:0 20px 60px #0005}.cookie p{margin:7px 0 0;max-width:800px;font-size:13px;line-height:1.55;color:#d2d4cc}.cookie-actions{display:flex;gap:10px}.cookie button{border:0;border-radius:100px;padding:13px 18px;cursor:pointer}.cookie .outline{background:transparent;color:#fff;border:1px solid #777}
@media(max-width:900px){header{height:72px}.brand span:last-child{font-size:10px}#menu{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:25px 5vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{grid-template-columns:1fr;min-height:auto;padding-top:90px}.hero-art{height:330px;margin-top:50px}.hero-art:before{width:330px;height:330px}.hero-art:after{width:240px;height:330px}.building{font-size:36px}.lead{font-size:17px}.twocol,.about,.booking,.headrow{grid-template-columns:1fr;gap:40px}.cards,.insightgrid,.steps{grid-template-columns:1fr}.property img{height:280px}.story{padding-top:0}.steps>div{border-right:0;border-bottom:1px solid #8d927f}.section,.process{padding:90px 6vw}footer{grid-template-columns:1fr 1fr}.cookie{grid-template-columns:1fr;left:10px;right:10px}.cookie-actions{flex-wrap:wrap}.actions{align-items:flex-start;flex-direction:column}.trust{margin-top:40px}}

/* HW Prime — Dark Luxury Edition */
header{color:#f5f0e7}.mark{color:var(--gold)}header nav a{color:#e8e1d4}.navcta{background:var(--gold);color:#0b0f0e}
.hero{background:radial-gradient(circle at 78% 28%,rgba(198,166,106,.14),transparent 28%),linear-gradient(135deg,#0a0f0e 0%,#101a17 48%,#18231f 100%);color:#f6f0e6}.hero .eyebrow{color:#d2b77f}.hero h1 em{color:#c6a66a}.hero .textlink{border-color:#d8c49a}.hero .trust span{border-color:rgba(198,166,106,.32);background:rgba(255,255,255,.035)}.hero-art:before{border-color:rgba(198,166,106,.35)}.hero-art:after{background:linear-gradient(160deg,#b79a61 0%,#394d45 45%,#111a17 100%);box-shadow:0 35px 90px #0008}
.section:not(.dark):not(.about){background:linear-gradient(180deg,#eee9df,#e5ded1)}.section:not(.dark):not(.about) .kicker{color:#6e5833}.dark{background:radial-gradient(circle at 15% 0%,#22352f 0%,#111916 35%,#090d0c 100%)}.property{background:linear-gradient(160deg,#1b2824,#0c1210);border:1px solid rgba(198,166,106,.22);box-shadow:0 25px 60px #0005}.property img{filter:saturate(.8) contrast(1.05) brightness(.78)}.pc h3{color:#f1e7d5}.facts b{color:#d6b875}.about{background:linear-gradient(135deg,#d8d0c0 0%,#eee8dd 48%,#cfc3ae 100%)}.about .kicker,.about .signature{color:#725b31}.insightgrid article{background:rgba(255,255,255,.38);border-color:#b8aa91;box-shadow:0 18px 45px rgba(36,28,16,.07)}.insightgrid article:hover{transform:translateY(-5px);transition:.25s ease;border-color:#9e7e48}.process{background:linear-gradient(125deg,#172722,#263d35 55%,#151f1c);color:#f5f1e8}.steps b{color:#e0bd77}.booking{background:linear-gradient(180deg,#e9e3d8,#d7cebe)!important}.bookbox{background:#101916;color:#f4eee3;border-color:#8f7850;box-shadow:0 30px 80px rgba(0,0,0,.18)}.bookbox>span{color:#cdb47e}.bookbox .btn{background:var(--gold);color:#101410}footer{background:#070a09;border-top:1px solid rgba(198,166,106,.25)}.cookie{background:#080c0b;border:1px solid rgba(198,166,106,.35)}
@media(max-width:900px){nav{background:#0b100e;border-bottom-color:rgba(198,166,106,.25)}}

/* HW Prime — Munich skyline + advisory positioning */
.skyline-art{min-height:610px;border-radius:2px;overflow:hidden;background:linear-gradient(180deg,rgba(6,12,10,.04),rgba(6,12,10,.48)),url('assets/munich-skyline.png') center/cover no-repeat;box-shadow:0 35px 90px #0008;align-self:center;justify-self:stretch;position:relative;border:1px solid rgba(198,166,106,.28)}
.skyline-art:before,.skyline-art:after{display:none}.skyline-label{position:absolute;left:28px;right:28px;bottom:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.55);color:#fff;display:flex;justify-content:space-between;gap:20px;align-items:end;text-shadow:0 2px 18px #000}.skyline-label span{font-size:10px;letter-spacing:.3em}.skyline-label b{font-family:'Playfair Display',serif;font-size:20px;font-weight:500}.why{background:linear-gradient(180deg,#eee9df,#e5ded1)!important}.benefitgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:70px}.benefitgrid article{border-top:1px solid #9e8b69;padding:28px 22px 10px 0}.benefitgrid span,.taxgrid b{color:#8a6d3c;font-size:11px;letter-spacing:.2em}.benefitgrid h3,.taxgrid h3{font-family:'Playfair Display',serif;font-size:26px;font-weight:500;margin:20px 0 12px}.benefitgrid p,.taxgrid p{line-height:1.7;font-size:14px}.tax{background:linear-gradient(135deg,#d9d0bf,#f0ebe1)!important}.tax-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}.taxgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#b8aa91;margin-top:65px;border:1px solid #b8aa91}.taxgrid article{background:#eee8dc;padding:34px;min-height:300px}.tax-note{margin-top:28px;padding:24px 28px;border-left:3px solid #9d7b43;background:rgba(255,255,255,.38);font-size:13px;line-height:1.7}.booking .bookbox .btn{display:block;text-align:center}
@media(max-width:900px){.skyline-art{height:430px;min-height:430px;margin-top:45px}.skyline-label{flex-direction:column;align-items:flex-start}.benefitgrid,.taxgrid,.tax-intro{grid-template-columns:1fr}.benefitgrid{gap:10px}.taxgrid article{min-height:auto}}

/* Typography refinement: consistent heading typeface throughout */
.hero h1 em,.section h2 i,.process h2 i{font-family:'Playfair Display',serif;font-style:normal;font-weight:500}

/* Portfolio-Erweiterung */
.portfolio-more{margin:42px 0 8px;padding:28px 30px;border:1px solid rgba(207,171,104,.34);display:flex;gap:18px;align-items:baseline;justify-content:space-between}.portfolio-more strong{font-family:inherit;font-size:clamp(24px,3vw,38px);font-weight:500;color:#d3ae6c}.portfolio-more span{max-width:650px;color:rgba(255,255,255,.72);line-height:1.65}@media(max-width:760px){.portfolio-more{flex-direction:column;align-items:flex-start;padding:24px 20px}}

/* Final typography/color refinement */
.hero h1 em,.section h2 i,.process h2 i{color:var(--gold)!important;}
.about .kicker,.about .signature,.section:not(.dark):not(.about) .kicker{color:#8a6d3c;}
/* Personal name: first and last name use the same color */
.about h2,
.about h2 i { color: var(--ink) !important; }
/* --- HW PRIME VILLA CINEMATIC PRO --- */
html{scroll-behavior:smooth}.villa-header{position:absolute;top:0;left:0;right:0;z-index:30;background:linear-gradient(180deg,rgba(8,6,4,.7),transparent);border:0;color:#f4ead8;padding:24px 4.5%;}.villa-header .brand,.villa-header nav a{color:#f5ead7}.villa-header .mark{color:#d7b06b}.villa-header .navcta{border:1px solid rgba(224,194,137,.65);background:rgba(12,9,6,.18);padding:12px 17px}.villa-header #menu{color:#f5ead7}.villa-hero{height:100svh;min-height:700px;position:relative;overflow:hidden;background:#0a0705;color:#f5ead7;isolation:isolate}.villa-bg{position:absolute;inset:-3%;background:url('assets/villa-hero.png') center 48%/cover no-repeat;z-index:-3;transform:scale(1.07);animation:villaDrift 18s ease-in-out infinite alternate}.villa-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(4,3,2,.58),rgba(4,3,2,.06) 26%,rgba(4,3,2,.08) 72%,rgba(4,3,2,.6)),linear-gradient(180deg,rgba(4,3,2,.3),transparent 35%,rgba(4,3,2,.38))}.villa-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);text-align:center;width:min(780px,62vw);text-shadow:0 2px 18px rgba(0,0,0,.5)}.villa-welcome{font-size:11px;letter-spacing:.58em;margin-bottom:8px}.villa-monogram{font-family:'Playfair Display',Georgia,serif;font-size:clamp(92px,12vw,190px);line-height:.76;font-weight:400;letter-spacing:-.06em}.villa-name{font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4vw,64px);letter-spacing:.18em;line-height:1}.villa-name small{display:block;font-family:inherit;font-size:.36em;letter-spacing:.42em;margin:12px 0 24px}.villa-line{font-family:'Playfair Display',Georgia,serif;font-size:clamp(12px,1.3vw,19px);letter-spacing:.22em}.villa-enter{display:inline-flex;align-items:center;gap:28px;margin-top:34px;padding:17px 36px;border:1px solid rgba(242,224,191,.72);color:#fff;text-decoration:none;font-size:11px;letter-spacing:.25em;background:rgba(8,6,4,.28);backdrop-filter:blur(5px);transition:.45s}.villa-enter:hover{background:#c6a261;color:#17100a;transform:translateY(-3px)}.scene-rail{position:absolute;left:3.6%;top:31%;display:flex;flex-direction:column;align-items:center;gap:16px;font-size:11px;letter-spacing:.12em}.scene-rail span{height:58px;width:1px;background:#e7d6b7}.scene-rail a{color:rgba(255,255,255,.6);text-decoration:none}.villa-side{position:absolute;right:3.7%;top:34%;display:grid;gap:14px;text-align:left;width:120px}.villa-side div{display:grid;gap:3px}.villa-side b{font-family:'Playfair Display',Georgia,serif;font-size:13px;letter-spacing:.14em}.villa-side small{font-size:8px;letter-spacing:.2em}.villa-side i{width:18px;height:1px;background:#c5a46c}.villa-bottom{position:absolute;bottom:25px;left:3.7%;right:3.7%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font-size:9px;letter-spacing:.24em}.villa-bottom>div{display:flex;align-items:center;gap:18px}.villa-bottom i{display:inline-block;width:1px;height:14px;background:rgba(255,255,255,.5)}#motionToggle{justify-self:end;border:0;background:transparent;color:#f5ead7;font:inherit;letter-spacing:.18em;cursor:pointer}.section,.process{opacity:0;transform:translateY(48px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.section.in-view,.process.in-view{opacity:1;transform:none}.property{transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s}.property:hover{transform:translateY(-10px);box-shadow:0 25px 55px rgba(0,0,0,.28)}.property img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.property:hover img{transform:scale(1.06)}@keyframes villaDrift{0%{transform:scale(1.07) translate3d(0,0,0)}100%{transform:scale(1.13) translate3d(-1.2%,.8%,0)}}body.film-mode .villa-bg{animation-duration:8s}.villa-center>*{opacity:0;transform:translateY(18px);animation:heroReveal .9s forwards}.villa-center>*:nth-child(1){animation-delay:.2s}.villa-center>*:nth-child(2){animation-delay:.45s}.villa-center>*:nth-child(3){animation-delay:.65s}.villa-center>*:nth-child(4){animation-delay:.85s}.villa-center>*:nth-child(5){animation-delay:1.05s}@keyframes heroReveal{to{opacity:1;transform:none}}@media(max-width:900px){.villa-header{padding:18px 5%}.villa-center{width:84vw;top:48%}.villa-side{display:none}.scene-rail{left:3%;opacity:.65}.villa-bottom{grid-template-columns:1fr 1fr}.villa-bottom>div{display:none}.villa-bottom button{justify-self:end}.villa-hero{min-height:640px}.villa-monogram{font-size:clamp(84px,28vw,130px)}.villa-name{font-size:clamp(28px,9vw,46px)}.villa-line{font-size:10px;line-height:1.8}.villa-enter{margin-top:24px;padding:15px 24px}}@media(prefers-reduced-motion:reduce){.villa-bg{animation:none}.villa-center>*{animation:none;opacity:1;transform:none}.section,.process{opacity:1;transform:none;transition:none}}
/* FINAL CLEAN VILLA HERO: visual typography is baked once into the cinematic artwork. */
.villa-hero{height:100svh;min-height:680px;aspect-ratio:auto;position:relative;overflow:hidden;background:#090604;color:#f5ead7;isolation:isolate}
.villa-bg{position:absolute;inset:-1.1%;background-image:url('assets/villa-hero.png');background-position:50% 74%;background-size:cover;background-repeat:no-repeat;z-index:-3;transform:scale(.992);animation:villaFinalDrift 16s ease-in-out infinite alternate;will-change:transform}
.villa-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 84%, rgba(6,4,3,.82) 91%, rgba(6,4,3,1) 100%), radial-gradient(circle at 50% 45%, transparent 45%, rgba(0,0,0,.16) 100%)}
.villa-header{background:linear-gradient(180deg,rgba(5,4,3,.58),rgba(5,4,3,.16) 70%,transparent);backdrop-filter:blur(2px)}
.hero-hotspot{position:absolute;z-index:5;display:block;background:transparent;border:0;cursor:pointer}
.hero-discover{left:42.2%;top:53%;width:15.8%;height:7.4%}
.hero-book{right:5.2%;top:2.8%;width:15%;height:7%}
.hero-film{right:2.5%;bottom:2.5%;width:12%;height:9%}
@keyframes villaFinalDrift{from{transform:scale(.992) translate3d(0,0,0)}to{transform:scale(1.018) translate3d(-.22%,.32%,0)}}
body.film-mode .villa-bg{animation-duration:7s}
@media(max-width:900px){.villa-hero{height:78svh;min-height:560px}.villa-bg{background-size:cover;background-position:52% 70%}.hero-discover{left:35%;top:50%;width:30%;height:10%}.hero-book{right:2%;top:2%;width:28%;height:8%}.hero-film{right:1%;bottom:2%;width:20%;height:10%}}
@media(max-aspect-ratio:3/4){.villa-hero{height:72svh}.villa-bg{background-size:cover;background-position:50% 50%}}

/* centered refinement */
@media(min-width:901px){.villa-hero{min-height:720px}}

/* lower + clean right edge refinement */
@media(min-width:901px){.villa-hero{min-height:735px}}

.villa-hero::after{content:'';position:absolute;top:0;right:0;width:8.5%;height:100%;background:linear-gradient(90deg,rgba(6,4,3,0) 0%,rgba(6,4,3,.78) 32%,rgba(6,4,3,1) 72%,rgba(6,4,3,1) 100%);pointer-events:none;z-index:-1}
@media(max-width:900px){.villa-hero::after{width:0}}


/* ===== HERO REDESIGN — clean wide composition ===== */
.villa-hero{
  height:100svh;
  min-height:700px;
  position:relative;
  overflow:hidden;
  background:#090604;
  isolation:isolate;
}
.villa-bg{
  position:absolute;
  inset:0;
  background-image:url('assets/villa-hero-redesign.png') !important;
  background-size:cover !important;
  background-position:50% 50% !important;
  background-repeat:no-repeat !important;
  transform:scale(1) !important;
  translate:none !important;
  animation:villaRedesignDrift 18s ease-in-out infinite alternate !important;
  z-index:-3;
  will-change:transform;
}
.villa-shade{
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,4,3,.20),transparent 22%,transparent 78%,rgba(5,4,3,.16));
}
.villa-hero::after{display:none !important;content:none !important}
.villa-header{
  background:linear-gradient(180deg,rgba(7,5,3,.60),rgba(7,5,3,.12) 75%,transparent) !important;
  backdrop-filter:blur(1px);
}
/* clickable regions align to artwork, but no duplicate visible typography */
.hero-discover{left:42.2% !important;top:47.0% !important;width:16.2% !important;height:7.2% !important}
.hero-book{right:3.2% !important;top:2.4% !important;width:15.5% !important;height:7.2% !important}
.hero-film{right:1.7% !important;bottom:1.8% !important;width:12.5% !important;height:9% !important}
@keyframes villaRedesignDrift{
  from{transform:scale(1) translate3d(0,0,0)}
  to{transform:scale(1.018) translate3d(-.15%,.10%,0)}
}
body.film-mode .villa-bg{animation-duration:8s !important}
@media (max-width:900px){
  .villa-hero{height:82svh;min-height:600px}
  .villa-bg{background-position:50% 50% !important;background-size:cover !important}
  .hero-discover{left:34% !important;top:47% !important;width:32% !important;height:10% !important}
  .hero-book{right:1% !important;top:2% !important;width:30% !important;height:9% !important}
  .hero-film{right:1% !important;bottom:1% !important;width:22% !important;height:11% !important}
}
@media (prefers-reduced-motion:reduce){.villa-bg{animation:none !important}}


/* === DEVICE-SPECIFIC HERO COMPOSITION ===
   Desktop stays exactly as designed. Mobile uses its own layout so the 3:2 artwork is never stretched/cropped into a tall portrait frame. */
.mobile-hero-panel{display:none}
@media (max-width:900px){
  .villa-header{position:absolute!important;height:76px!important;padding:16px 20px!important;background:linear-gradient(180deg,rgba(8,6,4,.96),rgba(8,6,4,.7) 68%,transparent)!important}
  .villa-header .brand{gap:10px}.villa-header .brand .mark{font-size:30px}.villa-header .brand span:last-child{font-size:10px;letter-spacing:.22em}
  .villa-header nav{top:76px!important;background:#0b0a08!important;border-bottom:1px solid rgba(198,166,106,.25)!important}
  .villa-hero{height:auto!important;min-height:0!important;padding-top:76px!important;background:#0b0806!important;overflow:hidden!important}
  .villa-bg{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:3/2!important;background-image:url('assets/villa-hero-redesign.png')!important;background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat!important;transform:none!important;animation:none!important;translate:none!important;z-index:0!important}
  .villa-shade,.hero-hotspot{display:none!important}
  .villa-hero::after{display:none!important;content:none!important}
  .mobile-hero-panel{display:block;position:relative;z-index:2;padding:30px 22px 28px;background:linear-gradient(180deg,#0b0806,#14110d);color:#f5ead7;text-align:center;border-top:1px solid rgba(198,166,106,.22)}
  .mobile-hero-kicker{font-size:9px;letter-spacing:.28em;color:#cfae72;margin-bottom:12px}
  .mobile-hero-panel h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(30px,9vw,42px);line-height:1.04;font-weight:500;margin:0 auto 12px;max-width:390px}
  .mobile-hero-panel p{margin:0 auto;max-width:360px;font-size:14px;line-height:1.65;color:rgba(245,234,215,.76)}
  .mobile-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px auto 24px;max-width:360px}
  .mobile-hero-actions a{min-height:48px;display:flex;align-items:center;justify-content:center;padding:10px;border:1px solid rgba(224,194,137,.55);color:#f5ead7;text-decoration:none;text-transform:uppercase;font-size:9px;letter-spacing:.16em;background:rgba(255,255,255,.025)}
  .mobile-hero-actions a:first-child{background:#c6a66a;border-color:#c6a66a;color:#0d0b08}
  .mobile-pillars{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0 auto;max-width:360px;background:rgba(198,166,106,.18);border:1px solid rgba(198,166,106,.18)}
  .mobile-pillars span{padding:12px 6px;background:#0e0c09;color:#dcc697;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
}
@media (max-width:430px){.section,.process{padding-left:22px!important;padding-right:22px!important}.cookie{left:8px!important;right:8px!important;bottom:8px!important}}

/* === MOBILE FULLSCREEN VILLA — dedicated phone composition === */
@media (max-width: 900px){
  html,body{overflow-x:hidden}
  .villa-header{
    position:absolute!important; top:0!important; left:0!important; right:0!important;
    height:82px!important; padding:14px 20px!important; z-index:40!important;
    background:linear-gradient(180deg,rgba(7,5,3,.94) 0%,rgba(7,5,3,.62) 58%,transparent 100%)!important;
  }
  .villa-header .brand .mark{font-size:31px!important}
  .villa-header .brand span:last-child{font-size:10px!important;letter-spacing:.20em!important;white-space:nowrap}
  .villa-header #menu{font-size:25px!important;color:#f4ead8!important}

  .villa-hero{
    position:relative!important;
    width:100%!important;
    height:100svh!important;
    min-height:100svh!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    background:#080604!important;
  }
  .villa-bg{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:auto!important;
    background-image:url('assets/villa-hero-redesign.png')!important;
    background-size:contain!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    transform:none!important;
    animation:none!important;
    z-index:0!important;
  }
  .villa-shade{
    display:block!important;position:absolute!important;inset:0!important;z-index:1!important;
    background:linear-gradient(180deg,rgba(4,3,2,.25) 0%,transparent 20%,transparent 82%,rgba(4,3,2,.22) 100%)!important;
    pointer-events:none!important;
  }
  .villa-hero::after{display:none!important;content:none!important}
  .hero-hotspot{display:none!important}

  /* Content starts only after the complete full-screen villa */
  .mobile-hero-panel{
    display:block!important;
    position:absolute!important;
    left:0!important;right:0!important;bottom:18px!important;
    z-index:5!important;
    padding:0 22px!important;
    background:transparent!important;
    border:0!important;
    text-align:center!important;
    pointer-events:none!important;
  }
  .mobile-hero-kicker,.mobile-hero-panel h1,.mobile-hero-panel p,.mobile-hero-actions{display:none!important}
  .mobile-pillars{
    display:grid!important;grid-template-columns:repeat(4,1fr)!important;
    max-width:100%!important;margin:0!important;gap:0!important;
    border:0!important;background:transparent!important;
  }
  .mobile-pillars span{
    padding:9px 3px!important;background:rgba(8,6,4,.42)!important;
    border-right:1px solid rgba(214,181,119,.32)!important;
    color:#dcc697!important;font-size:6.5px!important;letter-spacing:.08em!important;
    backdrop-filter:blur(3px);
  }
  .mobile-pillars span:last-child{border-right:0!important}
}

/* Narrow iPhones: preserve the entire artwork; never crop it */
@media (max-width: 480px){
  .villa-bg{background-size:contain!important;background-position:center center!important}
  .villa-header{height:78px!important;padding:12px 18px!important}
  .villa-header .brand{gap:9px!important}
  .villa-header .brand .mark{font-size:29px!important;padding-right:11px!important}
  .villa-header .brand span:last-child{font-size:9px!important;letter-spacing:.18em!important}
  .mobile-hero-panel{bottom:12px!important;padding:0 12px!important}
  .mobile-pillars span{font-size:6px!important;padding:8px 2px!important}
}

/* Legal subpages — intentionally isolated from hero design */
.legal-page{min-height:70vh;background:linear-gradient(180deg,#eee9df,#e5ded1);padding-top:86px}.legal-header{position:fixed!important;background:#090d0c!important;backdrop-filter:blur(15px)!important}.legal-content{max-width:980px;margin:0 auto;opacity:1!important;transform:none!important;padding-top:80px!important}.legal-content h2{font-size:clamp(48px,6vw,82px)}.legal-copy{font-size:16px;line-height:1.85;margin-top:48px;max-width:820px}.legal-copy p{margin:0 0 30px}.legal-copy a{text-decoration:underline;text-underline-offset:3px}.legal-copy strong{font-weight:600}
@media(max-width:900px){.legal-page{padding-top:76px}.legal-header{height:76px!important}.legal-content{padding:58px 22px 70px!important}.legal-content h2{font-size:52px!important}.legal-copy{font-size:15px;margin-top:36px}.legal-header nav.open{display:flex!important;position:absolute!important;top:76px!important;left:0!important;right:0!important;background:#0b0a08!important;color:#f5ead7!important;z-index:100!important}.legal-header nav.open a{color:#f5ead7!important}}

/* === FINAL MOBILE HERO CLEANUP ===
   Desktop remains untouched. Mobile gets a dedicated clean portrait crop of the villa artwork. */
@media (max-width:900px){
  .villa-hero{
    height:100svh!important;
    min-height:100svh!important;
    background:#090604!important;
  }
  .villa-bg{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-image:url('assets/villa-mobile-clean.jpg')!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    animation:none!important;
    transform:none!important;
  }
  .villa-shade{
    display:block!important;
    background:linear-gradient(180deg,rgba(6,4,3,.52) 0%,rgba(6,4,3,.10) 18%,transparent 62%,rgba(6,4,3,.12) 100%)!important;
  }
  .mobile-hero-panel{display:none!important}
  .hero-film,.hero-book{display:none!important}
  .hero-discover{
    display:block!important;
    left:31%!important;
    top:48%!important;
    width:38%!important;
    height:8%!important;
    z-index:8!important;
  }
}
@media (max-width:480px){
  .villa-bg{background-size:cover!important;background-position:center center!important}
}

/* === APPROVED MOBILE HERO — exact visual composition ===
   Desktop is intentionally untouched. The mobile hero uses the approved portrait artwork
   as one coherent composition so it cannot be distorted by responsive cropping. */
@media (max-width:900px){
  .villa-hero{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:852 / 1430!important;
    overflow:hidden!important;
    background:#090604!important;
  }
  .villa-bg{
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-image:url('assets/mobile-hero-exact.jpg')!important;
    background-size:100% 100%!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    transform:none!important;
    animation:none!important;
  }
  .villa-shade,.mobile-hero-panel{display:none!important}
  /* The visible header is part of the approved mobile composition. Keep the real controls
     transparent and clickable so menu/navigation still work without duplicating the design. */
  .villa-header{
    height:88px!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .villa-header .brand{opacity:0!important}
  .villa-header #menu{opacity:0!important;width:56px!important;height:56px!important;position:absolute!important;right:10px!important;top:15px!important;z-index:120!important}
  .villa-header nav.open{
    display:flex!important;opacity:1!important;
    position:absolute!important;top:82px!important;left:14px!important;right:14px!important;
    background:rgba(10,8,6,.97)!important;border:1px solid rgba(214,181,119,.38)!important;
    padding:18px!important;z-index:130!important;backdrop-filter:blur(14px)!important;
  }
  .villa-header nav.open a{color:#f5ead7!important}
  .hero-film{display:none!important}
  .hero-discover{
    display:block!important;position:absolute!important;
    left:27%!important;top:44.5%!important;width:46%!important;height:7%!important;z-index:30!important;
  }
  .hero-book{
    display:block!important;position:absolute!important;
    left:27%!important;top:52.5%!important;width:46%!important;height:7%!important;z-index:30!important;
  }
}

/* === FINAL MOBILE BRAND SHARPNESS FIX ===
   Only replaces the baked-in mobile header branding with real HTML text. */
@media (max-width:900px){
  .villa-header{
    background:#0d0907!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    height:88px!important;
    padding:15px 20px!important;
    display:flex!important;
    align-items:center!important;
  }
  .villa-header .brand{
    opacity:1!important;
    position:relative!important;
    z-index:121!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    color:#f5ead7!important;
    text-rendering:geometricPrecision;
    -webkit-font-smoothing:antialiased;
  }
  .villa-header .brand .mark{
    color:#d7b06b!important;
    font-size:31px!important;
    line-height:1!important;
    padding-right:13px!important;
    border-right:1px solid #d7b06b!important;
  }
  .villa-header .brand span:last-child{
    color:#f5ead7!important;
    font-size:10px!important;
    font-weight:600!important;
    letter-spacing:.20em!important;
    white-space:nowrap!important;
  }
  .villa-header #menu{
    opacity:1!important;
    color:#f5ead7!important;
    font-size:25px!important;
    line-height:1!important;
    width:56px!important;
    height:56px!important;
    position:absolute!important;
    right:10px!important;
    top:15px!important;
    z-index:120!important;
  }
}
@media (max-width:390px){
  .villa-header{padding-left:16px!important}
  .villa-header .brand{gap:9px!important}
  .villa-header .brand .mark{font-size:29px!important;padding-right:10px!important}
  .villa-header .brand span:last-child{font-size:8.5px!important;letter-spacing:.16em!important}
}

/* ======================================================================
   CINEMATIC SITE SYSTEM — content pages aligned to the approved villa hero
   IMPORTANT: no .villa-hero / .villa-bg / mobile hero composition changes.
   ====================================================================== */
:root{
  --cinema:#090604;
  --cinema-2:#110c08;
  --cinema-3:#17100b;
  --gold:#cfae72;
  --gold-soft:#e0c58f;
  --ivory:#f4ead8;
  --muted:rgba(244,234,216,.68);
  --line:rgba(207,174,114,.24);
}

/* Main content now continues the visual language of the opening scene */
main > .section:not(.villa-hero),
main > .process,
.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,
.process{
  color:var(--ivory);
  background:
    radial-gradient(circle at 84% 12%,rgba(207,174,114,.08),transparent 26%),
    radial-gradient(circle at 12% 88%,rgba(99,54,25,.10),transparent 30%),
    linear-gradient(145deg,var(--cinema) 0%,var(--cinema-2) 55%,#080604 100%) !important;
  border-top:1px solid var(--line);
}
.section.intro,.section.why,.section.tax,.section.about,.section.insights,.section.booking{position:relative;overflow:hidden}
.section.intro::before,.section.why::before,.section.tax::before,.section.about::before,.section.insights::before,.section.booking::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background:linear-gradient(115deg,transparent 0 72%,rgba(207,174,114,.035) 72% 72.2%,transparent 72.2%);
}
.section > *, .process > *{position:relative;z-index:1}
.section .kicker,.process .kicker{color:var(--gold)!important;letter-spacing:.24em}
.section h2,.process h2,.section h3,.process h3{color:var(--ivory)!important}
.section h2 i,.process h2 i{color:var(--gold-soft)!important}
.section p,.process p{color:var(--muted)!important}
.section p.big{color:rgba(244,234,216,.90)!important}
.section .fine,.asterisk{color:rgba(244,234,216,.48)!important}

/* Intro / strategy panels */
.twocol{align-items:start}
.twocol > div:last-child,.story{
  padding:34px 36px;border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  box-shadow:0 28px 80px rgba(0,0,0,.18);
}
.benefitgrid article,.taxgrid article,.insightgrid article,.steps > div,.credentials > div{
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
}
.benefitgrid article span,.taxgrid article b,.steps b,.insightgrid article > span{color:var(--gold)!important}
.benefitgrid article:hover,.taxgrid article:hover,.insightgrid article:hover{
  transform:translateY(-4px);border-color:rgba(207,174,114,.48)!important;background:rgba(207,174,114,.055)!important
}
.tax-note,.portfolio-more{
  border:1px solid rgba(207,174,114,.34)!important;
  background:rgba(207,174,114,.055)!important;
  color:rgba(244,234,216,.72)!important;
}
.tax-note strong,.portfolio-more strong{color:var(--gold-soft)!important}

/* Property gallery — same black/gold editorial frame as the villa */
.section.dark#objekte{background:linear-gradient(180deg,#070504,#100b07 52%,#070504)!important}
.headrow{border-bottom:1px solid var(--line);padding-bottom:42px;margin-bottom:48px}
.property{
  background:#0d0907!important;border:1px solid rgba(207,174,114,.22)!important;
  box-shadow:0 22px 65px rgba(0,0,0,.32)!important;overflow:hidden
}
.property img{filter:saturate(.88) contrast(1.04);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .6s ease}
.property:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.05)}
.property .pc{background:linear-gradient(180deg,#100b08,#090604)!important}
.property .pc span{color:var(--gold)!important}
.property .pc h3,.property .facts b{color:var(--ivory)!important}
.property small{color:rgba(244,234,216,.48)!important}

/* Process becomes a cinematic timeline */
.process{border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
.steps{gap:14px}
.steps > div{position:relative;overflow:hidden}
.steps > div::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent);opacity:.55}

/* Booking / CTA */
.booking{background:
  linear-gradient(90deg,rgba(7,5,3,.95),rgba(7,5,3,.80)),
  url('assets/villa-hero-redesign.png') center 62%/cover no-repeat!important;
}
.bookbox{border:1px solid rgba(207,174,114,.42)!important;background:rgba(8,6,4,.78)!important;backdrop-filter:blur(10px);box-shadow:0 30px 90px rgba(0,0,0,.35)!important}
.bookbox span{color:var(--gold)!important}.bookbox h3{color:var(--ivory)!important}.bookbox a{color:var(--gold-soft)!important}
.btn{background:var(--gold)!important;color:#0b0806!important;border:1px solid var(--gold)!important}
.btn:hover{background:var(--gold-soft)!important}

/* About page — same cinematic room, without changing homepage hero */
body:has(.section.about[style]){background:var(--cinema);color:var(--ivory)}
body:has(.section.about[style]) main{background:var(--cinema)}
body:has(.section.about[style]) .section.about{
  padding-top:190px!important;min-height:86vh!important;
  background:
    linear-gradient(90deg,rgba(8,6,4,.97) 0%,rgba(8,6,4,.88) 48%,rgba(8,6,4,.70) 100%),
    url('assets/villa-hero-redesign.png') center/cover no-repeat!important;
}
.signature{color:var(--gold)!important}
.credentials > div b{color:var(--gold-soft)!important}.credentials > div span{color:var(--muted)!important}

/* Legal pages: remove the unrelated beige look and keep premium readability */
.legal-page{
  min-height:78vh!important;color:var(--ivory)!important;
  background:
    radial-gradient(circle at 85% 8%,rgba(207,174,114,.09),transparent 24%),
    linear-gradient(145deg,#090604,#120d09 58%,#080604)!important;
}
.legal-content{max-width:1080px!important}
.legal-content h2{color:var(--ivory)!important}
.legal-copy{
  max-width:900px!important;padding:40px 42px!important;
  border:1px solid var(--line);background:rgba(255,255,255,.025);
  color:rgba(244,234,216,.72)!important
}
.legal-copy p{color:rgba(244,234,216,.72)!important}
.legal-copy strong{color:var(--gold-soft)!important}.legal-copy a{color:var(--gold)!important}
.legal-header{background:rgba(9,6,4,.94)!important;border-bottom:1px solid var(--line)!important}

/* Footer belongs to the same visual world */
footer{
  background:#070504!important;color:rgba(244,234,216,.66)!important;
  border-top:1px solid var(--line)!important
}
footer a,footer .linkbtn{color:rgba(244,234,216,.72)!important}footer b{color:var(--ivory)!important}
footer .mark{color:var(--gold)!important}

/* Cookie banner aligned to site */
.cookie{background:rgba(9,7,5,.96)!important;color:var(--ivory)!important;border:1px solid rgba(207,174,114,.36)!important;backdrop-filter:blur(16px)!important}
.cookie p{color:rgba(244,234,216,.68)!important}.cookie button{border-color:var(--gold)!important}.cookie .outline{color:var(--ivory)!important}

/* Mobile content — premium cards and breathing room; approved first screen untouched */
@media(max-width:900px){
  main > .section:not(.villa-hero),.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,.process{padding-top:72px!important;padding-bottom:72px!important}
  .twocol > div:last-child,.story{padding:24px 20px!important;margin-top:24px}
  .benefitgrid,.taxgrid,.insightgrid,.steps{gap:12px!important}
  .benefitgrid article,.taxgrid article,.insightgrid article,.steps > div,.credentials > div{padding:24px 20px!important}
  .headrow{padding-bottom:28px;margin-bottom:30px}
  .property{border-color:rgba(207,174,114,.28)!important}
  .booking{background:linear-gradient(180deg,rgba(7,5,3,.94),rgba(7,5,3,.90)),url('assets/villa-hero-redesign.png') center/cover no-repeat!important}
  .bookbox{margin-top:28px!important;padding:26px 20px!important}
  body:has(.section.about[style]) .section.about{padding-top:145px!important;padding-bottom:78px!important;min-height:auto!important}
  .legal-page{padding-top:76px!important}
  .legal-content{padding-top:68px!important}
  .legal-copy{padding:26px 20px!important;margin-top:30px!important}
  footer{gap:28px!important}
}

/* ======================================================================
   FINAL VILLA CONTINUITY SYSTEM
   The approved desktop/mobile first screen is intentionally untouched.
   Every following section and standalone page uses the clean villa scene.
   ====================================================================== */
main > .section:not(.villa-hero),
main > .process,
.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,
.process{
  position:relative;
  background:
    linear-gradient(110deg,rgba(7,5,3,.91),rgba(7,5,3,.76)),
    url('assets/villa-clean-bg.png') center center/cover no-repeat fixed!important;
  border-top:1px solid rgba(207,174,114,.22)!important;
}
/* vary the crop subtly so the long page feels like moving through one space */
.section.intro{background-position:center 45%!important}
.section.why{background-position:left center!important}
.section.tax{background-position:right center!important}
.section.dark#objekte{background:linear-gradient(110deg,rgba(7,5,3,.94),rgba(7,5,3,.80)),url('assets/villa-clean-bg.png') center 58%/cover no-repeat fixed!important}
.section.insights{background-position:center 68%!important}
.process{background-position:center 75%!important}
.section.booking,.booking{background:linear-gradient(100deg,rgba(7,5,3,.90),rgba(7,5,3,.67)),url('assets/villa-clean-bg.png') center 60%/cover no-repeat fixed!important}

/* Content sits on restrained glass surfaces instead of flat brown blocks */
.twocol > div:last-child,.story,.benefitgrid article,.taxgrid article,.insightgrid article,.steps > div,.bookbox{
  background:rgba(9,7,5,.64)!important;
  border:1px solid rgba(207,174,114,.28)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.headrow{background:rgba(9,7,5,.30);padding:28px 30px;border:1px solid rgba(207,174,114,.20)!important;backdrop-filter:blur(7px)}
.property{background:rgba(9,7,5,.78)!important;backdrop-filter:blur(8px)}
.property .pc{background:rgba(9,7,5,.86)!important}

/* Standalone About page uses the same clean, text-free villa */
body:has(.section.about[style]) .section.about{
  background:linear-gradient(100deg,rgba(7,5,3,.94) 0%,rgba(7,5,3,.80) 52%,rgba(7,5,3,.60) 100%),url('assets/villa-clean-bg.png') center center/cover no-repeat fixed!important;
}

/* Legal pages share the same villa world while retaining maximum readability */
.legal-page{
  background:linear-gradient(105deg,rgba(7,5,3,.95),rgba(7,5,3,.82)),url('assets/villa-clean-bg.png') center center/cover no-repeat fixed!important;
}
.legal-copy{background:rgba(9,7,5,.76)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}

/* Mobile: fixed backgrounds are unreliable in iOS Safari; same look without fixed attachment. */
@media(max-width:900px){
  main > .section:not(.villa-hero),main > .process,.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,.process,
  body:has(.section.about[style]) .section.about,.legal-page{
    background-attachment:scroll!important;
    background-size:cover!important;
  }
  .headrow{padding:22px 18px!important}
}

/* ======================================================================
   FINAL SEAMLESS VILLA SCROLL
   One persistent clean villa behind all content after the approved hero.
   No white/brown flashes between sections. Hero itself remains untouched.
   ====================================================================== */
html{background:#070504!important}
body{background:#070504!important;position:relative;isolation:isolate}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:url('assets/villa-clean-bg.png') center center/cover no-repeat;
  transform:translateZ(0);
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(110deg,rgba(7,5,3,.90),rgba(7,5,3,.70));
}
main{background:transparent!important}
main > .section:not(.villa-hero),main > .process,
.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,.process{
  background:rgba(7,5,3,.16)!important;
  background-image:none!important;
  background-attachment:initial!important;
  border-top:1px solid rgba(207,174,114,.18)!important;
}
.section.dark#objekte{background:rgba(7,5,3,.30)!important;background-image:none!important}
.section.booking,.booking{background:rgba(7,5,3,.18)!important;background-image:none!important}
body:has(.section.about[style]) .section.about{background:rgba(7,5,3,.18)!important;background-image:none!important}
.legal-page{background:rgba(7,5,3,.20)!important;background-image:none!important}
/* Prevent any browser paint gap during momentum scrolling */
section,.section,.process,footer{backface-visibility:hidden;-webkit-backface-visibility:hidden}
@media(max-width:900px){
  body::before{background-position:center center!important;background-size:cover!important}
  main > .section:not(.villa-hero),main > .process,.section.intro,.section.why,.section.tax,.section.dark,.section.about,.section.insights,.section.booking,.process,
  body:has(.section.about[style]) .section.about,.legal-page{background-image:none!important;background-attachment:initial!important}
}
