@font-face{font-family:"Manrope";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/manrope-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 600;font-display:swap;src:url("../fonts/manrope-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500 600;font-display:swap;src:url("../fonts/playfair-display-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500 600;font-display:swap;src:url("../fonts/playfair-display-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/playfair-display-italic-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:500;font-display:swap;src:url("../fonts/playfair-display-italic-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--sage:#b7ccb7;--sage-dark:#4e5a4e;--gold:#d6ab69;--ink:#1d2620;--cream:#f7f4ed;--white:#fff;--serif:"Playfair Display",Georgia,serif;--sans:"Manrope","Helvetica Neue",Arial,sans-serif;--wrap:min(1180px,calc(100% - 40px));--space:clamp(5rem,10vw,9rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:1.05rem;line-height:1.7}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08}h1{font-size:clamp(3.7rem,10vw,8.2rem);letter-spacing:-.045em}h2{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:-.035em}h3{font-size:clamp(1.55rem,3vw,2.2rem)}em{font-weight:500}.wrap{width:var(--wrap);margin-inline:auto}.section{padding-block:var(--space)}.skip-link{position:fixed;top:-100px;left:1rem;z-index:1000;background:var(--ink);color:white;padding:.75rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:linear-gradient(to bottom,rgba(18,26,21,.58),transparent);color:white;transition:.3s}.site-header.scrolled,.site-header:has(.site-nav[aria-hidden="false"]){background:rgba(247,244,237,.96);color:var(--ink);box-shadow:0 1px 0 rgba(29,38,32,.1)}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;transition:.3s}.scrolled .header-inner{height:72px}.wordmark{text-decoration:none;font-family:var(--serif);font-size:1.65rem;letter-spacing:.18em;line-height:1}.wordmark span{display:block;font-family:var(--sans);font-size:.55rem;letter-spacing:.12em;margin-top:.45rem}.site-nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.3rem)}.site-nav>a:not(.button){text-decoration:none;font-size:.88rem}.site-nav>a[aria-current]{border-bottom:1px solid var(--gold)}.menu-toggle{display:none;background:none;border:0;color:inherit;padding:.6rem}.menu-toggle span{display:block;width:26px;height:1px;background:currentColor;margin:7px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:.8rem 1.45rem;background:var(--ink);border:1px solid var(--ink);color:#fff;text-decoration:none;font-size:.82rem;letter-spacing:.05em;transition:.25s}.button:hover{background:var(--gold);border-color:var(--gold);color:var(--ink);transform:translateY(-2px)}.button-small{min-height:42px;padding:.55rem 1rem}.button-outline{background:transparent;color:var(--ink)}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:.15rem;font-size:.9rem}.text-link span{color:var(--gold);margin-left:.4rem}.text-link.light{color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:700;color:var(--sage-dark);margin-bottom:1.4rem}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;color:#fff;padding:10rem 0 5rem;background:#28362d}.hero-media{position:absolute!important;inset:0;height:100%!important;border:0!important;background:#536557!important;color:rgba(255,255,255,.65)!important}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,18,.78),rgba(15,23,18,.12)),linear-gradient(0deg,rgba(15,23,18,.6),transparent 50%)}.hero-content{position:relative;z-index:2}.hero-brand{letter-spacing:.34em;font-size:.8rem}.hero h1{max-width:850px;margin-bottom:1rem}.hero-lead{font-size:clamp(1.2rem,2vw,1.6rem);margin-bottom:.4rem}.hero-content>p:not(.hero-brand){max-width:720px}.actions{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;margin-top:2rem}.split,.wide-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:center}.copy p{max-width:570px}.media-placeholder{position:relative;min-height:310px;background:linear-gradient(145deg,#d9dfd4,#aabca9);border:1px solid rgba(29,38,32,.14);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--sage-dark);overflow:hidden}.media-placeholder:after{content:"";position:absolute;width:65%;aspect-ratio:1;border:1px solid rgba(255,255,255,.38);border-radius:50%}.media-placeholder span,.media-placeholder small{position:relative;z-index:1}.media-placeholder span{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem}.media-placeholder small{margin-top:.5rem}.portrait{min-height:660px}.sage{background:var(--sage);color:var(--sage-dark)}.large-list{font-family:var(--serif);font-size:1.55rem}.song-list{list-style:none;padding:0;margin:2rem 0;border-top:1px solid rgba(78,90,78,.25)}.song-list li{padding:.55rem 0;border-bottom:1px solid rgba(78,90,78,.25)}.note{display:block;margin-top:.7rem}.section-head{max-width:840px;margin-bottom:3rem}.section-head.narrow{max-width:760px}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.video-item{position:relative;color:white;text-decoration:none}.video-item .media-placeholder{aspect-ratio:3/4}.video-item .play{position:absolute;inset:50% auto auto 50%;translate:-50% -50%;width:58px;height:58px;border:1px solid white;border-radius:50%;display:grid;place-items:center;padding-left:3px}.video-item strong{position:absolute;bottom:1.5rem;left:1.5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em}.center{text-align:center;margin-top:2.5rem}.occasions{background:#fff}.occasion-list{border-top:1px solid #cfd4cd}.occasion{display:grid;grid-template-columns:42% 1fr;gap:clamp(2rem,6vw,6rem);padding:2rem 0;border-bottom:1px solid #cfd4cd;align-items:center}.occasion:nth-child(even){grid-template-columns:1fr 42%}.occasion:nth-child(even) .media-placeholder{order:2}.occasion .media-placeholder{min-height:320px}.occasion span,.value span{color:var(--gold);font-size:.72rem;letter-spacing:.14em}.occasion h3{font-size:clamp(2rem,4vw,3.4rem);margin:.5rem 0}.statement{text-align:center;padding-top:var(--space)}.statement h2{font-size:clamp(3.5rem,8vw,7rem)}.split-media{display:grid;grid-template-columns:1fr 1fr}.split-media>.media-placeholder{min-height:850px;border:0}.split-copy{padding:clamp(4rem,9vw,9rem);background:var(--cream);display:flex;flex-direction:column;justify-content:center}.value-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #c9cec7}.value{grid-column:span 2;padding:2rem 2rem 2rem 0;border-bottom:1px solid #c9cec7}.value:nth-child(4),.value:nth-child(5){grid-column:span 3}.dark{background:var(--ink);color:#eef2ec}.dark .eyebrow{color:var(--gold)}.name-story p{max-width:570px}.signature{font-family:var(--serif);font-size:1.6rem;color:var(--gold);margin-top:2.5rem}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d6d8d3}.review{padding:2.5rem;background:var(--cream)}.review>div{color:var(--gold);letter-spacing:.15em}.review blockquote{font-family:var(--serif);font-size:1.4rem;margin:2rem 0}.review p{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.process{background:#ece9e1}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:120px 1fr;gap:2rem;border-top:1px solid #c8c7c0;padding:2.2rem 0}.steps li>span{font-family:var(--serif);font-size:2.5rem;color:var(--gold)}.steps h3{margin-bottom:.5rem}.steps p{max-width:700px;margin-bottom:0}.region{text-align:center;max-width:900px}.region p{max-width:650px;margin-inline:auto}.final-cta{background:var(--sage);color:var(--sage-dark);padding:var(--space) 0}.final-cta .wrap{max-width:900px;text-align:center}.final-cta h2{font-size:clamp(3rem,8vw,6.5rem)}.final-cta .actions{justify-content:center}.site-footer{background:var(--ink);color:#e8ede7;padding:5rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:3rem}.footer-grid nav{display:flex;flex-direction:column;gap:.55rem}.footer-grid nav a{color:#cbd2ca;text-decoration:none;font-size:.88rem}.wordmark-light{color:white}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);margin-top:4rem;padding-top:1.5rem;font-size:.72rem;color:#aab4aa;text-transform:uppercase;letter-spacing:.12em}.mobile-cta{display:none}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
/* Inner pages */
.page-hero{padding:clamp(10rem,18vw,14rem) 0 6rem;background:var(--sage)}.page-hero h1{max-width:1000px;margin-bottom:1.5rem}.page-hero p{font-size:1.25rem;max-width:650px}.prose{max-width:760px;margin-inline:auto}.prose h2{margin-top:4rem}.feature-pairs{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d2d4cf}.feature-pairs article{background:var(--cream);padding:clamp(2rem,5vw,4rem)}.contact-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:clamp(3rem,8vw,8rem)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.field{display:flex;flex-direction:column;gap:.35rem}.field.full{grid-column:1/-1}.field label{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #8c948b;background:transparent;padding:.8rem .2rem;border-radius:0}.field textarea{border:1px solid #8c948b;padding:1rem;min-height:160px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:3px}.check{display:flex;gap:.7rem;align-items:flex-start}.check input{margin-top:.4rem}.honeypot{position:absolute!important;left:-9999px!important}.alert{padding:1rem 1.2rem;margin-bottom:2rem;border-left:3px solid}.alert-success{background:#e1ece0;border-color:#587258}.alert-error{background:#f5e5df;border-color:#984f36}.contact-aside{border-left:1px solid #c8ccc6;padding-left:2.5rem}.contact-aside a{display:block;margin-bottom:.5rem}.legal{padding-top:11rem}.legal h1{font-size:clamp(3rem,7vw,5rem)}
@media(max-width:820px){:root{--wrap:min(100% - 30px,680px)}body{font-size:1rem}.menu-toggle{display:block;z-index:2}.site-nav{position:fixed;inset:0;background:var(--cream);color:var(--ink);padding:8rem 2rem 3rem;flex-direction:column;align-items:flex-start;transform:translateX(100%);visibility:hidden;transition:.3s}.site-nav.open{transform:none;visibility:visible}.site-nav a:not(.button){font-family:var(--serif);font-size:2rem}.site-nav .button{margin-top:auto;width:100%}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{padding-bottom:4rem}.hero h1{font-size:clamp(3.7rem,17vw,5.7rem)}.split,.wide-split,.split-media,.contact-layout{grid-template-columns:1fr}.portrait{min-height:500px}.video-grid{grid-template-columns:1fr 1fr}.video-item:last-child{display:none}.occasion,.occasion:nth-child(even){grid-template-columns:1fr;gap:1.5rem}.occasion:nth-child(even) .media-placeholder{order:0}.occasion .media-placeholder{min-height:260px}.split-media>.media-placeholder{min-height:520px}.split-copy{padding:4rem max(20px,calc((100vw - 680px)/2))}.value-grid{grid-template-columns:1fr 1fr}.value,.value:nth-child(4),.value:nth-child(5){grid-column:auto;padding-right:1rem}.review-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div{grid-column:1/-1}.mobile-cta{display:block;position:fixed;z-index:80;right:1rem;bottom:1rem;background:var(--gold);color:var(--ink);text-decoration:none;padding:.7rem 1.1rem;box-shadow:0 8px 24px rgba(29,38,32,.2);font-size:.82rem}.contact-aside{border-left:0;border-top:1px solid #c8ccc6;padding:2rem 0 0}}
@media(max-width:520px){.actions{align-items:stretch;flex-direction:column}.actions .button{text-align:center}.hero-content>p:not(.hero-brand){font-size:.95rem}.video-grid{grid-template-columns:1fr}.video-item:nth-child(2){display:none}.value-grid{grid-template-columns:1fr}.steps li{grid-template-columns:60px 1fr;gap:1rem}.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Echte Vicina-Fotos: der Bildausschnitt wird je nach Motiv und Container gesteuert. */
.media-placeholder.actual-image{display:block;width:100%;object-fit:cover;background:#aabca9;color:transparent}
.actual-image.asset-hero{object-position:58% center}
.actual-image.asset-portrait{object-position:center 35%}
.actual-image.asset-wedding{object-position:center 42%}
.actual-image.asset-event{object-position:64% center}
.actual-image.asset-hotel,.actual-image.asset-private{object-position:center}
.portrait.actual-image{height:660px}
.split-media>.actual-image{height:100%;min-height:850px}
.video-item .actual-image{height:auto;aspect-ratio:9/16}
@media(max-width:820px){.portrait.actual-image{height:500px}.split-media>.actual-image{height:520px;min-height:520px}}

/* Kompaktere Typografie und kontrollierte Bildhöhe für die Einsatzbereiche. */
h1{font-size:clamp(3.1rem,8vw,6.7rem)}
h2{font-size:clamp(2.15rem,5vw,4.2rem)}
h3{font-size:clamp(1.4rem,2.5vw,1.9rem)}
.hero h1{font-size:clamp(2.15rem,4vw,3.35rem);white-space:nowrap}
.occasion h3{font-size:clamp(1.8rem,3.2vw,2.8rem)}
.statement h2{font-size:clamp(3rem,6.5vw,5.6rem)}
.final-cta h2{font-size:clamp(2.7rem,6.5vw,5.3rem)}
.legal h1{font-size:clamp(2.7rem,6vw,4.3rem)}
.occasion .actual-image{height:clamp(280px,25vw,380px);min-height:0}
@media(max-width:820px){.hero h1{font-size:clamp(3.1rem,14vw,4.8rem)}.occasion .actual-image{height:260px}}

/* Originale Vicina-Logos */
.logo-link{display:inline-flex;align-items:center;line-height:0}
.brand-logo{display:block;object-fit:contain}
.brand-logo-header{width:82px;height:82px;filter:brightness(0) invert(1);transition:width .3s,height .3s,filter .3s}
.site-header.scrolled .brand-logo-header{width:60px;height:60px;filter:none}
.brand-logo-footer{width:190px;height:190px;filter:brightness(0) invert(1);opacity:.92}
@media(max-width:820px){.brand-logo-header{width:72px;height:72px}.site-header.scrolled .brand-logo-header{width:56px;height:56px}.brand-logo-footer{width:160px;height:160px}}

/* Hero-Marke und Startseiten-Header: kein doppeltes Logo im ersten Viewport. */
.hero-logo-mark{display:block;width:clamp(150px,18vw,240px);height:auto;margin:0 0 1.25rem;filter:brightness(0) invert(1);opacity:.94}
.hero h1.hero-logo-name{font-family:var(--serif);font-size:clamp(3.2rem,6vw,5rem);line-height:.9;letter-spacing:-.03em;margin:0 0 .8rem}
.hero-logo-name+.hero-tagline{margin-top:0}
.hero-tagline{font-family:var(--serif);font-weight:500;line-height:1.08;font-size:clamp(2.15rem,4vw,3.35rem);white-space:nowrap;margin-bottom:1rem}
.video-placeholder{cursor:default}
.top-four-label{margin-bottom:.3rem}
.top-four-label+.song-list{margin-top:0}
body[data-page="home"] .site-header:not(.scrolled) .logo-link{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px)}
body[data-page="home"] .site-header .logo-link{transition:opacity .3s,visibility .3s,transform .3s}
body[data-page="home"] .site-header.scrolled .logo-link{opacity:1;visibility:visible;transform:none}
@media(max-width:820px){.hero h1.hero-logo-name{font-size:2.6rem}.hero-tagline{font-size:1.75rem}}
@media(max-width:520px){.hero-logo-mark{width:130px;margin-bottom:.8rem}.hero h1.hero-logo-name{font-size:clamp(1.65rem,7vw,2.15rem)}.hero-tagline{font-size:clamp(1.28rem,6vw,1.55rem)}}

/* Lokal eingebundenes Font-Awesome-Markensymbol. */
.instagram-link{display:inline-flex!important;align-items:center;gap:.55rem;width:max-content}
.instagram-link .fa-instagram{width:1.15em;text-align:center;font-size:1.2em;text-decoration:none}

/* Ruhige, typografische Symbole für die Vicina-Werte. */
.value-meta{display:flex;align-items:center;justify-content:space-between;min-height:2.8rem;padding-right:1.5rem}
.value-icon{display:grid;place-items:center;width:3rem;height:3rem;border:1px solid rgba(214,171,105,.65);border-radius:50%;color:var(--sage-dark);font-family:var(--serif);font-size:1.75rem;line-height:1}

/* Mobile Reel-Galerie: horizontal wischen; Punkte zeigen Position und sind anklickbar. */
.reel-pagination{display:none}
@media(max-width:820px){.video-grid{display:flex;flex-direction:row;gap:1rem;max-height:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.25rem}.video-grid::-webkit-scrollbar{display:none}.video-item,.video-item:last-child{display:block;flex:0 0 min(82vw,430px);scroll-snap-align:start;scroll-snap-stop:always}.video-item .actual-image{width:100%;max-height:none;object-fit:cover}.reel-pagination{display:flex;align-items:center;justify-content:center;gap:.65rem;margin-top:1rem}.reel-dot{width:9px;height:9px;padding:0;border:1px solid var(--sage-dark);border-radius:50%;background:transparent;cursor:pointer;transition:background .2s,transform .2s}.reel-dot.is-active{background:var(--sage-dark);transform:scale(1.2)}}
@media(max-width:520px){.video-item:nth-child(2){display:block}.video-item{flex-basis:88vw}}
.value h3{margin-top:1.15rem}

/* Klare Kurzantworten für Besucher und Suchsysteme. */
.faq-section{background:#ece9e1}
.faq-list{border-top:1px solid #c8c7c0}
.faq-list article{display:grid;grid-template-columns:minmax(240px,.8fr) 1.2fr;gap:clamp(2rem,7vw,7rem);padding:2rem 0;border-bottom:1px solid #c8c7c0}
.faq-list h3,.faq-list p{margin:0}
@media(max-width:700px){.faq-list article{grid-template-columns:1fr;gap:.7rem}}

@media(max-width:820px){body[data-page="home"]:not(.is-scrolled) .mobile-cta{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px)}body[data-page="home"].is-scrolled .mobile-cta{opacity:1;visibility:visible;transform:none}.mobile-cta{transition:opacity .25s,visibility .25s,transform .25s}}
