/* Native structure is editable in WPBakery. These rules only provide site defaults. */
.dy-builder .dy-page-row{margin:0;width:100%;max-width:none}
.dy-builder .dy-page-row>.wpb_column>.vc_column-inner{padding:0}
.dy-builder .dy-page-row>.wpb_column{width:100%;float:none}
.dy-builder .wpb_content_element{margin-bottom:0}
.dy-builder-block{position:relative}
.dy-builder .dy-builder-block>.dv-section{margin-block:0;padding-block:0}
.dy-builder .dy-builder-block{margin-block:0 var(--dv-rhythm,64px)}
.dy-builder .dy-builder-block:first-child{margin-top:0}
.dy-builder-surface-auto>.dv-soft,.dy-builder-surface-card>.dv-section{background:transparent}
.dy-builder-surface-auto>.dv-soft>.dv-container,.dy-builder-surface-card>.dv-section>.dv-container{background:var(--dv-soft,#f5f3f0);padding:40px;max-width:var(--dv-width,1240px);width:calc(100% - 48px)}
.dy-builder-surface-plain>.dv-section,.dy-builder-surface-plain>.dv-section>.dv-container{background:transparent}
.dy-builder-surface-full>.dv-section{background:var(--dv-soft,#f5f3f0)}
.dy-builder-block .dv-steps{align-items:start}
.dy-builder-block .dv-process-list>li{margin-top:0!important}
.dy-rev-wrap{position:relative;isolation:isolate;width:100%}
.dy-rev-frame{position:relative}
.dy-rev-hero .dy-rev-frame{min-height:calc(100svh - 80px)}
.dy-rev-inline .dy-rev-frame{min-height:0;aspect-ratio:4/5}
[data-dy-native-revolution="photoshoot-preparation"] .dy-rev-frame{aspect-ratio:1240/850}
.dy-js .dy-rev-inline .dy-rev-frame:has(sr7-module){aspect-ratio:auto}
.dy-rev-frame>p:empty{display:none}
.dy-rev-frame sr7-module{font-family:Montserrat,sans-serif}
.dy-rev-summary{padding-block:32px!important}
.dy-rev-summary h1{font-size:clamp(30px,4vw,52px)}
.dy-rev-summary .dv-container{display:block}
.dy-rev-summary p{max-width:800px}
.dy-rev-transcripts{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:normal}
.dy-rev-transcripts details{border-bottom:1px solid var(--dv-line,#ddd8d2);padding:12px 0}
.dy-entrances-ready .dy-enter{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.dy-entrances-ready .dy-enter:not(.is-visible){opacity:0;transform:translateY(22px)}
.dy-builder .vc_row:not(.dy-page-row){max-width:var(--dv-width,1240px);margin-inline:auto}
@media(max-width:767px){
 .dy-builder .dy-builder-block{margin-bottom:var(--dv-rhythm,48px)}
 .dy-builder-surface-auto>.dv-soft>.dv-container,.dy-builder-surface-card>.dv-section>.dv-container{width:calc(100% - 32px);padding:24px 20px}
 .dy-rev-hero .dy-rev-frame{min-height:calc(100svh - 65px)}
 [data-dy-native-revolution="photoshoot-preparation"] .dy-rev-frame{aspect-ratio:4/3}
 .dy-js .dy-rev-inline .dy-rev-frame:has(sr7-module){aspect-ratio:auto}
}
@media(prefers-reduced-motion:reduce){
 .dy-entrances-ready .dy-enter,.wpb_animate_when_almost_visible{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}
}
@media print{
 .dy-builder-block,.dy-enter{opacity:1!important;transform:none!important;transition:none!important}
 .dy-builder .vc_column_container{float:none!important;width:100%!important}
}

.dy-rev-wrap [class^="fa-"],.dy-rev-wrap [class*=" fa-"]{font-family:FontAwesome;font-style:normal}

html:not(.dy-js) .dy-rev-transcripts{position:static;width:auto;height:auto;clip-path:none;overflow:visible}




/* Keep the authored scene at the top edge; only native hero pages use an overlay. */
.dy-builder:not(:has(.dy-rev-hero)):not(.dv-series){padding-top:48px}
.dy-builder.dv-series{padding-top:32px}
.dy-builder .dv-series-intro{padding-top:24px!important}
.dy-native-controls{position:absolute;inset:auto 0 18px;z-index:5;display:flex;justify-content:center;gap:16px;pointer-events:none}
.dy-native-controls button{pointer-events:auto;width:48px;height:48px;border:1px solid var(--dv-line);border-radius:50%;background:var(--dv-paper);color:var(--dv-ink);font:24px/1 sans-serif;cursor:pointer}
html:not(.dy-js) .dy-native-controls{display:none}
.dv-footer .dv-footer-contacts,.dv-footer .dv-footer-social{flex-direction:row;flex-wrap:wrap;gap:4px 20px;align-items:center}
.dv-footer .dv-footer-contacts a,.dv-footer .dv-footer-social a{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;font-size:14px;line-height:1.4}
.dv-footer .dv-footer-social{margin-top:4px}
.dv-case>a:first-child{position:relative;text-decoration:none}
.dv-case>a:first-child h3::after{content:" ↗";font-family:Arial,sans-serif;font-size:.7em;white-space:nowrap}
.dv-case>a:first-child:hover h3,.dv-case>a:first-child:focus-visible h3{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1120px){
 .dy-v3 .dy-native-header-inner{display:grid;grid-template-columns:48px 1fr 48px;position:relative}
 .dy-v3 .dy-native-header .dy-brand{grid-column:2;grid-row:1;justify-self:center}
 .dy-v3 .dy-native-header .mob-nav{grid-column:1;grid-row:1;justify-self:start}
 .dy-native-hero-page .dy-native-header{position:absolute;inset:0 0 auto;background:rgb(255 255 255 / 16%);border-color:rgb(255 255 255 / 20%)}
 .dy-native-hero-page .dy-native-header:has([aria-expanded=true]){background:var(--dv-paper)}
 .dy-native-hero-page .dy-rev-hero .dy-rev-frame{min-height:100svh}
}
@media(max-width:767px){
 .dy-builder:not(:has(.dy-rev-hero)):not(.dv-series){padding-top:32px}
 .dy-builder.dv-series{padding-top:24px}
 .dy-builder .dv-series-intro{padding-top:20px!important}
 .dy-builder .dv-breadcrumbs{font-size:12px;gap:8px;line-height:1.6}
 .dv-footer{padding-block:32px}
 .dv-footer .dv-footer-grid{gap:24px 20px}
 .dv-footer .dv-footer-grid h2{font-size:24px;margin-bottom:8px}
 .dv-footer .menu a{font-size:13px;min-height:36px;padding-block:6px}
 .dv-footer .dv-footer-bottom{padding-top:20px;margin-top:20px}
}
@media(prefers-reduced-motion:reduce){.dy-native-controls{display:none}}

[data-dy-native-revolution="vd-certificate-1"] .dy-rev-frame{touch-action:pan-y pinch-zoom}

.dy-native-controls button:disabled{opacity:.45;cursor:default}

@media(min-width:783px) and (max-width:1120px){.admin-bar.dy-native-hero-page .dy-native-header{top:32px}}
@media(max-width:782px){.admin-bar.dy-native-hero-page .dy-native-header{top:46px}}

@media print{.dy-native-controls{display:none!important}}

/* V4.1: the header shares the hero on every screen size. */
.dy-native-hero-page .dy-native-header{position:absolute;inset:0 0 auto;background:rgb(255 255 255 / 16%);border-color:rgb(255 255 255 / 20%)}
.dy-native-hero-page .dy-native-header:has([aria-expanded=true]){background:var(--dv-paper)}
.dy-native-hero-page .dy-rev-hero .dy-rev-frame{min-height:100svh}
.dy-v3 .dy-native-header .dy-brand{font-family:BebasNeueRegular,sans-serif;font-weight:400;font-size:22px;letter-spacing:.08em;line-height:24px;padding-top:6px}
.dy-v3 .dy-native-header .mob-nav{border:0;border-radius:0;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;line-height:1}
.dy-native-controls{display:none}
.dy-rev-summary h1,.dy-rev-summary h2{margin-bottom:24px}
.dy-rev-summary .dv-lead{margin-top:0;margin-bottom:20px}
.dy-rev-summary .dv-actions{margin-top:28px;gap:16px 24px}
.dy-rev-summary .dv-start-price{margin-top:24px}
[data-dv-status]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1120px){
 .dy-v3 .dy-native-header-inner{grid-template-columns:44px minmax(0,1fr) 44px;min-height:63px;padding:0 8px;gap:0}
 .dy-rev-summary{padding-block:28px!important}
 .dy-rev-summary .dv-actions{justify-content:flex-start;margin-top:24px;gap:16px}
}
@media(min-width:783px){.admin-bar.dy-native-hero-page .dy-native-header{top:32px}}
@media(max-width:782px){.admin-bar.dy-native-hero-page .dy-native-header{top:46px}}

.dv-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.dv-related-grid .dv-case{min-width:0}.dv-related-grid h3{font-size:22px}
@media(max-width:767px){.dv-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.dv-related-grid h3{font-size:20px}}

.dv-footer .dv-footer-social{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dv-footer .dv-footer-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0}.dv-footer-social svg{flex:none}.dv-footer .dv-footer-contacts{display:flex;flex-direction:column;align-items:flex-start;gap:0}
@media(max-width:767px){.dv-footer .dv-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dv-footer-contact-block{grid-column:1/-1;text-align:center}.dv-footer .dv-footer-social{justify-content:center}.dv-footer .dv-footer-contacts{align-items:center}.dv-footer .dv-footer-contacts a{max-width:100%;overflow-wrap:anywhere}.dv-footer .dv-footer-bottom{text-align:center}}

sr7-slide[inert]{pointer-events:none!important}




[data-dy-decoration]{pointer-events:none!important}



/* Shared rhythm for the existing block system. */
.dy-v3{--dv-rhythm:var(--dv-rhythm-desktop,72px);--dy-header-height:56px}
@media(max-width:1120px){.dy-v3{--dv-rhythm:var(--dv-rhythm-tablet,56px);--dy-header-height:64px}.dy-v3 .dy-native-header-inner{min-height:calc(var(--dy-header-height) - 1px)}}
@media(min-width:768px) and (max-width:1120px){.dy-builder:not(:has(.dy-rev-hero)):not(.dv-series){padding-top:36px}}
@media(max-width:767px){.dy-v3{--dv-rhythm:var(--dv-rhythm-mobile,48px)}.dy-builder:not(:has(.dy-rev-hero)):not(.dv-series){padding-top:28px}}
.dy-native-manual{padding:28px;max-width:1240px;margin:auto;background:var(--dv-paper,#fff);color:var(--dv-ink,#202020)}
.dy-native-manual[hidden],.dy-manual-panel[hidden]{display:none}
.dy-manual-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
.dy-manual-photos{display:flex;gap:16px;align-items:center;justify-content:center;min-width:0}
.dy-manual-photos figure{flex:1;margin:0;min-width:0;background:#f6f4f1}
.dy-manual-photos img{display:block;max-height:70svh;width:100%;object-fit:contain}
.dy-manual-photos a{display:block;min-height:44px}
.dy-manual-copy p{font-size:16px;line-height:1.6;white-space:normal}
.dy-manual-copy a{display:inline-block;padding:12px 0;min-height:44px}
.dy-manual-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px}
.dy-manual-controls button{min-width:48px;min-height:48px;border:1px solid #d7d3cd;border-radius:50%;background:#fff;color:#202020;font-size:22px;cursor:pointer}
.dy-manual-controls button:disabled{opacity:.45;cursor:default}
.dy-manual-controls button:focus-visible{outline:3px solid #475d68;outline-offset:3px}
html:not(.dy-js) .dy-rev-wrap:has(>noscript)>.dy-rev-frame{display:none}
html:not(.dy-js) .dy-manual-panel+.dy-manual-panel{margin-top:40px}
@media(max-width:767px){.dy-native-manual{padding:24px 20px}.dy-manual-panel{grid-template-columns:1fr;gap:20px}.dy-manual-photos img{max-height:58svh}.dy-manual-copy p{font-size:16px}}

.dy-manual-copy>a{margin-right:24px}.dy-manual-copy:empty{display:none}.dy-manual-panel:has(.dy-manual-copy:empty){grid-template-columns:1fr}.dy-manual-photos{width:100%;max-width:960px;margin-inline:auto}
/* Read only the text variant visible at this native breakpoint. */
.dy-manual-copy>[data-dy-manual-visible]{display:none}.dy-manual-copy>[data-dy-manual-visible~="0"]{display:var(--dy-manual-show,block)}.dy-manual-copy>a{--dy-manual-show:inline-block}
@media(max-width:1239px){.dy-manual-copy>[data-dy-manual-visible]{display:none}.dy-manual-copy>[data-dy-manual-visible~="1"]{display:var(--dy-manual-show,block)}}
@media(max-width:1023px){.dy-manual-copy>[data-dy-manual-visible]{display:none}.dy-manual-copy>[data-dy-manual-visible~="2"]{display:var(--dy-manual-show,block)}}
@media(max-width:777px){.dy-manual-copy>[data-dy-manual-visible]{display:none}.dy-manual-copy>[data-dy-manual-visible~="3"]{display:var(--dy-manual-show,block)}}
@media(max-width:479px){.dy-manual-copy>[data-dy-manual-visible]{display:none}.dy-manual-copy>[data-dy-manual-visible~="4"]{display:var(--dy-manual-show,block)}}

@media(max-width:767px){.dy-builder.dv-series{padding-top:28px}.dy-builder.dv-series .dv-breadcrumbs{padding-top:0}}

@media(max-width:767px){.dy-v3 main:not(.dy-builder)>.dv-breadcrumbs{padding-top:28px}}

/* The original expanding-circle loader precedes the real native markup.
   No scene replica, poster handoff, or layout replacement on timeout. */
.dy-rev-frame{isolation:isolate}
.dy-rev-frame>sr7-module{isolation:isolate;z-index:0}
.dy-native-loading{position:absolute;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;gap:16px;background:var(--dv-paper,#fff);pointer-events:auto}
.dy-native-pulse{display:block;width:40px;height:40px;border-radius:50%;background:#333;animation:dy-native-scaleout 1s infinite ease-in-out}
@keyframes dy-native-scaleout{0%{transform:scale(0);opacity:1}100%{transform:scale(1);opacity:0}}
.dy-rev-live>.dy-rev-frame>.dy-native-loading{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .12s linear,visibility 0s .12s}
[data-dy-native-retry]{pointer-events:auto;min-height:44px;padding:8px 16px;border:1px solid currentColor;background:transparent;color:var(--dv-ink,#222);font:14px Montserrat,sans-serif;border-radius:24px}
.dy-rev-wrap *{-webkit-tap-highlight-color:transparent}
.dy-rev-wrap .sr7-layer[role=button]{user-select:none;-webkit-user-select:none;cursor:pointer}
@media(prefers-reduced-motion:reduce){.dy-native-pulse{animation:none}.dy-rev-live>.dy-rev-frame>.dy-native-loading{transition:none}}
@media print{.dy-native-loading{display:none!important}.dy-rev-frame{min-height:0!important;height:auto!important}.dy-rev-wrap sr7-module{visibility:visible!important}}

/* Explicit form navigation settles the entrance before measuring its anchor. */
.dy-entrances-ready .dy-enter.dy-anchor-target{opacity:1;transform:none;transition:none}
.dv-booking h2{scroll-margin-top:28px}

html:not(.dy-js) .dy-rev-hero>noscript>.dy-native-manual{padding-top:calc(var(--dy-header-height,64px) + 28px)}

/* One clear invitation on the existing lower certificate photo. */
.dv-gift-delivery .dv-gallery-cue{display:flex;align-items:center;gap:12px;min-height:48px;padding-block:14px 6px;font-size:14px;line-height:1.5;font-weight:600;color:var(--dv-ink,#222)}
.dv-gallery-cue svg{flex:none}.dv-gallery-cue svg:last-child{margin-left:auto}
.dv-gift-delivery .dy-lightbox-link:hover .dv-gallery-cue span,.dv-gift-delivery .dy-lightbox-link:focus-visible .dv-gallery-cue span{text-decoration:underline;text-underline-offset:4px}

/* V4.2: center the complete gift offer; editorial summaries keep one left edge. */
@media(max-width:767px){
 .dy-rev-summary--gift{text-align:center}
 .dy-rev-summary--gift p{margin-inline:auto}
 .dy-rev-summary--gift .dv-actions{justify-content:center}
 
}

/* Keyboard/screen-reader rotation control: revealed only while it has focus. */
.dy-native-rotation{position:absolute;right:16px;bottom:16px;z-index:25;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dy-native-rotation:focus-visible{width:48px;height:48px;clip-path:none;border:1px solid #777;border-radius:50%;background:#fff;color:#202124;font:22px/1 Arial,sans-serif;outline:2px solid #202124;outline-offset:3px;cursor:pointer}

/* The current navigation keeps the former lightweight desktop text and active marker. */
@media(min-width:1121px){.dy-v3 .dy-nav-list>li>a[aria-current="page"]:not(.dv-button){text-decoration:underline;text-underline-offset:15px;text-decoration-color:#b5a28d;text-decoration-thickness:1px}}

/* WordPress toolbar shortcuts must not wrap over the site's tablet menu. */
@media(min-width:783px) and (max-width:1600px){
 .admin-bar #wpadminbar #wp-admin-bar-easy-updates-manager-admin-bar,
 .admin-bar #wpadminbar #wp-admin-bar-popup-maker,
 .admin-bar #wpadminbar #wp-admin-bar-wpforms-menu,
 .admin-bar #wpadminbar #wp-admin-bar-vc_inline-admin-bar-link,
 .admin-bar #wpadminbar #wp-admin-bar-revslider{display:none}
 .admin-bar #wpadminbar #wp-admin-bar-edit>.ab-item{font-size:0}
}

/* Existing complete rows keep their aspect ratios; only the final incomplete row is cropped. */
@media(min-width:768px){.dv-mosaic--editable .dv-mosaic-row--partial{height:clamp(220px,24vw,430px)}.dv-mosaic--editable .dv-mosaic-row--partial .dv-mosaic-item{aspect-ratio:auto!important;min-height:0}}
@media(max-width:767px){.dv-mosaic--editable .dv-mosaic-item--fill{grid-column:1/-1;aspect-ratio:16/10!important}}
