/* Casa Codasi 2026 – graphische Sanierung
   Leitidee: authentisches Walliser Chalet + ruhige moderne Redaktion.
   Keine externen Fonts, keine Tracking-Abhängigkeiten. */
:root{
  --paper:#f5f0e8;
  --canvas:#faf7f2;
  --white:#fffdf9;
  --ink:#2b2926;
  --muted:#6b625b;
  --cognac:#a66a32;
  --cognac-dark:#825027;
  --terracotta:#b4774b;
  --wood:#4a3527;
  --wood-deep:#33251d;
  --olive:#7c8066;
  --line:rgba(74,53,39,.16);
  --shadow:0 18px 48px rgba(60,42,29,.10);
  --max:1480px;
  --header-h:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
a{color:var(--cognac-dark);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible{outline:3px solid var(--cognac);outline-offset:3px}
button{font:inherit}
section[id]{scroll-margin-top:0}
.skip-link{position:fixed;left:1rem;top:-6rem;z-index:1000;background:var(--white);color:var(--ink);padding:.75rem 1rem;border:1px solid var(--line);border-radius:4px}.skip-link:focus{top:1rem}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Header / Bildmarke */
.site-header{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.965);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.site-header__inner{max-width:var(--max);min-height:var(--header-h);margin:0 auto;padding:2px clamp(18px,3vw,44px);display:grid;grid-template-columns:minmax(130px,185px) 1fr auto;align-items:center;gap:clamp(16px,2.4vw,36px)}
.brand{display:flex;align-items:center;min-width:0;color:var(--ink);text-decoration:none}
.brand__sign{width:clamp(132px,9.6vw,158px);height:auto;display:block;filter:drop-shadow(0 3px 6px rgba(42,29,19,.16))}
.nav{justify-self:center}
.nav__list{display:flex;align-items:center;justify-content:center;gap:clamp(.55rem,1.15vw,1.25rem);list-style:none;margin:0;padding:0}
.nav__link{display:block;padding:.7rem .2rem;color:var(--ink);font-size:clamp(.7rem,.72vw,.82rem);font-weight:650;letter-spacing:.035em;text-transform:uppercase;text-decoration:none;white-space:nowrap;position:relative}
.nav__link::after{content:"";position:absolute;left:0;right:100%;bottom:.38rem;height:1px;background:var(--cognac);transition:right .2s ease}
.nav__link:hover::after,.nav__link:focus-visible::after{right:0}
.header-tools{display:flex;align-items:center;justify-content:flex-end}
.lang{display:flex;align-items:center;gap:.38rem;font-size:.78rem;letter-spacing:.06em}
.lang a{color:var(--muted);text-decoration:none;font-weight:650}.lang a[aria-current="page"]{color:var(--cognac-dark)}.lang span{color:#aaa}
.burger{display:none;border:0;background:transparent;width:48px;height:48px;align-items:center;justify-content:center;cursor:pointer}
.burger__patty,.burger__patty::before,.burger__patty::after{display:block;width:28px;height:2px;background:var(--wood);position:relative;transition:transform .24s ease,top .24s ease}.burger__patty::before,.burger__patty::after{content:"";position:absolute;left:0}.burger__patty::before{top:-8px}.burger__patty::after{top:8px}.burger[aria-expanded="true"] .burger__patty{background:transparent}.burger[aria-expanded="true"] .burger__patty::before{top:0;transform:rotate(45deg)}.burger[aria-expanded="true"] .burger__patty::after{top:0;transform:rotate(-45deg)}

/* Hero / saisonale Diashow */
.hero{position:relative;background:var(--wood-deep)}
.hero__slider{height:clamp(470px,50vw,720px)}
.slider{position:relative;overflow:hidden;width:100%;background:#ddd}
.slider figure{display:flex;margin:0;height:100%;transform:translateX(0);transition:transform .75s cubic-bezier(.22,.61,.36,1)}
.slider figure img{flex:0 0 100%;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block}
.hero__slider figure img{height:100%;aspect-ratio:auto;object-position:center 52%}
.hero__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(39,29,23,.60) 0%,rgba(39,29,23,.30) 36%,rgba(39,29,23,.06) 68%,rgba(39,29,23,.02) 100%);pointer-events:none}
.hero__content{position:absolute;z-index:2;left:max(24px,calc((100% - var(--max))/2 + 44px));top:50%;transform:translateY(-50%);width:min(620px,calc(100% - 48px));color:white;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.eyebrow{margin:0 0 .9rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#f1d9ba}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.45rem,4.35vw,4.55rem);line-height:1.02;font-weight:400;letter-spacing:-.022em;margin:0 0 1.15rem}
.hero__lead{font-size:clamp(1.05rem,1.55vw,1.35rem);line-height:1.5;max-width:590px;margin:0 0 1.65rem}
.button{display:inline-flex;align-items:center;min-height:46px;padding:.75rem 1.1rem;border:1px solid rgba(255,255,255,.75);background:rgba(74,53,39,.62);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;font-weight:750;backdrop-filter:blur(5px);transition:background .2s ease,border-color .2s ease}.button:hover{background:var(--cognac-dark);border-color:var(--cognac-dark)}
.slider__chrome{position:absolute;right:max(18px,calc((100% - var(--max))/2 + 44px));bottom:24px;z-index:4;display:flex;align-items:center;gap:.55rem}
.slider__counter{color:#fff;background:rgba(42,31,23,.48);border:1px solid rgba(255,255,255,.35);padding:.42rem .65rem;font-size:.72rem;line-height:1;backdrop-filter:blur(4px)}
.slider__toggle{border:1px solid rgba(255,255,255,.55);background:rgba(42,31,23,.52);color:#fff;min-height:34px;padding:.42rem .65rem;display:flex;align-items:center;gap:.42rem;cursor:pointer;font-size:.72rem;line-height:1;backdrop-filter:blur(4px);border-radius:0}.slider__toggle:hover{background:rgba(42,31,23,.72)}
.slider__toggle-icon{position:relative;display:inline-block;width:.75rem;height:.75rem;flex:0 0 .75rem}.slider__toggle[data-state="playing"] .slider__toggle-icon::before,.slider__toggle[data-state="playing"] .slider__toggle-icon::after{content:"";position:absolute;top:.04rem;bottom:.04rem;width:.19rem;background:currentColor}.slider__toggle[data-state="playing"] .slider__toggle-icon::before{left:.11rem}.slider__toggle[data-state="playing"] .slider__toggle-icon::after{right:.11rem}.slider__toggle[data-state="paused"] .slider__toggle-icon::before{content:"";position:absolute;left:.16rem;top:.03rem;border-top:.34rem solid transparent;border-bottom:.34rem solid transparent;border-left:.52rem solid currentColor}
.season-switcher{position:absolute;z-index:5;left:max(24px,calc((100% - var(--max))/2 + 44px));bottom:22px;display:flex;gap:.42rem;align-items:center;padding:.48rem .72rem;background:rgba(250,247,242,.88);border:1px solid rgba(255,255,255,.36);backdrop-filter:blur(5px);font-size:.74rem;box-shadow:0 5px 20px rgba(44,32,23,.08)}.season-switcher a{color:var(--muted);text-decoration:none}.season-switcher a[aria-current="page"]{color:var(--cognac-dark);font-weight:750}.season-switcher span{color:#aaa}

/* Redaktionelle Inhaltssektionen */
.panel{max-width:var(--max);margin:0 auto;padding:clamp(62px,7vw,108px) clamp(20px,3vw,44px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:clamp(38px,6vw,92px);background:transparent;min-height:0;overflow:visible}
#apartment-first,#location,#links{background:var(--canvas);max-width:none;padding-left:max(20px,calc((100% - var(--max))/2 + 44px));padding-right:max(20px,calc((100% - var(--max))/2 + 44px))}
#welcome{display:block;max-width:none;background:var(--paper);padding-top:clamp(58px,6vw,90px);padding-bottom:clamp(58px,6vw,90px)}
#welcome .panel__wrapper{max-width:1080px;margin:0 auto;padding:0 clamp(20px,3vw,44px)}
#welcome .panel__photos{display:none}
#welcome .panel__content_text{max-width:920px;margin:0 auto;text-align:left}
#welcome .panel__headline{font-size:clamp(1.8rem,2.75vw,2.75rem);max-width:760px}
.panel__wrapper{min-width:0;padding:0}
.panel__content_text{max-width:640px;padding:0;background:transparent;box-shadow:none}
.panel__headline{font-family:Georgia,"Times New Roman",serif;color:var(--wood);font-weight:400;font-size:clamp(1.65rem,2.15vw,2.3rem);line-height:1.14;letter-spacing:-.014em;margin:0 0 .95rem}
.panel p{margin:0 0 1.12rem;font-size:clamp(.98rem,1.04vw,1.08rem);color:#443e39}.panel p:last-child{margin-bottom:0}
.panel strong{color:var(--ink)}
.panel__block{height:2px;width:58px;background:var(--cognac);margin:0 0 1.65rem}
.panel__photos{min-width:0;margin:0;max-width:none;text-align:left}
.panel__photos>.slider,.panel__photos>img{box-shadow:var(--shadow)}
.panel__photos>.slider{aspect-ratio:4/3}
.panel__photos>.slider figure img{height:100%}
.panel__photos>.slider .slider__toggle{right:12px;bottom:12px;position:absolute;z-index:3}
.mail-link{color:var(--cognac-dark);font-weight:700;text-decoration:none}
.page-link{display:inline-block;color:var(--cognac-dark);text-decoration:none;padding:.12rem 0;border-bottom:1px solid rgba(166,106,50,.28)}.page-link:hover{border-color:var(--cognac)}
.grey-link{color:inherit;text-decoration:none}

/* alternating composition */
#apartment-top .panel__photos,#apartment-ground .panel__photos,#activities .panel__photos{order:1}
#apartment-top .panel__wrapper,#apartment-ground .panel__wrapper,#activities .panel__wrapper{order:2}
#apartment-first .panel__wrapper,#location .panel__wrapper,#links .panel__wrapper,#contact .panel__wrapper{order:1}
#apartment-first .panel__photos,#location .panel__photos,#links .panel__photos,#contact .panel__photos{order:2}
#contact .panel__photos>img{max-height:520px;width:100%;object-fit:cover;object-position:center}

/* Galerie */
.panel__gallery{max-width:var(--max);margin:0 auto;padding:clamp(70px,7vw,110px) clamp(20px,3vw,44px)}
.panel__gallery .panel__headline{max-width:880px;margin:0 0 2rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,2.15vw,2.3rem);font-weight:400;color:var(--wood);line-height:1.17}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}.gallery-grid tbody,.gallery-grid tr{display:contents}.gallery-grid td{display:block;padding:0;border:0;overflow:hidden;background:#ddd}.gallery-grid td[colspan="4"]{grid-column:1/-1}.gallery-grid img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s ease}.gallery-grid td[colspan="4"] img{aspect-ratio:3/1;max-height:520px}.gallery-grid td:hover img{transform:scale(1.015)}

/* Footer */
.site-footer{background:var(--wood-deep);color:#efe7dc;border-top:1px solid rgba(255,255,255,.08)}
.site-footer__inner{max-width:var(--max);margin:0 auto;padding:42px clamp(20px,3vw,44px);display:grid;grid-template-columns:1.3fr repeat(3,1fr) .8fr;gap:28px;font-size:.82rem;line-height:1.55}
.site-footer strong{color:#fff;font-weight:650}.site-footer a{color:#efe7dc;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer__brand img{width:165px;height:auto;filter:drop-shadow(0 3px 7px rgba(0,0,0,.2));margin-bottom:.65rem}.site-footer__brand p{margin:0;color:#cfc1b4;font-family:Georgia,"Times New Roman",serif;font-style:italic}.site-footer__links{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.site-footer__links button{border:0;background:none;color:#efe7dc;padding:0;cursor:pointer}

@media (max-width:1180px){
  :root{--header-h:88px}
  .site-header__inner{min-height:var(--header-h);grid-template-columns:1fr auto auto;padding-block:2px}
  .brand__sign{width:148px}
  .burger{display:flex;order:3}
  .header-tools{order:2}
  .nav{position:absolute;top:100%;left:0;right:0;background:rgba(250,247,242,.99);border-bottom:1px solid var(--line);box-shadow:0 16px 34px rgba(52,37,26,.08);transform:translateY(-130%);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .2s ease}
  .nav.nav--active{transform:translateY(0);opacity:1;pointer-events:auto}
  .nav__list{display:grid;grid-template-columns:repeat(4,1fr);max-width:var(--max);margin:0 auto;padding:18px clamp(20px,3vw,44px);gap:0 1.2rem}
  .nav__link{padding:.65rem 0}
  .hero__content{left:clamp(24px,5vw,60px)}
  .slider__chrome{right:clamp(18px,4vw,44px)}
  .season-switcher{left:clamp(24px,5vw,60px)}
  .site-footer__inner{grid-template-columns:1.2fr 1fr 1fr;}.site-footer__links{grid-column:2/4;flex-direction:row;gap:1rem}
}
@media (max-width:820px){
  .nav__list{grid-template-columns:repeat(2,1fr)}
  .hero__slider{height:clamp(500px,78vw,660px)}
  .hero__veil{background:linear-gradient(180deg,rgba(39,29,23,.18) 0%,rgba(39,29,23,.24) 35%,rgba(39,29,23,.68) 100%)}
  .hero__content{top:auto;bottom:88px;transform:none;width:calc(100% - 48px)}
  .hero h1{font-size:clamp(2.45rem,8.8vw,3.9rem)}
  .season-switcher{bottom:20px}.slider__chrome{bottom:20px}
  .panel,#apartment-first,#location,#links{max-width:none;padding:56px clamp(20px,5vw,42px);grid-template-columns:1fr;gap:30px}
  .panel__content_text{max-width:none}
  .panel__photos,.panel__wrapper{order:initial!important}
  #apartment-top .panel__photos,#apartment-ground .panel__photos,#activities .panel__photos{order:1!important}
  #apartment-top .panel__wrapper,#apartment-ground .panel__wrapper,#activities .panel__wrapper{order:2!important}
  .panel__photos>.slider{aspect-ratio:4/3}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid td[colspan="4"]{grid-column:1/-1}.gallery-grid td[colspan="4"] img{aspect-ratio:16/7}
  .site-footer__inner{grid-template-columns:1fr 1fr}.site-footer__brand{grid-column:1/-1}.site-footer__links{grid-column:1/-1}
}
@media (max-width:560px){
  :root{--header-h:76px}
  .site-header__inner{padding:2px 14px;gap:8px}.brand__sign{width:126px}.lang{font-size:.72rem;gap:.25rem}.burger{width:42px;height:42px}
  .nav__list{grid-template-columns:1fr;padding:12px 20px}.nav__link{font-size:.78rem}
  .hero__slider{height:600px}.hero__content{left:20px;width:calc(100% - 40px);bottom:116px}.hero__lead{font-size:1rem}.button{font-size:.7rem}
  .season-switcher{left:20px;right:auto;bottom:18px;font-size:.7rem;max-width:calc(100% - 135px);overflow:hidden;white-space:nowrap}.slider__chrome{right:16px;bottom:18px}.slider__counter{display:none}.slider__toggle-text{display:none}.slider__toggle{width:36px;justify-content:center;padding:.42rem}
  #welcome{padding:48px 0}.panel,#apartment-first,#location,#links{padding:48px 20px}.panel__headline{font-size:1.78rem}.panel p{font-size:.98rem}
  .gallery-grid{grid-template-columns:1fr;gap:9px}.gallery-grid td[colspan="4"]{grid-column:auto}.gallery-grid td[colspan="4"] img{aspect-ratio:4/3}.gallery-grid img{aspect-ratio:4/3}
  .site-footer__inner{grid-template-columns:1fr;padding:34px 20px}.site-footer__brand,.site-footer__links{grid-column:auto}.site-footer__links{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav,.burger__patty,.burger__patty::before,.burger__patty::after,.slider figure,.gallery-grid img{transition:none!important}}
@media print{.site-header,.hero,.site-footer,.slider__toggle,.skip-link,.season-switcher{display:none!important}body{background:#fff;color:#111}.panel,#apartment-first,#location,#links{display:block;max-width:none;padding:1rem 0}.panel__content_text{max-width:none}.panel__photos{max-width:680px;margin:1rem 0}.slider figure{transform:none!important}.slider figure img{display:none}.slider figure img:first-child{display:block}.panel__gallery{padding:1rem 0}.gallery-grid{grid-template-columns:repeat(3,1fr)}a{color:#111;text-decoration:underline}}

/* --------------------------------------------------------------------------
   V5 – redaktionelle Feinabstimmung, ruhige Bildbedienung und Lightbox
   -------------------------------------------------------------------------- */
.hero h1{font-size:clamp(2.15rem,4.2vw,3.85rem);max-width:880px;line-height:1.04}
.hero__lead{font-size:clamp(1rem,1.35vw,1.24rem);max-width:650px;margin-bottom:.78rem}
.hero__season-note{max-width:650px;margin:0 0 1.45rem;color:rgba(255,255,255,.88);font-size:clamp(.88rem,1vw,1rem);line-height:1.5}
.button--quiet{min-height:36px;padding:.5rem .72rem;border-color:rgba(255,255,255,.48);background:rgba(42,31,23,.42);font-size:.7rem;letter-spacing:.055em;text-transform:none;font-weight:650}
.button--quiet:hover{background:rgba(42,31,23,.68);border-color:rgba(255,255,255,.72)}

/* Sämtliche Bedienelemente auf Bildern folgen einer Sprache. */
.slider__chrome{gap:.38rem}
.slider__counter,.slider__toggle,.slider__gallery{border:1px solid rgba(255,255,255,.42);background:rgba(42,31,23,.42);color:#fff;min-height:34px;padding:.42rem .62rem;font-size:.7rem;line-height:1;backdrop-filter:blur(5px);border-radius:0}
.slider__toggle,.slider__gallery{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer}
.slider__toggle:hover,.slider__gallery:hover{background:rgba(42,31,23,.68);border-color:rgba(255,255,255,.66)}
.slider__gallery-icon{position:relative;width:.86rem;height:.68rem;display:inline-block;flex:0 0 .86rem;border:1px solid currentColor}
.slider__gallery-icon::before{content:"";position:absolute;left:-.25rem;top:-.22rem;width:.72rem;height:.55rem;border:1px solid currentColor;background:transparent}
.slider figure.is-gallery-trigger{cursor:zoom-in}
.panel__photos>.slider .slider__toggle{position:static;right:auto;bottom:auto;z-index:auto}
.panel__photos>.slider .slider__chrome{right:12px;bottom:12px}

/* Faktenzeilen der Wohnungen – bewusst keine Karten oder Piktogramm-Wolke. */
.apartment-facts{display:flex;flex-wrap:wrap;gap:.35rem .7rem;list-style:none;margin:.1rem 0 1.2rem;padding:0;color:var(--muted);font-size:.78rem;letter-spacing:.02em}
.apartment-facts li{display:flex;align-items:center;white-space:nowrap}
.apartment-facts li+li::before{content:"·";margin-right:.7rem;color:var(--cognac)}
.apartment-facts+.panel__block{margin-top:0}

/* Anfrage nach den drei Wohnungen. */
.inquiry-strip{background:var(--wood);color:#f8f2ea;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.inquiry-strip__inner{max-width:var(--max);margin:0 auto;padding:24px clamp(20px,3vw,44px);display:flex;align-items:center;justify-content:space-between;gap:24px}
.inquiry-strip p{margin:0;font-size:.94rem;color:#f5eee5}.inquiry-strip strong{color:#fff;font-weight:700}
.inquiry-strip a{flex:0 0 auto;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45);padding:.2rem 0;font-size:.82rem;font-weight:650}.inquiry-strip a:hover{border-color:#fff}

/* Lange Linklisten und Gut-zu-wissen-Inhalte bleiben offen und linear. */
.link-row{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;margin-top:1.5rem!important}
.link-row .page-link{font-size:.84rem}
#links,#contact{align-items:center}
#links .panel__photos,#contact .panel__photos{align-self:center}
.info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}
.info-list p{padding:.85rem 0;margin:0;border-top:1px solid var(--line);font-size:.94rem}
.info-list p:first-child,.info-list p:nth-child(2){border-top:0;padding-top:0}

/* Kompakte Galerie am Seitenende. */
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:1.7rem}
.gallery-heading .panel__headline{margin:0 0 .45rem}
.gallery-heading p{margin:0;color:var(--muted);font-size:.98rem}
.gallery-all-button{border:0;border-bottom:1px solid rgba(130,80,39,.4);background:transparent;color:var(--cognac-dark);padding:.4rem 0;cursor:pointer;font-size:.82rem;font-weight:650;white-space:nowrap}
.gallery-all-button:hover{border-bottom-color:var(--cognac-dark)}
.gallery-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.gallery-preview__item{display:block;border:0;padding:0;margin:0;background:#ddd;overflow:hidden;cursor:zoom-in;min-width:0}
.gallery-preview__item--wide{grid-column:span 2}
.gallery-preview img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .32s ease}
.gallery-preview__item--wide img{aspect-ratio:2/1}
.gallery-preview__item:hover img{transform:scale(1.018)}

/* Lightbox / Fotostrecke */
body.lightbox-open{overflow:hidden}
.lightbox[hidden]{display:none}
.lightbox{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;color:#f8f2ea}
.lightbox__backdrop{position:absolute;inset:0;background:rgba(30,22,17,.94);backdrop-filter:blur(8px)}
.lightbox__dialog{position:relative;z-index:1;width:min(1480px,100%);height:min(94vh,980px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:rgba(51,37,29,.94);border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 90px rgba(0,0,0,.45)}
.lightbox__topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.lightbox__title{font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;font-weight:400;margin:0;color:#fff}.lightbox__counter{margin:.15rem 0 0;color:#cfc1b4;font-size:.72rem}
.lightbox__close{width:38px;height:38px;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font-size:1.65rem;line-height:1;cursor:pointer}.lightbox__close:hover{background:rgba(255,255,255,.08)}
.lightbox__stage{min-height:0;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:8px;padding:12px}
.lightbox__figure{min-width:0;min-height:0;height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lightbox__image{display:block;max-width:100%;max-height:calc(100% - 34px);width:auto;height:auto;object-fit:contain;box-shadow:0 14px 50px rgba(0,0,0,.28)}
.lightbox__caption{min-height:28px;padding:.55rem .5rem 0;color:#d8ccc1;font-size:.78rem;text-align:center}
.lightbox__arrow{width:44px;height:54px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.12);color:#fff;cursor:pointer;font-family:Georgia,"Times New Roman",serif;font-size:2.1rem;line-height:1}.lightbox__arrow:hover{background:rgba(255,255,255,.08)}
.lightbox__thumbs{display:flex;gap:6px;overflow-x:auto;padding:10px 12px 12px;border-top:1px solid rgba(255,255,255,.1);scrollbar-width:thin}
.lightbox__thumb{flex:0 0 82px;height:60px;padding:0;border:1px solid transparent;background:#211812;opacity:.55;cursor:pointer}.lightbox__thumb.is-current{opacity:1;border-color:rgba(255,255,255,.78)}.lightbox__thumb img{width:100%;height:100%;display:block;object-fit:cover}

@media (max-width:820px){
  .hero h1{font-size:clamp(2rem,7.6vw,3.1rem)}
  .hero__season-note{max-width:560px}
  .inquiry-strip__inner{align-items:flex-start;flex-direction:column;gap:8px}
  .gallery-heading{align-items:flex-start;flex-direction:column;gap:10px}
  .gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-preview__item--wide{grid-column:span 2}
  .lightbox{padding:0}.lightbox__dialog{width:100%;height:100%;border:0}.lightbox__stage{grid-template-columns:42px minmax(0,1fr) 42px;padding:8px}.lightbox__arrow{width:38px;height:48px}.lightbox__thumb{flex-basis:70px;height:52px}
}
@media (max-width:560px){
  .hero__content{bottom:126px}.hero__lead{font-size:.96rem}.hero__season-note{font-size:.82rem;margin-bottom:1rem}
  .slider__gallery span:last-child,.slider__toggle-text{display:none}.slider__gallery,.slider__toggle{width:36px;justify-content:center;padding:.42rem}.slider__counter{display:none}
  .apartment-facts{gap:.28rem .52rem;font-size:.72rem}.apartment-facts li+li::before{margin-right:.52rem}
  .info-list{grid-template-columns:1fr}.info-list p:nth-child(2){border-top:1px solid var(--line);padding-top:.85rem}
  .gallery-preview{grid-template-columns:1fr}.gallery-preview__item--wide{grid-column:auto}.gallery-preview__item--wide img{aspect-ratio:4/3}
  .lightbox__topbar{padding:10px 12px}.lightbox__title{font-size:.92rem}.lightbox__stage{grid-template-columns:34px minmax(0,1fr) 34px;padding:4px}.lightbox__arrow{width:32px;height:44px;font-size:1.7rem}.lightbox__caption{font-size:.7rem}.lightbox__thumb{flex-basis:62px;height:46px}
}
@media (prefers-reduced-motion:reduce){.gallery-preview img{transition:none!important}}
@media print{.inquiry-strip,.lightbox,.slider__gallery,.gallery-all-button{display:none!important}}

/* V5.1 – saisonale Hero-Kalibrierung
   Sommer: heller/luftiger; Winter: klarer und neutraler. */
.season-summer .hero__veil{
  background:linear-gradient(90deg,rgba(39,29,23,.44) 0%,rgba(39,29,23,.18) 36%,rgba(39,29,23,.025) 68%,rgba(39,29,23,0) 100%);
}
.season-winter .hero__veil{
  background:linear-gradient(90deg,rgba(39,29,23,.48) 0%,rgba(39,29,23,.22) 36%,rgba(39,29,23,.035) 68%,rgba(39,29,23,0) 100%);
}
@media (max-width:820px){
  .season-summer .hero__veil{background:linear-gradient(180deg,rgba(39,29,23,.10) 0%,rgba(39,29,23,.15) 38%,rgba(39,29,23,.58) 100%)}
  .season-winter .hero__veil{background:linear-gradient(180deg,rgba(39,29,23,.12) 0%,rgba(39,29,23,.17) 38%,rgba(39,29,23,.61) 100%)}
}


/* V5.4 – Proportionen, kompakte Übersichtsseite und Detailseiten */
/* Die Bildmarke erhält etwas mehr optische Luft zur unteren Headerlinie, ohne den Header aufzublähen. */
.brand__sign{transform:translateY(-4px)}

/* Präzises Scrollziel: Überschrift statt Oberkante der ganzen Sektion. */
#apartment-top-title{scroll-margin-top:calc(var(--header-h) + 22px)}

/* Übersicht: Bild dominiert, Text bleibt bewusst knapp. */
#apartment-top,#apartment-first,#apartment-ground{padding-top:clamp(54px,5.2vw,78px);padding-bottom:clamp(54px,5.2vw,78px)}
.detail-link{font-weight:650;font-size:.88rem}
.info-list--summary{margin-bottom:.9rem}
.info-list--summary p{font-size:.9rem;line-height:1.52}

/* Eigenständige Inhalts-/Wohnungsseiten */
.detail-main{max-width:var(--max);margin:0 auto;padding:clamp(36px,4vw,58px) clamp(20px,3vw,44px) clamp(72px,7vw,110px)}
.detail-breadcrumb{display:flex;flex-wrap:wrap;gap:.45rem;color:var(--muted);font-size:.76rem;margin:0 0 clamp(34px,4vw,56px)}
.detail-breadcrumb a{color:var(--cognac-dark);text-decoration:none}.detail-breadcrumb a:hover{text-decoration:underline}
.detail-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(44px,6vw,92px);align-items:center}
.detail-intro__copy{max-width:620px}
.detail-eyebrow{margin:0 0 .65rem!important;color:var(--cognac-dark)!important;font-size:.76rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.detail-intro h1{font-family:Georgia,"Times New Roman",serif;color:var(--wood);font-weight:400;font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.08;letter-spacing:-.018em;margin:0 0 1rem}
.detail-facts{margin-bottom:1.2rem}
.detail-lead{font-size:clamp(1rem,1.12vw,1.12rem)!important;line-height:1.68}
.detail-intro__media{min-width:0}.detail-intro__media>.slider{aspect-ratio:4/3;box-shadow:var(--shadow)}.detail-intro__media>.slider figure img{height:100%}
.detail-content{margin-top:clamp(58px,7vw,100px);padding-top:clamp(46px,5vw,72px);border-top:1px solid var(--line)}
.detail-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(44px,6vw,92px);row-gap:0}
.detail-section{padding:1.2rem 0;border-top:1px solid var(--line)}.detail-section:nth-child(-n+2){border-top:0;padding-top:0}
.detail-section h2{font-family:Georgia,"Times New Roman",serif;color:var(--wood);font-size:clamp(1.25rem,1.5vw,1.55rem);font-weight:400;line-height:1.2;margin:0 0 .5rem}
.detail-section p{margin:0;color:#443e39;font-size:.98rem;line-height:1.67}
.detail-links{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:2rem}
.detail-cta{margin-top:clamp(56px,6vw,86px);padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:28px}
.detail-cta p{margin:0;color:#443e39}.detail-cta>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem 1.4rem}

@media (max-width:820px){
  .brand__sign{transform:translateY(-3px)}
  #apartment-top-title{scroll-margin-top:calc(var(--header-h) + 16px)}
  .detail-main{padding-top:28px}
  .detail-intro{grid-template-columns:1fr;gap:28px}.detail-intro__copy{max-width:none}.detail-intro__media{order:-1}
  .detail-sections{grid-template-columns:1fr}.detail-section,.detail-section:nth-child(-n+2){border-top:1px solid var(--line);padding:1rem 0}.detail-section:first-child{border-top:0;padding-top:0}
  .detail-cta{align-items:flex-start;flex-direction:column}.detail-cta>div{justify-content:flex-start}
}
@media (max-width:560px){
  .brand__sign{transform:translateY(-2px)}
  #apartment-top,#apartment-first,#apartment-ground{padding-top:44px;padding-bottom:44px}
  .detail-main{padding-left:20px;padding-right:20px}.detail-breadcrumb{margin-bottom:28px}.detail-intro h1{font-size:2rem}
}


/* V6 – Abnahmefassung: Willkommen wieder linksbündig; mehrsprachige Detailseiten und Prospekte. */
#prospect-link{white-space:nowrap}

/* V7 - Bild- und Linkbereinigung nach Abnahmefeedback */
.site-footer__copyright{grid-column:1/-1;border-top:1px solid rgba(74,53,39,.14);padding-top:.9rem;margin-top:.2rem;font-size:.72rem;color:#766b62;letter-spacing:.01em}

.whatsapp-link{display:inline;color:var(--cognac-dark);font-weight:600;text-decoration:none}.whatsapp-link:hover,.whatsapp-link:focus-visible{text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:1px}
