@font-face{font-family:"Static CJK";src:url("/assets/fonts/noto-serif-sc.ttf") format("truetype");font-display:swap;font-style:normal;font-weight:100 900}
html{scroll-behavior:smooth}body{overflow-x:hidden}img{max-width:100%}.dipi_preloader_wrapper_outer{display:none!important}.et-waypoint,.et_pb_animation_top,.et_pb_animation_bottom,.et_pb_animation_left,.et_pb_animation_right,.et_pb_animation_fade,.dipi_timeline_item,.dipi_timeline .animated{opacity:1!important;transform:none!important;animation:none!important}.static-blurb-link{display:block;color:inherit}.static-language{position:fixed;bottom:12px;right:12px;z-index:10000;display:flex;background:#fff;color:#111;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0002;font-family:Arial,sans-serif,'Static CJK';font-size:14px}.static-language a{padding:8px 12px;color:#333}.static-language a[aria-current]{background:#eee;font-weight:700}.dipi-carousel-main{display:block!important;opacity:1!important;position:relative}.dipi-carousel-main .swiper-container{overflow:hidden}.dipi-carousel-wrapper{display:flex!important;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 0 12px;align-items:stretch}.dipi-carousel-wrapper::-webkit-scrollbar{display:none}.dipi-carousel-wrapper>.dipi_carousel_child{flex:0 0 calc((100% - 60px)/3);width:calc((100% - 60px)/3)!important;scroll-snap-align:start;height:auto;margin:0!important;opacity:1!important}.dipi-carousel-child-wrapper{height:100%}.swiper-arrow-button{cursor:pointer;user-select:none}.swiper-arrow-button:focus-visible{outline:2px solid currentColor}.dipi_masonry_gallery .grid{column-count:3;column-gap:20px;height:auto!important}.dipi_masonry_gallery .grid-item{position:relative!important;top:auto!important;left:auto!important;transform:none!important;display:inline-block;width:100%!important;margin:0 0 20px!important;break-inside:avoid}.dipi_masonry_gallery .grid-sizer,.dipi_masonry_gallery .gutter-sizer{display:none}.dipi_masonry_gallery .img-container{cursor:zoom-in}.dipi_masonry_gallery img{display:block;width:100%;height:auto}.et_pb_blog_grid .et_pb_salvattore_content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.et_pb_blog_grid .et_pb_salvattore_content>.column{width:auto!important;margin:0!important;display:contents}.et_pb_blog_grid .et_pb_post{width:100%;min-width:0;margin:0 0 30px!important}.static-book{max-width:1100px;margin:20px auto;background:#eee;padding:16px;text-align:center}.book-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;margin-bottom:16px}.book-toolbar button{padding:8px 16px;border:1px solid #bbb;background:#fff;color:#222;cursor:pointer}.book-page{display:block;max-height:80vh;width:auto;margin:auto;box-shadow:0 5px 20px #0003}.static-lightbox{position:fixed;inset:0;z-index:100000000;background:#000d;display:flex;align-items:center;justify-content:center;padding:55px 20px}.static-lightbox img{max-height:85vh;max-width:95vw;object-fit:contain}.static-lightbox button{position:absolute;top:10px;right:15px;background:none;border:0;font-size:36px;color:#fff;cursor:pointer}.static-lightbox .lb-prev{top:50%;left:10px;right:auto}.static-lightbox .lb-next{top:50%;right:10px}.et_mobile_menu{display:none}.mobile_nav.opened .et_mobile_menu{display:block}.static-mobile-button{background:none;border:0;color:inherit;font-size:30px;cursor:pointer;padding:8px;line-height:1}.static-submenu-button{position:absolute;right:5px;top:5px;min-width:34px;min-height:34px;background:none;border:0;color:inherit;cursor:pointer}.et_mobile_menu li{position:relative}.et_mobile_menu .sub-menu{display:none!important}.et_mobile_menu li.submenu-open>.sub-menu{display:block!important}.et-l--header{position:relative;z-index:999}.et_pb_sticky_module{position:relative!important}.et_pb_scroll_top{cursor:pointer}.dipi_timeline .dipi-timeline-item{opacity:1!important}@media(max-width:980px){.dipi-carousel-wrapper>.dipi_carousel_child{flex-basis:calc((100% - 30px)/2);width:calc((100% - 30px)/2)!important}.dipi_masonry_gallery .grid{column-count:2}.et_pb_blog_grid .et_pb_salvattore_content{grid-template-columns:repeat(2,minmax(0,1fr))}.et_pb_menu .et_mobile_nav_menu{display:block}.et_pb_menu .et_pb_menu__menu{display:none}.et_mobile_menu{list-style:none!important;padding:10px!important;max-height:75vh;overflow:auto;min-width:250px}.et_mobile_menu a{display:block;padding:10px 36px 10px 10px}}@media(max-width:767px){.dipi-carousel-wrapper>.dipi_carousel_child{flex-basis:100%;width:100%!important}.et_pb_blog_grid .et_pb_salvattore_content{grid-template-columns:1fr}.dipi_masonry_gallery .grid{column-gap:12px}.dipi_masonry_gallery .grid-item{margin-bottom:12px!important}.book-toolbar{font-size:13px}.static-book{padding:10px}.static-language a{padding:7px 10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.static-video{display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:contain}
.dipi_masonry_gallery .grid{column-gap:10px}.dipi_masonry_gallery .grid-item{margin-bottom:10px!important}.dipi_masonry_gallery_0 .grid{column-count:5}.dipi_masonry_gallery_1 .grid{column-count:4}.dipi_masonry_gallery_0_tb_body .grid{column-count:4}@media(max-width:980px){.dipi_masonry_gallery_0 .grid,.dipi_masonry_gallery_0_tb_body .grid{column-count:3}}@media(max-width:767px){.dipi_masonry_gallery_0 .grid,.dipi_masonry_gallery_0_tb_body .grid{column-count:2}}

/* Static content does not wait for WordPress animation or column scripts. */
.dipi_timeline .dipi_timeline_item_card-wrap{opacity:1!important;visibility:visible!important;animation:none!important}
.et_pb_blog_grid .et_pb_salvattore_content .et_pb_post{opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important}
.et_pb_blog_grid .post-content-inner{display:block!important;visibility:visible!important;opacity:1!important}

/* Native mobile submenu controls. */
.et_mobile_menu .menu-item-has-children>a:after{display:none!important}
.et_mobile_menu .static-submenu-button{z-index:100!important;pointer-events:auto;right:6px;top:4px;min-width:44px;min-height:44px;background:#fff;border-radius:50%}
.et_mobile_menu li.submenu-open>.sub-menu{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important;overflow:visible!important;position:static!important;transform:none!important;width:100%!important}
.et_mobile_menu li.submenu-open>.sub-menu>li{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important}
@media(max-width:767px){
.static-face-background{background-position:65% center!important}
.dipi_timeline .dipi_timeline_layout_right_phone .dipi_timeline_item_card:after{left:-15px!important;right:auto!important;border-left:0 none transparent!important;border-right:15px solid #f2f3f3!important}
}
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li.submenu-open>ul.sub-menu,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li.submenu-open>ul.sub-menu>li,
.et-db #et-boc .et-l .et_pb_menu .et_mobile_menu li.submenu-open>ul.sub-menu>li>a{visibility:visible!important;opacity:1!important}

/* Elegant Chinese typography, sticky navigation and safe carousel targets. */
html[lang^="zh"] body,html[lang^="zh"] .et_pb_text,html[lang^="zh"] h1,html[lang^="zh"] h2,html[lang^="zh"] h3,html[lang^="zh"] h4,html[lang^="zh"] p,html[lang^="zh"] a,html[lang^="zh"] button{font-family:"Static CJK",serif!important;font-style:normal!important}
.et-l--header{position:sticky!important;top:0;z-index:10001;background:#fff;box-shadow:0 2px 12px #00000008}
html{scroll-padding-top:var(--sticky-header-height,180px)}
.et-db #et-boc .et-l .dipi-carousel-main .swiper-arrow-button{position:absolute!important;top:50%!important;bottom:auto!important;margin:0!important;transform:translateY(-50%)!important;width:44px!important;height:48px!important;display:flex!important;align-items:center;justify-content:center;z-index:20;touch-action:manipulation}
.et-db #et-boc .et-l .dipi-carousel-main .swiper-button-prev{left:-48px!important;right:auto!important}
.et-db #et-boc .et-l .dipi-carousel-main .swiper-button-next{right:-48px!important;left:auto!important}
.maggie-chat{position:fixed;right:16px;bottom:76px;z-index:10005;font-family:Arial,"Static CJK",sans-serif;color:#17221c;line-height:1.5}
.maggie-chat-toggle{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:0;border-radius:50%;background:#138454;color:#fff;box-shadow:0 5px 22px #0003;cursor:pointer;transition:background .2s,transform .2s}
.maggie-chat-toggle:hover{background:#096a40;transform:translateY(-2px)}
.maggie-chat-toggle svg{width:30px;height:30px}
.maggie-chat-panel{position:absolute;bottom:70px;right:0;width:320px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e3e9e5;border-radius:16px;box-shadow:0 12px 42px #0003;padding:22px;text-align:left;max-height:calc(100dvh - 160px);overflow:auto}
.maggie-chat-panel[hidden]{display:none!important}
.maggie-chat-heading{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:17px;line-height:1.4}
.maggie-chat-close{flex:none;width:32px;height:32px;border:0;background:#f2f5f3;color:#33473b;border-radius:50%;font-size:24px;cursor:pointer}
.maggie-chat-panel p{padding:0;margin:12px 0 18px;font-size:14px;color:#68756d}
.maggie-chat-options{display:grid;gap:9px}
.maggie-chat-options a{display:block;padding:13px 14px;border:1px solid #dce9e0;border-radius:9px;color:#11663f;background:#f6faf7;font-size:14px;font-weight:600}
.maggie-chat-options a:hover{background:#eaf4ee;border-color:#138454}
.maggie-chat-panel small{display:block;margin-top:16px;color:#829087;font-size:11px}
.maggie-chat button:focus-visible,.maggie-chat a:focus-visible{outline:3px solid #b8dec8;outline-offset:3px}
@media(max-width:980px){.et_mobile_menu{max-height:calc(100dvh - var(--sticky-header-height,180px) - 16px)!important}}
@media(max-width:370px){.et-db #et-boc .et-l .dipi-carousel-main .swiper-button-prev{left:-42px!important}.et-db #et-boc .et-l .dipi-carousel-main .swiper-button-next{right:-42px!important}}
/* Clip horizontal overflow without creating an ancestor scroll container. */
body,#page-container{overflow-x:clip!important;overflow-y:visible!important}

/* Comfortable menu spacing and balanced homepage statement. */
.et-l--header{padding-bottom:16px!important}
.et-db #et-boc .et-l .static-life-heading{font-size:clamp(36px,4.5vw,80px)!important;line-height:1.2!important;text-wrap:balance}
@media(max-width:980px){.et-l--header{padding-bottom:12px!important}}
