/* Native HTML adaptation of Magic UI Blur Fade and React Bits Scroll Reveal. */
body.tf-wedding-fix { --md-ink:#243c35; --md-rose:#95675f; --md-line:#e0e5e1; --md-copy:#505d57; }
body.tf-wedding-fix main { color:var(--md-ink); background:#fff; }
body.tf-wedding-fix main * { letter-spacing:0!important; }
body.tf-wedding-fix #carousel_dd5e.tf-md-hero { display:flex; flex-direction:column; justify-content:flex-end; align-items:stretch; padding:64px max(40px,calc((100% - 1240px)/2)); min-height:620px; height:calc(78svh - 94px); max-height:860px; position:relative; isolation:isolate; background:#263b34; color:#fff; }
body.tf-wedding-fix #carousel_dd5e::after { background:linear-gradient(0deg,rgba(10,22,17,.76),transparent 76%); }
.tf-md-film { position:absolute; inset:0; z-index:-2; display:flex; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; }
.tf-md-film::-webkit-scrollbar { display:none; }
.tf-md-film:focus-visible { outline:3px solid white; outline-offset:-6px; }
.tf-md-frame { position:relative; flex:0 0 100%; min-width:0; height:100%; scroll-snap-align:start; }
body.tf-wedding-fix .tf-md-film-photo { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 42%; }
.tf-md-hero-copy { max-width:800px; pointer-events:none; }
body.tf-wedding-fix #carousel_dd5e h1 { font-family:Georgia,'Times New Roman',serif!important; font-size:72px!important; line-height:1.06; font-weight:400!important; color:white!important; margin:0!important; width:auto; text-align:left; text-wrap:balance; }
.tf-md-hero-copy h1 span,.tf-md-hero-copy h1 em { display:block; }
body.tf-wedding-fix #carousel_dd5e h1 span,body.tf-wedding-fix #carousel_dd5e h1 em { font-family:Georgia,'Times New Roman',serif!important; font-weight:400; }
.tf-md-hero-copy h1 em { font-weight:400; }
body.tf-wedding-fix #carousel_dd5e .tf-md-hero-copy > p { font-size:18px; line-height:1.7; color:#fff; margin:24px 0!important; max-width:460px; }
.tf-md-primary { position:relative; display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:13px 25px; border:1px solid #fff; border-radius:2px; background:#fff; color:#243c35; font-size:15px; font-weight:600; text-decoration:none; pointer-events:auto; overflow:hidden; transition:background .25s,color .25s; }
.tf-md-primary::after { content:''; position:absolute; inset:0; background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.7),transparent 70%); transform:translateX(-110%); pointer-events:none; }
.tf-md-primary:hover { background:#eef4ef; color:#243c35; }
.tf-md-primary:hover::after { animation:md-shine .7s ease; }
@keyframes md-shine { to { transform:translateX(110%); } }
.tf-md-film-controls { display:flex; gap:8px; position:absolute; right:40px; bottom:40px; }
.tf-md-film-controls[hidden] { display:none; }
.tf-md-film-controls button { display:grid; place-items:center; width:48px; height:48px; border:1px solid #dce3df; border-radius:50%; background:#243c35; color:#fff; font-size:24px; cursor:pointer; }
.tf-md-film-controls button:disabled { opacity:.4; cursor:default; }
.tf-md-film-controls button svg { width:22px; height:22px; stroke-width:1.6; }
.tf-md-chapters { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 48px; padding:16px 24px; border-bottom:1px solid var(--md-line); background:#fff; }
.tf-md-chapters a { min-height:44px; display:flex; align-items:center; color:var(--md-ink); font-size:13px; text-decoration:none; position:relative; }
.tf-md-chapters a::after { content:''; position:absolute; bottom:6px; width:100%; height:1px; background:var(--md-rose); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.tf-md-chapters a:hover::after,.tf-md-chapters a:focus-visible::after { transform:scaleX(1); }
body.tf-wedding-fix .tf-reportage { padding:64px 32px; }
body.tf-wedding-fix .tf-reportage-inner { max-width:1240px; }
body.tf-wedding-fix .tf-photo-grid { column-gap:8px; }
body.tf-wedding-fix .tf-photo-grid figure { margin-bottom:8px; }
body.tf-wedding-fix .tf-reportage-caption { margin-top:28px; align-items:center; }
body.tf-wedding-fix .tf-reportage-caption h2,body.tf-wedding-fix #carousel_9db9 h3,body.tf-wedding-fix #sec-130f h2,body.tf-wedding-fix #block-1 h2 { font-family:Georgia,'Times New Roman',serif!important; font-weight:400!important; font-size:38px!important; line-height:1.2; color:var(--md-ink)!important; }
body.tf-wedding-fix .tf-reportage-caption a { color:var(--md-rose); }
body.tf-wedding-fix #carousel_9db9 { background:#fff!important; color:var(--md-ink); }
body.tf-wedding-fix #carousel_9db9 > .u-sheet { padding:24px 0 64px; }
body.tf-wedding-fix #carousel_9db9 .u-btn { background:#fff!important; color:var(--md-ink)!important; border:1px solid var(--md-line)!important; border-radius:2px!important; box-shadow:none; }
body.tf-wedding-fix #block-12.tf-wedding-offer { padding:72px 32px; color:var(--md-ink); background:#f4f8f5; }
body.tf-wedding-fix #block-12.tf-wedding-offer h2 { font-size:42px!important; color:var(--md-ink); }
body.tf-wedding-fix .tf-wo-list li,.tf-wedding-fix .tf-wo-drone p:not(.tf-wo-kicker) { color:var(--md-copy); }
body.tf-wedding-fix .tf-wo-drone { border-color:#bfcfc5; }
body.tf-wedding-fix .tf-wo-price { color:var(--md-ink)!important; }
body.tf-wedding-fix .tf-wo-kicker,body.tf-wedding-fix .tf-wo-list li > svg { color:#597464; }
body.tf-wedding-fix #block-1 > .u-sheet { padding:72px 0; }
body.tf-wedding-fix #block-1 .u-group-1 { border-radius:2px; background:rgba(255,255,255,.97); }
body.tf-wedding-fix #block-1 .u-container-layout-1 { padding:40px!important; }
body.tf-wedding-fix #sec-130f { background:#fff!important; background-image:none!important; color:var(--md-ink)!important; }
body.tf-wedding-fix #sec-130f::before { background:transparent!important; }
body.tf-wedding-fix #sec-130f > .u-sheet { padding:80px 0; }
body.tf-wedding-fix #sec-130f h2 { margin-bottom:36px!important; }
body.tf-wedding-fix #sec-130f .u-carousel-item .u-container-layout { padding-top:0!important; }
body.tf-wedding-fix #sec-130f .u-carousel-item p { color:var(--md-ink); }
body.tf-wedding-fix #sec-130f .u-carousel-item > .u-container-layout > p { font-family:Georgia,'Times New Roman',serif!important; font-size:23px!important; line-height:1.65; text-align:center!important; }
body.tf-wedding-fix #sec-130f .u-carousel-item h4 { font-size:15px; color:var(--md-rose); }
body.tf-wedding-fix section#block-11.tf-unique { background:#fff!important; border-color:var(--md-line); color:var(--md-ink); padding:80px 32px; }
body.tf-wedding-fix #block-11.tf-unique h2 { color:var(--md-ink); }
body.tf-wedding-fix .tf-unique-top,body.tf-wedding-fix .tf-unique-footer { border-color:var(--md-line); }
body.tf-wedding-fix .tf-unique-top,body.tf-wedding-fix .tf-unique-photo figcaption,body.tf-wedding-fix .tf-unique-intro,body.tf-wedding-fix .tf-unique-principle p,body.tf-wedding-fix .tf-unique-footer p { color:var(--md-copy); }
body.tf-wedding-fix .tf-unique h2 em,body.tf-wedding-fix .tf-unique-number,body.tf-wedding-fix .tf-unique-footer h3 { color:var(--md-rose); }
body.tf-wedding-fix .tf-unique-manifesto { border:0; padding:20px 0; font-family:Georgia,'Times New Roman',serif!important; font-size:36px; color:var(--md-ink); line-height:1.4; }
body.tf-wedding-fix .tf-unique-manifesto .tf-md-word { font-family:inherit!important; }
body.tf-wedding-fix .tf-unique-principle { border-color:var(--md-line); }
body.tf-wedding-fix .tf-unique-tariff { background:#fff5f3; color:var(--md-ink); border:0; border-radius:2px; box-shadow:none; outline:0; padding:32px; }
body.tf-wedding-fix .tf-unique-tariff-top,body.tf-wedding-fix .tf-unique-contact { border-color:#e4cbc5; }
body.tf-wedding-fix .tf-unique-price,body.tf-wedding-fix .tf-unique-contact { color:var(--md-ink); }
body.tf-wedding-fix .tf-unique-discount,body.tf-wedding-fix .tf-unique-former,body.tf-wedding-fix .tf-unique-price-label { color:#80564f; }
body.tf-wedding-fix #tf-wedding-video { padding:80px 32px; border-color:var(--md-line); }
body.tf-wedding-fix #tf-wedding-video h2,body.tf-wedding-fix #sec-6faf.tf-wedding-faq h2 { color:var(--md-ink); font-size:48px!important; }
body.tf-wedding-fix .tf-wv-layout { gap:72px; }
body.tf-wedding-fix .tf-wv-photo img { aspect-ratio:4/5; }
body.tf-wedding-fix #tf-wedding-steps.tf-wedding-steps { background:#fff; border-color:var(--md-line); padding:64px 32px; color:var(--md-ink); }
body.tf-wedding-fix .tf-wedding-steps li { border:0; position:relative; padding-top:24px; }
.tf-wedding-steps li::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:#becfc4; transform-origin:left; }
.tf-wedding-steps.md-in li::before { animation:md-draw .9s cubic-bezier(.2,.7,.2,1) backwards; }
.tf-wedding-steps.md-in li:nth-child(2)::before { animation-delay:.15s; }
.tf-wedding-steps.md-in li:nth-child(3)::before { animation-delay:.3s; }
body.tf-wedding-fix .tf-wedding-steps .tf-ws-number { display:grid; place-items:center; width:40px; height:40px; border:1px solid var(--md-line); border-radius:50%; color:var(--md-rose); }
body.tf-wedding-fix #tf-wedding-reservation { border-top:1px solid var(--md-line); }
body.tf-wedding-fix #sec-6faf.tf-wedding-faq { border-top:1px solid var(--md-line); padding:80px 32px; color:var(--md-ink); }
body.tf-wedding-fix .tf-wedding-faq details { border-color:var(--md-line); }
body.tf-wedding-fix .tf-wedding-faq details[open],body.tf-wedding-fix .tf-wedding-faq summary:hover { background:#f4f8f5; }
body.tf-wedding-fix .tf-wedding-faq details[open] .tf-wfaq-answer { animation:md-answer .3s ease-out; }
body.tf-wedding-fix .tf-wfaq-contact,body.tf-wedding-fix .tf-wfaq-kicker,body.tf-wedding-fix .tf-wfaq-number,body.tf-wedding-fix .tf-wfaq-icon,body.tf-wedding-fix .tf-wedding-faq h2 em { color:var(--md-rose); }
body.tf-wedding-fix #sec-04db { background:#f4f8f5!important; }
body.tf-wedding-fix #sec-04db .u-sheet { padding:48px 0!important; }
body.tf-wedding-fix #sec-04db .u-btn { background:var(--md-ink)!important; color:#fff!important; border:0!important; border-radius:2px!important; min-height:54px; box-shadow:none; }
.tf-md-ink { position:relative; display:inline-block; }
.tf-md-ink::after { content:''; position:absolute; left:0; right:0; bottom:-5px; height:7px; border-top:1px solid #bc8b80; border-bottom:1px solid #bc8b80; border-radius:50%; transform:scaleX(0); transform-origin:left; pointer-events:none; }
.md-in .tf-md-ink::after { animation:md-draw 950ms cubic-bezier(.2,.7,.2,1) .3s both; }
@keyframes md-draw { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes md-answer { from { opacity:.65; transform:translateY(-4px); } to { opacity:1; transform:none; } }
body.tf-wedding-fix .md-in.md-blur { animation:md-blur 800ms cubic-bezier(.16,1,.3,1) backwards; }
@keyframes md-blur { from { opacity:.45; filter:blur(3px); transform:translateY(12px); } to { opacity:1; filter:blur(0); transform:none; } }
.tf-md-word { display:inline-block; }
@media(min-width:1100px) { body.tf-wedding-fix .tf-wfaq-heading { position:sticky; top:130px; } }
@media(max-width:991px) {
  body.tf-wedding-fix #carousel_dd5e.tf-md-hero { padding:48px 32px; height:calc(78svh - 68px); min-height:580px; }
  body.tf-wedding-fix #carousel_dd5e h1 { font-size:56px!important; }
  body.tf-wedding-fix .tf-wv-layout { gap:36px; }
}
@media(max-width:700px) {
  body.tf-wedding-fix #carousel_dd5e.tf-md-hero { padding:36px 22px 84px; min-height:540px; height:calc(78svh - 68px); max-height:760px; }
  body.tf-wedding-fix #carousel_dd5e h1 { font-size:42px!important; line-height:1.1; }
  body.tf-wedding-fix #carousel_dd5e .tf-md-hero-copy > p { font-size:16px; line-height:1.6; margin:20px 0!important; }
  .tf-md-film-controls { right:22px; bottom:20px; }
  .tf-md-film-controls button { width:44px; height:44px; }
  .tf-md-chapters { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; padding:12px 22px; }
  .tf-md-chapters a { font-size:13px; }
  body.tf-wedding-fix .tf-reportage { padding:40px 16px; }
  body.tf-wedding-fix .tf-reportage-caption h2,body.tf-wedding-fix #carousel_9db9 h3,body.tf-wedding-fix #sec-130f h2,body.tf-wedding-fix #block-1 h2 { font-size:30px!important; }
  body.tf-wedding-fix .tf-reportage-caption { align-items:start; }
  body.tf-wedding-fix #carousel_9db9 > .u-sheet { padding:12px 0 40px; }
  body.tf-wedding-fix #block-12.tf-wedding-offer,body.tf-wedding-fix section#block-11.tf-unique,body.tf-wedding-fix #tf-wedding-video,body.tf-wedding-fix #tf-wedding-steps.tf-wedding-steps,body.tf-wedding-fix section#sec-6faf.tf-wedding-faq { padding:48px 22px; }
  body.tf-wedding-fix #block-12.tf-wedding-offer h2 { font-size:34px!important; }
  body.tf-wedding-fix #block-1 > .u-sheet { padding:40px 0; }
  body.tf-wedding-fix #block-1 .u-container-layout-1 { padding:28px 22px!important; }
  body.tf-wedding-fix #sec-130f > .u-sheet { padding:48px 0; }
  body.tf-wedding-fix #sec-130f .u-carousel-item > .u-container-layout > p { font-size:20px!important; }
  body.tf-wedding-fix #tf-wedding-video h2,body.tf-wedding-fix #sec-6faf.tf-wedding-faq h2 { font-size:36px!important; }
  body.tf-wedding-fix .tf-unique-manifesto { font-size:30px; }
  body.tf-wedding-fix .tf-unique-tariff { padding:24px; }
  body.tf-wedding-fix .tf-wv-photo img { aspect-ratio:4/3; }
}
@media(max-width:359px) { body.tf-wedding-fix #carousel_dd5e h1 { font-size:36px!important; } }
@media(prefers-reduced-motion:reduce) {
  body.tf-wedding-fix .md-in.md-blur,body.tf-wedding-fix .md-in .tf-md-ink::after,body.tf-wedding-fix .tf-wedding-steps.md-in li::before,body.tf-wedding-fix .tf-wedding-faq details[open] .tf-wfaq-answer,.tf-md-primary:hover::after { animation:none!important; }
  .tf-md-ink::after { transform:scaleX(1); }
  .tf-md-word { opacity:1!important; filter:none!important; transform:none!important; }
  .tf-md-chapters a::after,.tf-md-primary { transition:none; }
}
