/* Contemporary ESB visual layer. Content remains in WordPress. */
body{background:#f5f3ef}#header [data-row="middle"]{background:#f5f3ef}#header .site-title{font-family:'Avenir Next',Avenir,Arial,sans-serif;font-size:18px;letter-spacing:-.5px}#header .site-logo-container{--logo-max-height:82px}#header nav a{color:#32283d;font-size:12px;letter-spacing:.05em}#header nav li:last-child>a{background:#622395;color:#fff!important;border-radius:50px;padding:13px 22px;min-height:0;margin:auto 0}#header [data-id="menu"]{align-self:center}
.esb-home{font-family:'Avenir Next',Avenir,'Segoe UI',sans-serif;--muted:#655d6b;--line:#ded6e4;overflow:clip}.esb-home .section{max-width:1360px;padding:84px 6%}.esb-home h1,.esb-home h2,.esb-home h3{font-weight:750}.esb-home h2{font-size:clamp(34px,4vw,54px);letter-spacing:-2.4px;line-height:1.1}.esb-home p{line-height:1.75}.esb-home .eyebrow{letter-spacing:1.8px;font-size:10px;display:flex;align-items:center;gap:10px}.esb-home .eyebrow:before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.esb-home .hero{max-width:1440px;gap:4%;padding:42px 6% 72px;min-height:700px;align-items:center}.esb-home .hero-copy{padding:0 0 20px}.esb-home h1{font-size:clamp(68px,7.3vw,108px);letter-spacing:-6px;line-height:.98;margin:30px 0}.esb-home h1 em{display:inline-block;position:relative;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:500;letter-spacing:-5px}.esb-home h1 em:after{content:'';position:absolute;left:0;right:0;bottom:0;border-bottom:3px solid #b59acc;transform:rotate(-3deg)}.esb-home .intro{max-width:440px;font-size:17px}.esb-home .hero-image{height:610px;min-height:0;border-radius:170px 24px 24px 24px;transform:rotate(2deg);box-shadow:16px 18px 0 #e4d9ed}.esb-home .hero-image img{object-position:48% 56%;transform:scale(1.035)}.esb-home .image-label{top:55px;left:auto;right:25px;max-width:200px;text-align:right;line-height:1.7;font-size:8px}.esb-home .image-tag{left:28px;bottom:32px;border:0;padding:20px 24px;background:#ffffffed;color:#29212f;border-radius:18px;backdrop-filter:blur(8px)}.esb-home .image-tag strong{font-size:29px;letter-spacing:-1px}.esb-home .image-tag span{color:var(--purple);font-size:8px;font-weight:bold}.esb-home .hero-note{margin-top:30px;font-size:9px;letter-spacing:1.2px}.esb-home .actions{gap:25px}.esb-home .button{border-radius:50px;padding:17px 25px;box-shadow:0 6px 16px #6223951a;transition:transform .18s,box-shadow .18s;font-size:13px}.esb-home .button:hover{transform:translateY(-3px);box-shadow:0 10px 24px #62239530}.esb-home .text-link{border-bottom:1px solid #baaac8;padding-bottom:5px}.esb-home .discipline{background:#622395;color:#fff;padding:23px 7%;font-size:9px;letter-spacing:1.7px;justify-content:center;gap:35px}.esb-home .discipline i{color:#dac8ed;font-style:normal}
.esb-home .esb-finder{margin:50px auto 0;background:#eee7f4;border-radius:32px;padding:48px 5%;max-width:1200px;position:relative}.esb-home .esb-finder h2{max-width:750px}.esb-home .finder-controls{gap:18px;margin:25px 0}.esb-home .finder-controls select{border:1px solid #d6c8e1;border-radius:12px;padding:16px 40px 16px 16px;font-family:inherit}.esb-home .finder-result{border:0;border-radius:20px;padding:28px 30px;box-shadow:0 6px 30px #45245608}.esb-home .finder-result h3{font-size:27px}.esb-home .finder-result p:not(.eyebrow){max-width:880px;font-size:14px}.esb-home .section-heading{gap:60px}.esb-home .section-heading>p{font-size:15px}.esb-home .service-explainer{background:transparent;border-left:2px solid #bfa4d4;margin-bottom:35px}.esb-home .service-explainer p{font-size:14px}.esb-home .services{border:0;gap:20px}.esb-home .services article,.esb-home .services article+article{background:white;border:1px solid #e4dce9;border-radius:22px;padding:30px;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 3px 10px #36244203}.esb-home .services article:hover{transform:translateY(-4px);box-shadow:0 16px 35px #3624420c}.esb-home .services article.package-selected{background:#fff;border:2px solid var(--purple);box-shadow:0 10px 30px #62239512;padding:29px}.esb-home .services .number{display:inline-flex;border-radius:50px;padding:6px 11px;background:#f1eaf7;font-size:9px;letter-spacing:1.2px;margin-bottom:25px}.esb-home .services h3{font-size:30px;letter-spacing:-1px}.esb-home .services p{font-size:14px}.esb-home .services li{font-size:13px}.esb-home details>summary:after{border-radius:50%;width:25px;height:25px;text-align:center;background:#eee6f4;flex:none;padding:1px;font-weight:400}.esb-home .services article a{font-size:13px}.esb-home .service-note{padding:22px 0 0;font-size:13px}
.esb-home .approach{background:#282030;border-radius:32px;max-width:1200px;position:relative;overflow:hidden}.esb-home .approach:after{content:'';width:420px;height:420px;border:1px solid #ffffff12;border-radius:50%;position:absolute;left:-220px;bottom:-220px;pointer-events:none;box-shadow:0 0 0 35px #ffffff05,0 0 0 70px #ffffff03}.esb-home .approach h2{letter-spacing:-2px}.esb-home .approach p{font-size:14px}.esb-home .journey-controls button{border-radius:50px;padding:10px 14px;font-family:inherit;font-size:10px;transition:background .18s}.esb-home .steps li{border-bottom:0;padding:25px 0;min-height:185px}.esb-home .steps li>span{font-family:Georgia,serif;font-style:italic;font-size:46px;line-height:1}.esb-home .steps h3{font-size:25px}.esb-home .about{padding-top:100px;align-items:start;border:0;gap:9%;grid-template-columns:.8fr 1.2fr}.esb-home .about-mark{position:sticky;top:110px;border-radius:50% 50% 24px 24px;background:#ece6f0;padding:32px;box-shadow:0 14px 0 #ded3e8}.esb-home .about-mark img{border-radius:20px}.esb-home .about p{font-size:15px}.esb-home .credentials{margin:25px 0}.esb-home .profile-detail{border-top:1px solid var(--line);padding-top:28px}.esb-home .profile-detail h3{margin-bottom:12px;font-size:23px}.esb-home .testimonials{background:#eee8f1;max-width:none;padding-inline:max(6%,calc((100% - 1197px)/2))}.esb-home .testimonials h2{max-width:740px}.esb-home .quotes{gap:22px}.esb-home .quotes>figure{border:0;border-radius:22px;background:#fff;padding:30px;margin:0}.esb-home .quotes blockquote{font-size:22px;letter-spacing:-.5px;line-height:1.6}.esb-home .quotes>figure:before{content:'“';display:block;font-family:Georgia,serif;font-size:66px;color:#9b6cbb;height:55px;line-height:1}.esb-home .quotes figcaption strong{font-size:14px}.esb-home .quotes figcaption span{font-size:11px}.esb-home .testimonial-full blockquote{font-size:15px}.esb-home .esb-faq{border:0}.esb-home .esb-faq details{border:1px solid #e1d8e7;background:#fff;border-radius:16px;padding:4px 24px;margin:12px 0}.esb-home .esb-faq details p{font-size:14px}.esb-home .esb-faq summary{font-size:16px}.esb-home .booking-grid{gap:20px;margin-top:32px}.esb-home .booking-grid>div{background:#fff;border-radius:20px;border:1px solid #e6dfea;padding:30px}.esb-home .booking-grid h3{font-size:25px}.esb-home .booking-grid p{font-size:14px;margin-bottom:0}.esb-home #booking{padding-top:10px}.esb-home #enquiry{background:#eee7f4;border-radius:32px;max-width:1200px;padding:55px 6%;margin:0 auto 65px}.esb-home .esb-enquiry-form{max-width:none}.esb-home .enquiry-grid{gap:0 22px}.esb-home .esb-enquiry-form input,.esb-home .esb-enquiry-form select,.esb-home .esb-enquiry-form textarea{border:1px solid #d4c6df;border-radius:12px;font-size:15px;padding:14px}.esb-home .esb-enquiry-form input:focus,.esb-home .esb-enquiry-form textarea:focus{outline:2px solid #9d6abf;outline-offset:2px}.esb-home .contact{max-width:none;background:#362046;padding-block:75px}.esb-home .contact .eyebrow{justify-content:center}.esb-home .contact h2{font-size:clamp(49px,6vw,76px);letter-spacing:-3px}.esb-home .contact h2 em{font-family:Georgia,serif;font-style:italic;color:#dac1ee}.esb-home .contact .contact-phone{font-size:15px}.esb-home .contact .button{background:#fff;color:#622395}#footer{background:#f5f3ef}
@media(min-width:1500px){.esb-home .hero{padding-inline:7%}.esb-home .hero-image{height:650px}}
@media(max-width:1000px){.esb-home .esb-finder,.esb-home .approach,.esb-home #enquiry{margin-inline:4%;border-radius:24px}.esb-home h1{font-size:76px;letter-spacing:-5px}.esb-home .hero-image{height:580px;border-top-left-radius:120px}.esb-home .hero{gap:25px}.esb-home .actions{gap:18px}.esb-home .services h3{font-size:25px}.esb-home .about{gap:6%;grid-template-columns:.8fr 1.2fr}.esb-home .image-label{top:50px;max-width:150px}.esb-home .discipline{gap:25px}}
@media(max-width:600px){#header .site-logo-container{--logo-max-height:65px}#header .site-title{font-size:15px}.esb-home .hero{padding:28px 6% 45px;gap:25px}.esb-home h1{font-size:76px;letter-spacing:-4px}.esb-home h1 em{letter-spacing:-4px}.esb-home .hero-image{height:470px;min-height:0;margin:0 8px 15px 0;border-top-left-radius:115px;transform:rotate(1.5deg);box-shadow:10px 12px 0 #e4d9ed}.esb-home .hero-copy{padding:0}.esb-home .intro{font-size:16px}.esb-home .actions{gap:16px;flex-wrap:wrap}.esb-home .button{padding:15px 20px}.esb-home .image-label{right:20px}.esb-home .image-tag{padding:18px;left:22px;bottom:25px}.esb-home .discipline{padding:20px 6%;gap:13px 20px;font-size:8px}.esb-home .section{padding:58px 6%}.esb-home h2{letter-spacing:-1.6px;font-size:36px}.esb-home .esb-finder{padding:30px 6%;margin-top:30px}.esb-home .finder-result{padding:22px}.esb-home .finder-controls label{font-size:12px}.esb-home .finder-result h3{font-size:24px}.esb-home .services article,.esb-home .services article+article{padding:26px}.esb-home .services article.package-selected{padding:25px}.esb-home .services h3{font-size:28px}.esb-home .approach{padding:38px 7%;gap:20px}.esb-home .journey-controls{gap:7px}.esb-home .journey-controls button{padding:9px 11px}.esb-home .steps li{min-height:140px;padding-top:15px}.esb-home .about{grid-template-columns:1fr}.esb-home .about-mark{position:static;max-width:310px;min-height:0;padding:24px;margin:0 auto 15px}.esb-home .quotes{gap:18px}.esb-home .quotes>figure{padding:26px}.esb-home .quotes blockquote{font-size:21px}.esb-home .esb-faq details{padding:4px 18px}.esb-home .esb-faq summary{font-size:14px}.esb-home .booking-grid>div{padding:26px}.esb-home #booking{padding-top:0}.esb-home #enquiry{padding:35px 6%;margin-bottom:35px}.esb-home .contact h2{font-size:55px}.esb-home .contact{padding-block:55px}}
@media(prefers-reduced-motion:reduce){.esb-home .button,.esb-home .services article,.esb-home .journey-controls button{transition:none}.esb-home .button:hover,.esb-home .services article:hover{transform:none}}
/* Keep the display type and header compact across screen sizes. */
.esb-home h1,.esb-home h2,.esb-home h3{font-weight:650}.esb-home h1{font-size:clamp(64px,6.4vw,92px);letter-spacing:-5px}#header nav li:last-child{align-items:center}#header nav li:last-child>a{height:auto!important;align-self:center;line-height:1.3;padding-block:14px}#header .site-title{font-weight:600}@media(max-width:1000px){.esb-home h1{font-size:68px;letter-spacing:-4px}}@media(max-width:600px){.esb-home h1{font-size:68px;letter-spacing:-3px}}

/* Original photography throughout the homepage. */
.esb-home .esb-photo{margin:0;position:relative;overflow:hidden;border-radius:22px;background:#2c2333}.esb-home .esb-photo img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}.esb-home .esb-photo .photo-caption{position:absolute;bottom:0;left:0;right:0;margin:0;padding:45px 25px 20px;color:#fff;background:linear-gradient(transparent,#201629c9);font-size:12px;letter-spacing:.5px}.esb-home #services>.esb-photo{height:390px;margin:0 0 30px}.esb-home #services>.esb-photo img{object-position:50% 48%}.esb-home .approach .esb-photo{height:250px;margin-top:28px}.esb-home .approach .esb-photo img{object-position:50% 60%}.esb-home .about-mark .esb-photo{margin-top:25px;height:320px;width:100%;border-radius:16px}.esb-home .about-mark .esb-photo img{height:100%;object-fit:cover;object-position:52% 45%;border-radius:0}.esb-home .about-mark .esb-photo .photo-caption{font-size:11px;padding:40px 18px 15px}.esb-home .about-mark{border-radius:24px;padding:25px;position:static}.esb-home .about-mark>figure:not(.esb-photo){max-width:280px;margin:auto}.esb-home .approach{align-items:start}@media(max-width:600px){.esb-home #services>.esb-photo{height:260px}.esb-home .approach .esb-photo{height:220px}.esb-home .about-mark{max-width:100%;padding:20px}.esb-home .about-mark>figure:not(.esb-photo){max-width:200px}.esb-home .about-mark .esb-photo{height:260px}.esb-home .esb-photo .photo-caption{font-size:11px}}
.esb-home #services>.esb-photo{height:auto;aspect-ratio:16/9}.esb-home #services>.esb-photo img{position:absolute;inset:0;object-position:50% 20%}@media(max-width:600px){.esb-home #services>.esb-photo{height:260px;aspect-ratio:auto}.esb-home #services>.esb-photo img{object-position:50% 50%}}
.esb-home .package-comparison{padding-top:15px}.esb-home .comparison-scroll{overflow-x:auto;margin:30px 0 15px;border:1px solid #ded4e6;border-radius:18px;background:#fff}.esb-home .comparison-scroll table{border:0;border-collapse:collapse;width:100%;min-width:820px;margin:0;font-size:13px;line-height:1.5}.esb-home .comparison-scroll caption{text-align:left;padding:18px 22px;font-weight:600;color:#622395}.esb-home .comparison-scroll th,.esb-home .comparison-scroll td{padding:18px;text-align:left;border:0;border-bottom:1px solid #e8e1ed;vertical-align:top}.esb-home .comparison-scroll thead{background:#622395;color:white}.esb-home .comparison-scroll thead th{font-weight:600}.esb-home .comparison-scroll tbody th{width:32%;font-weight:600;color:#302438}.esb-home .comparison-scroll tbody tr:nth-child(even){background:#f7f3fa}.esb-home .comparison-scroll tbody tr:last-child>*{border-bottom:0}.esb-home .comparison-scroll th:nth-child(4),.esb-home .comparison-scroll td:nth-child(4){background:#62239509}.esb-home .package-comparison>.button{margin-top:15px}
/* Keep primary navigation available while scrolling. */
#header{position:sticky;top:0;z-index:999;box-shadow:0 5px 22px #30203f0b}
body.admin-bar #header{top:32px}
.esb-home [id]{scroll-margin-top:155px}
@media(max-width:782px){body.admin-bar #header{top:46px}.esb-home [id]{scroll-margin-top:150px}}
@media(max-width:600px){body.admin-bar #header{top:0}}
