:root{--zy-ink:#212438;--zy-gold:#dfb951;--zy-paper:#f7f4ed;--zy-line:#ddd9cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}.zy-site{margin:0;background:var(--zy-paper);color:var(--zy-ink);font:17px/1.75 'Figtree',sans-serif}.zy-site a{color:inherit;text-decoration:none}.zy-site img{max-width:100%;display:block}.zy-site picture{display:block}.zy-site h1,.zy-site h2,.zy-site h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.045em;line-height:1.06;margin:0 0 24px}.zy-site h1{font-size:clamp(52px,6.5vw,104px)}.zy-site h2{font-size:clamp(40px,4.2vw,66px)}.zy-site h3{font-size:32px}.zy-site p{margin:0 0 24px}.zy-site a:focus-visible,.zy-site button:focus-visible,.zy-site input:focus-visible,.zy-site textarea:focus-visible{outline:3px solid #9a7015;outline-offset:5px}.zy-wrap{width:min(1280px,calc(100% - 100px));margin:auto}.zy-skip{position:fixed;left:20px;top:-100px;background:white;padding:15px;z-index:100}.zy-skip:focus{top:10px}.zy-top{display:flex;justify-content:space-between;padding:9px 50px;background:var(--zy-ink);color:white;font-size:13px;letter-spacing:.03em}.zy-header{position:sticky;top:0;z-index:40;background:rgba(247,244,237,.97);border-bottom:1px solid var(--zy-line);display:flex;align-items:center;justify-content:space-between;padding:17px 50px;gap:35px}.zy-brand{flex-shrink:0;width:185px;display:block}.zy-brand img{width:185px;height:78px;object-fit:contain}.zy-brand small{display:block}.zy-header nav{display:flex;align-items:center;gap:26px;font-size:15px}.zy-header nav>a:not(.zy-button):hover{color:#8b691c}.zy-menu{display:none}.zy-kicker{font:600 12px/1.6 'Figtree',sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px!important}.zy-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--zy-ink);color:white!important;padding:18px 25px;border:1px solid var(--zy-ink);font:500 15px/1.4 'Figtree',sans-serif;min-height:54px;transition:background .2s,color .2s}.zy-button:hover{background:#3a3d50}.zy-button-small{padding:13px 18px;min-height:48px}.zy-text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid;padding-bottom:5px;font-size:16px;font-weight:500}.zy-outline{background:transparent;color:var(--zy-ink)!important}.zy-outline:hover{background:var(--zy-ink);color:white!important}.zy-gold{background:var(--zy-gold);border-color:var(--zy-gold);color:var(--zy-ink)!important}.zy-hero{display:grid;grid-template-columns:1.04fr 1fr;min-height:690px}.zy-hero-copy{padding:75px 55px 45px max(50px,calc((100vw - 1280px)/2));background:radial-gradient(ellipse at 0 70%,#e9e1ce,transparent 70%)}.zy-hero-copy h1{max-width:670px}.zy-hero-sub{max-width:520px;color:#5c5c68;font-size:19px}.zy-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.zy-hero-note{display:flex;align-items:center;gap:30px;border-top:1px solid #ccc5b5;margin-top:60px;padding-top:25px}.zy-hero-note>span{font-size:11px;letter-spacing:.15em}.zy-hero-note p{font-size:15px;line-height:1.5;margin:0}.zy-hero-photo{position:relative;min-height:610px;overflow:hidden;background:#d3c9b5}.zy-hero-photo picture,.zy-hero-photo img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;object-position:49% center}.zy-hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#161925b3)}.zy-photo-label{position:absolute;bottom:35px;left:38px;z-index:1;color:white}.zy-photo-label span{display:block;font:44px/1.2 'Cormorant Garamond',serif}.zy-photo-label small{font-size:11px;letter-spacing:.1em}.zy-ribbon{background:var(--zy-ink);color:var(--zy-paper);display:flex;justify-content:space-evenly;gap:20px;padding:26px;font:23px/1.4 'Cormorant Garamond',serif}.zy-ribbon i{color:var(--zy-gold)}.zy-section{padding:100px 0}.zy-soft{background:#eeeae1}.zy-intro{display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:100px}.zy-intro-photo{position:relative}.zy-intro-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:48% center}.zy-image-caption{display:block;padding:16px 0;border-bottom:1px solid var(--zy-line);font-size:13px}.zy-lead{font-size:22px;line-height:1.6}.zy-section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:40px}.zy-section-head p{max-width:430px}.zy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px}.zy-card{min-width:0}.zy-card>a{display:block}.zy-card-image{position:relative;overflow:hidden;background:#e0d9c9}.zy-card-image img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}.zy-card:hover img{transform:scale(1.035)}.zy-card-image>span{position:absolute;bottom:0;right:0;background:var(--zy-paper);width:48px;height:48px;display:grid;place-items:center;font-size:25px}.zy-card-copy{padding:25px 0;border-bottom:1px solid #d1cbbf}.zy-card-copy .zy-kicker{font-size:10px;margin-bottom:14px!important;letter-spacing:.09em}.zy-card h3{font-size:34px;line-height:1.12}.zy-card p:not(.zy-kicker){font-size:16px;line-height:1.7;color:#62616b}.zy-card .zy-text-link{border:0;padding:0}.zy-center{text-align:center;margin-top:50px}.zy-cert-section{background:#fbfaf7}.zy-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.zy-cert{display:block;border:1px solid var(--zy-line);background:white;padding:18px}.zy-cert img{width:100%;height:240px;object-fit:contain;background:#f3f1ed}.zy-cert>span{display:flex;justify-content:space-between;gap:16px;font-size:16px;line-height:1.45;padding-top:20px}.zy-fine{font-size:13px!important;line-height:1.65!important;color:#6c6b76;margin-top:24px!important}.zy-cta{background:var(--zy-ink);color:var(--zy-paper);text-align:center;padding:95px 0;position:relative;overflow:hidden}.zy-cta:before{content:'';position:absolute;width:620px;height:620px;border:1px solid #dfb95125;border-radius:50%;left:-350px;top:-180px;pointer-events:none}.zy-cta h2{max-width:800px;margin:0 auto 25px}.zy-cta p{max-width:620px;margin-left:auto;margin-right:auto}.zy-cta .zy-kicker{color:var(--zy-gold)}.zy-footer{background:#e9e4d8;padding:80px 0 20px}.zy-footer-grid{display:grid;grid-template-columns:1.3fr .75fr 1fr;gap:70px}.zy-footer h2{font-size:43px}.zy-footer h2 span{display:block;font-size:26px}.zy-footer h3{font:600 14px 'Figtree',sans-serif;letter-spacing:.02em}.zy-footer p,.zy-footer a{font-size:14px;overflow-wrap:anywhere}.zy-footer-grid>div>a{display:block;margin-bottom:10px}.zy-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid #c9c1b2;margin-top:45px;font-size:12px}.zy-whatsapp{position:fixed;right:24px;bottom:24px;border-radius:50%;width:58px;height:58px;background:#16834e;color:white!important;display:grid;place-items:center;z-index:45;box-shadow:0 6px 24px #0002}.zy-whatsapp svg{width:31px;height:31px}.zy-banner{padding:75px 0;background:radial-gradient(ellipse at 80% 100%,#e4ddcd,transparent 65%);border-bottom:1px solid var(--zy-line)}.zy-banner h1{max-width:1050px;margin-top:25px;font-size:clamp(48px,6vw,86px)}.zy-banner p{max-width:740px;font-size:20px;color:#61616d}.zy-reading{max-width:850px}.zy-prose{font-size:18px;line-height:1.85}.zy-prose h2{font-size:40px;margin-top:48px}.zy-prose h3{font-size:31px;margin-top:32px}.zy-prose p{margin-bottom:24px}.zy-prose ul{padding-left:24px;margin-bottom:28px}.zy-prose li{margin-bottom:12px}.zy-prose a{text-decoration:underline;text-underline-offset:4px}.zy-detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:75px;align-items:start}.zy-detail-image{margin-bottom:45px}.zy-detail-image img{width:100%;max-height:550px;object-fit:cover}.zy-sidebar{padding:32px;background:#eeeae1;border-top:3px solid var(--zy-gold);position:sticky;top:145px}.zy-sidebar h2{font-size:38px}.zy-sidebar p{font-size:16px}.zy-sidebar .zy-button{width:100%;font-size:13px;padding:16px}.zy-sidebar-phone{display:block;margin-top:20px}.zy-sidebar hr,.zy-contact-info hr{border:0;border-top:1px solid #d2cbbd;margin:28px 0}.zy-contact{display:grid;grid-template-columns:1.3fr 1fr;gap:85px;align-items:start}.zy-contact-info{background:#eeeae1;padding:40px}.zy-contact-info dt{font-size:12px;letter-spacing:.07em;text-transform:uppercase;margin-top:25px}.zy-contact-info dd{font-size:19px;margin:5px 0 0;overflow-wrap:anywhere}.zy-contact-form{margin-top:35px}.zy-contact-form input,.zy-contact-form textarea,.zy-contact-form select{font-size:16px!important;border-radius:0!important;background:#fff!important}.zy-contact-form label{font-size:15px!important}.zy-contact-form button[type=submit]{background:var(--zy-ink)!important;color:#fff!important;min-height:52px;border-radius:0!important}.zy-pagination{display:flex;justify-content:center;gap:14px;margin-top:40px}.zy-pagination a{padding:6px 16px;border:1px solid var(--zy-line)}.zy-pagination [aria-current]{background:var(--zy-ink);color:white}.zy-dialog{width:min(1200px,94vw);max-height:94dvh;padding:55px 20px 15px;background:#f7f4ed;border:0}.zy-dialog::backdrop{background:#151725e8}.zy-dialog img{max-height:76dvh;width:100%;object-fit:contain}.zy-dialog p{font-size:15px;text-align:center;margin:10px 0 0}.zy-dialog-close{position:absolute;right:16px;top:12px;background:var(--zy-ink);color:white;padding:9px 16px;border:0;font:15px 'Figtree',sans-serif;cursor:pointer}.zy-hero-copy>*{animation:zy-in .8s ease both}.zy-hero-copy>h1{animation-delay:.08s}.zy-hero-copy>.zy-hero-sub{animation-delay:.16s}@keyframes zy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(min-width:1600px){.zy-hero{min-height:780px}.zy-hero-copy{padding-top:100px}}@media(max-width:1100px){.zy-header{padding:15px 25px}.zy-header nav{gap:16px;font-size:13px}.zy-brand,.zy-brand img{width:150px}.zy-hero-copy{padding:60px 30px}.zy-wrap{width:calc(100% - 60px)}.zy-intro,.zy-detail,.zy-contact{gap:40px}.zy-footer-grid{gap:35px}.zy-grid{gap:25px}.zy-cert img{height:180px}}@media(max-width:800px){.zy-header{padding:10px 22px}.zy-brand img{height:64px}.zy-menu{display:flex;gap:12px;align-items:center;background:none;border:1px solid var(--zy-line);padding:10px 16px;font:15px 'Figtree',sans-serif}.zy-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--zy-paper);padding:25px;box-shadow:0 16px 20px #0001;align-items:stretch;font-size:17px}.zy-header nav.is-open{display:flex;flex-direction:column;gap:20px}.zy-top{padding:8px 22px;font-size:11px}.zy-hero{grid-template-columns:1fr;min-height:0}.zy-hero-copy{padding:55px 24px 35px}.zy-hero-copy h1{font-size:64px}.zy-hero-sub{font-size:18px}.zy-hero-note{margin-top:32px}.zy-hero-photo{min-height:440px}.zy-hero-photo img{object-fit:cover;object-position:center}.zy-hero-photo picture{position:absolute}.zy-ribbon{flex-wrap:wrap;font-size:19px;gap:10px 22px}.zy-ribbon i{display:none}.zy-wrap{width:calc(100% - 44px)}.zy-section{padding:65px 0}.zy-intro{grid-template-columns:1fr;gap:40px}.zy-intro-photo img{aspect-ratio:4/3}.zy-section-head{grid-template-columns:1fr;gap:0;margin-bottom:30px}.zy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zy-cert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.zy-cert{padding:10px}.zy-cert>span{font-size:14px}.zy-cert img{height:150px}.zy-footer-grid{grid-template-columns:1fr 1fr}.zy-footer-grid>div:first-child{grid-column:1/-1}.zy-detail,.zy-contact{grid-template-columns:1fr}.zy-sidebar{position:static}.zy-banner{padding:50px 0}.zy-banner p{font-size:18px}.zy-bottom{flex-direction:column;padding-right:50px}.zy-whatsapp{right:16px;bottom:16px}.zy-cta{padding:65px 0}}@media(max-width:480px){.zy-grid{grid-template-columns:1fr}.zy-card h3{font-size:35px}.zy-hero-copy h1{font-size:56px}.zy-hero-photo{min-height:340px}.zy-hero-note{gap:20px}.zy-footer-grid{grid-template-columns:1fr}.zy-cert-grid{grid-template-columns:1fr}.zy-cert img{height:auto;max-height:300px}.zy-contact-info{padding:25px}.zy-top>span{display:none}.zy-top{justify-content:center}.zy-actions{gap:20px}.zy-prose{font-size:17px}.zy-prose h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.zy-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.zy-review{margin:0;padding:30px;background:#faf8f3;border-top:2px solid #dfb951;display:flex;flex-direction:column}.zy-review-mark{font:64px/.8 'Cormorant Garamond',serif;color:#9b7728}.zy-review blockquote{margin:15px 0 28px;padding:0;border:0;font-size:17px;line-height:1.8;flex:1}.zy-review figcaption{display:flex;flex-direction:column;font-size:15px}.zy-review figcaption span{color:#676775;font-size:13px}@media(max-width:1000px){.zy-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.zy-review-grid{grid-template-columns:1fr}}
.zy-review-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b79b54 transparent;padding:4px 0 20px;scroll-behavior:smooth}.zy-review-track>.zy-review{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start;min-width:0}.zy-demo-badge{display:inline-block;align-self:flex-start;font-size:11px;letter-spacing:.1em;background:#ece2c5;padding:4px 9px;margin-bottom:20px}.zy-review-controls{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:24px}.zy-review-controls button{background:transparent;border:1px solid #c8c0b1;padding:10px 16px;min-height:44px;color:#212438;cursor:pointer;font:14px 'Figtree',sans-serif}.zy-review-controls span{font-size:14px;min-width:55px;text-align:center}@media(max-width:1000px){.zy-review-track>.zy-review{flex-basis:calc((100% - 24px)/2)}}@media(max-width:600px){.zy-review-track>.zy-review{flex-basis:90%}}@media(prefers-reduced-motion:reduce){.zy-review-track{scroll-behavior:auto}}
/* Dedicated reviews page: single-column conversation layout. */
.tpl-reviews .zy-review-grid{display:flex;flex-direction:column;gap:20px;max-width:900px;margin-inline:auto}
.tpl-reviews .zy-review{position:relative;display:flex;padding:30px 34px;background:#fff;border:1px solid #e0dcd3;border-radius:12px;box-shadow:0 4px 18px #21243805}
.tpl-reviews .zy-review-mark{display:none}
.tpl-reviews .zy-review figcaption{order:-2;position:relative;padding-left:62px;min-height:46px;justify-content:center;padding-right:105px;gap:3px}
.tpl-reviews .zy-review figcaption:before{content:'D';position:absolute;left:0;top:0;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#eeeadf;color:#716037;font:600 19px 'Figtree',sans-serif}
.tpl-reviews .zy-review figcaption strong{font-size:17px;font-weight:600;letter-spacing:0}
.tpl-reviews .zy-review figcaption span{font-size:14px;line-height:1.5;color:#72717c}
.tpl-reviews .zy-demo-badge{position:absolute;right:30px;top:30px;margin:0;border-radius:5px;font-size:10px;padding:5px 9px}
.tpl-reviews .zy-review blockquote{margin:22px 0 0;padding-top:20px;border-top:1px solid #efede7;font-size:17px;line-height:1.85;color:#444451}
@media(max-width:600px){.tpl-reviews .zy-review{padding:24px 20px}.tpl-reviews .zy-review figcaption{padding-right:0;padding-left:56px}.tpl-reviews .zy-demo-badge{position:static;order:-1;margin:18px 0 0 56px;align-self:flex-start}.tpl-reviews .zy-review blockquote{font-size:16px;margin-top:18px}.tpl-reviews .zy-review figcaption strong{font-size:16px}}
/* Archive cards preserve the section hierarchy without changing typography. */
.zy-card h2{font-size:34px;line-height:1.12}
@media(max-width:480px){.zy-card h2{font-size:35px}}
/* Full-width panoramic homepage hero. */
.zy-hero-wide{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(620px,76svh,900px);background:#212438;color:#fff;overflow:hidden}
.zy-hero-wide .zy-hero-photo{position:absolute;inset:0;z-index:-2;min-height:0;background:#212438}
.zy-hero-wide .zy-hero-photo img{object-position:70% center}
.zy-hero-wide .zy-hero-photo:after{inset:0;background:linear-gradient(90deg,rgba(15,23,40,.88) 0%,rgba(15,23,40,.62) 38%,rgba(15,23,40,.12) 76%)}
.zy-hero-wide .zy-photo-label,.zy-hero-wide .zy-hero-note{display:none}
.zy-hero-wide .zy-hero-copy{width:min(1280px,calc(100% - 100px));margin:auto;padding:80px 0;background:none}
.zy-hero-wide .zy-kicker{color:#edcf85;font-size:13px}
.zy-hero-wide h1{max-width:800px;font-size:clamp(48px,5.5vw,86px);line-height:1.08;text-wrap:balance}
.zy-hero-wide .zy-hero-sub{max-width:620px;color:#eceef3;font-size:20px}
.zy-hero-wide .zy-button{background:#dfb951;border-color:#dfb951;color:#212438!important}
.zy-hero-wide .zy-button:hover{background:#efd080}
.zy-hero-wide .zy-text-link{color:#fff}
@media(max-width:800px){.zy-hero-wide{min-height:660px}.zy-hero-wide .zy-hero-copy{width:calc(100% - 44px);padding:65px 0}.zy-hero-wide h1{font-size:clamp(44px,8vw,64px);max-width:620px}.zy-hero-wide .zy-hero-sub{font-size:18px;max-width:540px}.zy-hero-wide .zy-hero-photo img{object-position:76% center}.zy-hero-wide .zy-hero-photo:after{background:linear-gradient(90deg,#111a2ddd,#111a2d66),linear-gradient(0deg,#111a2d66,transparent)}}
@media(max-width:480px){.zy-hero-wide{min-height:650px}.zy-hero-wide h1{font-size:46px}.zy-hero-wide .zy-kicker{font-size:11px;letter-spacing:.1em}.zy-hero-wide .zy-actions{align-items:flex-start;flex-direction:column;gap:24px}}
/* Keep the panoramic hero heading legible over the dark photograph. */
.zy-site .zy-hero-wide .zy-hero-copy h1{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.3)}
