@font-face{font-family:ShenSerif;src:url(cormorant-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:ShenSerif;src:url(cormorant-500.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:ShenSans;src:url(inter-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:ShenSans;src:url(inter-500.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:ShenArabic;src:url(arabic-400.woff2) format('woff2');font-weight:400;font-display:swap}
.shens-site{--ink:#29221e;--deep:#201b17;--paper:#faf7f1;--cream:#f0e9de;--gold:#c9ab79;--muted:#756e64;--line:#d9cebd;background:var(--paper);color:var(--ink);font-family:ShenSans,Arial,sans-serif;font-size:16px;line-height:1.75;margin:0}
.shens-site *{box-sizing:border-box}.shens-site a{color:inherit}.shens-site img{max-width:100%;vertical-align:middle}.shens-site p{margin:0}.shens-site p+p{margin-top:18px}.shens-site .elementor-widget-text-editor{font-family:ShenSans,Arial,sans-serif;color:inherit;font-size:16px;font-weight:400;line-height:1.8}
.shens-site .elementor-widget:not(:last-child){margin-bottom:0}.shens-site .elementor-element{--widgets-spacing:0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px}
.shens-site .e-con{--container-default-padding-top:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;--container-default-padding-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;padding:0;min-width:0}
.shens-site .elementor-widget-heading .elementor-heading-title{font-family:ShenSerif,Georgia,serif;font-weight:400;color:inherit;line-height:1.06;letter-spacing:-.025em;margin:0}
.shens-site h1.elementor-heading-title{font-size:72px}.shens-site h2.elementor-heading-title{font-size:52px}.shens-site h3.elementor-heading-title{font-size:29px;line-height:1.2}.shens-site .shens-kicker .elementor-heading-title{font-family:ShenSans,Arial,sans-serif;font-size:10px;font-weight:500;line-height:1.6;letter-spacing:.2em;color:#8c724d;text-transform:uppercase}
.shens-site .shens-wrap{width:min(1200px,calc(100% - 112px));max-width:1200px;margin-inline:auto;display:flex;flex-direction:column;gap:34px}
.shens-site .shens-section{padding-block:94px;width:100%}.shens-site .shens-cream{background:var(--cream)}
.shens-site .shens-two-col,.shens-site .shens-editorial-row,.shens-site .shens-faq-grid,.shens-site .shens-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;width:100%}
.shens-site .shens-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:46px;width:100%}
.shens-site .shens-section-heading,.shens-site .shens-editorial-copy,.shens-site .shens-intro-copy,.shens-site .shens-location-copy,.shens-site .shens-contact-copy,.shens-site .shens-contact-address,.shens-site .shens-faq-heading,.shens-site .shens-review-heading,.shens-site .shens-review-copy,.shens-site .shens-booking-copy{display:flex;flex-direction:column;gap:22px;min-width:0}
.shens-site .shens-title-row{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:50px;width:100%}.shens-site .shens-title-row .shens-section-heading{max-width:710px}.shens-site .shens-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:14px 25px;align-items:center;margin-top:9px}
.shens-site .shens-button{width:auto;max-width:100%}.shens-site .shens-button .elementor-button{font-family:ShenSans,Arial,sans-serif;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.025em;color:var(--paper);background:var(--ink);padding:16px 25px;border:1px solid transparent;border-radius:1px;box-shadow:none;transition:background .2s,color .2s,border-color .2s;min-height:48px}
.shens-site .shens-button .elementor-button:hover{background:#4b3d31;color:#fff}.shens-site .shens-button .elementor-button-content-wrapper{align-items:center;gap:9px}.shens-site .shens-gold .elementor-button{background:var(--gold);color:var(--ink)}.shens-site .shens-gold .elementor-button:hover{background:#dfc397;color:#201b17}
.shens-site .shens-outline .elementor-button{background:transparent;color:inherit;border-color:var(--line)}.shens-site .shens-outline .elementor-button:hover{border-color:var(--ink);background:transparent;color:var(--ink)}
.shens-site .shens-text-button .elementor-button,.shens-site .shens-language .elementor-button,.shens-site .shens-menu-link .elementor-button,.shens-site .shens-phone-text .elementor-button{padding:10px 0;min-height:40px;background:transparent;border:0;border-radius:0;color:inherit;box-shadow:inset 0 -1px currentColor}
.shens-site .shens-text-button .elementor-button:hover,.shens-site .shens-language .elementor-button:hover{color:#937347;background:transparent}.shens-site .shens-on-dark .elementor-button{background:transparent;color:var(--paper);border-color:#7c6c5a}.shens-site .shens-on-dark .elementor-button:hover{background:#493c31;color:#fff}
.shens-site a:focus-visible,.shens-site [tabindex]:focus-visible{outline:2px solid #ac8250;outline-offset:5px}.shens-site .shens-skip{position:fixed;top:-100px;left:16px;z-index:200000;padding:10px 18px;background:var(--paper);color:var(--ink)}.shens-site .shens-skip:focus{top:12px}
.shens-site .shens-header{background:var(--deep);color:var(--paper);position:relative;z-index:50;border-bottom:1px solid #4a4035;padding-block:19px;width:100%}
.shens-site .shens-header>.shens-wrap{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:30px}.shens-site .shens-brand{display:flex;flex-direction:column;gap:4px;width:175px;flex:none}.shens-site .shens-brand-name .elementor-heading-title{font-size:35px;letter-spacing:.12em;font-weight:500;line-height:1}.shens-site .shens-brand-sub .elementor-heading-title{font-family:ShenSans,Arial,sans-serif;font-size:8px;letter-spacing:.28em;line-height:1.4}
.shens-site .shens-header-actions{display:flex;flex-direction:row;align-items:center;gap:26px;width:auto}.shens-site .shens-language .elementor-button{box-shadow:none;white-space:nowrap;font-size:12px}.shens-site .shens-header-call .elementor-button{padding:13px 19px;min-height:44px;white-space:nowrap}
.shens-site .shens-main-nav{flex:1;width:auto}.shens-site .shens-main-nav .elementor-nav-menu--main>.elementor-nav-menu{justify-content:center;gap:22px}.shens-site .shens-main-nav .elementor-nav-menu a.elementor-item{font-family:ShenSans,Arial,sans-serif;font-size:11px;font-weight:400;color:var(--paper);padding:14px 0;line-height:1.4;background:transparent}.shens-site .shens-main-nav .elementor-item:after{background:var(--gold);height:1px}.shens-site .shens-main-nav .elementor-item:hover,.shens-site .shens-main-nav .elementor-item.elementor-item-active{color:var(--gold)}
.shens-site .shens-hero{background:var(--deep);color:var(--paper);padding:55px 0 0;width:100%}.shens-site .shens-hero>.shens-wrap{gap:35px}.shens-site .shens-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;width:100%;align-items:center}.shens-site .shens-hero-copy{display:flex;flex-direction:column;gap:20px;padding-block:12px 20px}.shens-site .shens-hero-copy h1{font-size:clamp(62px,5.2vw,80px);line-height:1.02;letter-spacing:-.035em}.shens-site .shens-hero-copy h1 span{color:#cbb18a;font-size:.64em;line-height:1.35;display:inline-block;margin-top:10px}.shens-site .shens-hero .shens-kicker .elementor-heading-title{color:#c4ac86}
.shens-site .shens-hero-tagline{font-family:ShenSerif,Georgia,serif!important;font-size:27px!important;line-height:1.25!important}.shens-site .shens-hero-tagline br{display:none}.shens-site .shens-hero-description{max-width:360px;color:#c1b8ac!important;font-size:13px!important;line-height:1.85!important}.shens-site .shens-hero-media{min-width:0}.shens-site .shens-hero-photo img{display:block;width:100%;height:535px;object-fit:cover;object-position:50% 47%}.shens-site .shens-hero-photo{width:100%}
.shens-site .shens-hero-location{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #4a4035;padding:19px 0 21px;color:#c5bbaa}.shens-site .shens-hero-location .elementor-widget-text-editor{font-size:9px;letter-spacing:.15em}.shens-site .shens-hero-location .elementor-button{font-size:11px;min-height:38px;padding:8px 0}
.shens-site .shens-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.shens-site .shens-intro-heading{display:flex;flex-direction:column;gap:23px}.shens-site .shens-intro-copy .elementor-widget-text-editor{color:var(--muted);font-size:15px}
.shens-site .shens-services-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.shens-site .shens-service-card{display:flex;flex-direction:column;gap:27px}.shens-site .shens-service-photo img{width:100%;height:270px;object-fit:cover;display:block}.shens-site .shens-service-card-copy{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.shens-site .shens-service-card-copy .elementor-widget-text-editor{font-size:14px;color:var(--muted)}.shens-site .shens-service-card h3{font-size:31px}
.shens-site .shens-more-services{display:flex;flex-direction:row;align-items:baseline;gap:38px;padding-top:25px;border-top:1px solid var(--line);margin-top:12px}.shens-site .shens-more-services>.shens-kicker{flex:none}.shens-site .shens-inline-menu{display:flex;flex-flow:row wrap;gap:8px 26px}.shens-site .shens-menu-link .elementor-button{font-size:11px;box-shadow:none;min-height:34px;padding:7px 0}
.shens-site .shens-editorial-image img,.shens-site .shens-about-image img,.shens-site .shens-bath-image img{width:100%;height:535px;object-fit:cover;display:block}.shens-site .shens-editorial-copy .elementor-widget-text-editor{font-size:15px;color:var(--muted)}.shens-site .shens-editorial-row .shens-editorial-copy{padding-inline:8px}
.shens-site .shens-steps{display:flex;flex-direction:column;gap:22px;margin-block:9px}.shens-site .shens-step{border-top:1px solid var(--line);padding-top:19px;display:flex;flex-direction:column;gap:8px}.shens-site .shens-step h3{font-size:27px}.shens-site .shens-step .elementor-widget-text-editor{font-size:13px}
.shens-site .shens-staff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 28px;align-items:start}.shens-site .shens-staff-card{display:flex;flex-direction:column;gap:15px;align-items:flex-start}.shens-site .shens-staff-photo{width:100%}.shens-site .shens-staff-photo img{width:100%;height:auto!important;object-fit:contain;display:block}.shens-site .shens-staff-call .elementor-button{font-size:12px}.shens-site .shens-team-section .shens-section-heading>.elementor-widget-text-editor{max-width:580px;color:var(--muted);font-size:14px}
.shens-site .shens-review-home{padding-block:70px;background:#e9dfce}.shens-site .shens-review-row{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.shens-site .shens-review-copy .elementor-widget-text-editor{font-size:15px;color:#6b6053}.shens-site .shens-review-empty{border:1px solid var(--line);padding:46px;display:flex;flex-direction:column;gap:25px;max-width:770px}.shens-site .shens-review-section .shens-wrap{align-items:center}.shens-site .shens-review-empty .elementor-widget-text-editor{color:var(--muted)}
.shens-site .shens-location{border-top:1px solid var(--line)}.shens-site .shens-map,.shens-site .shens-contact-map{width:100%;filter:saturate(.65)}.shens-site .shens-map iframe,.shens-site .shens-contact-map iframe{display:block;width:100%;height:380px;border:0}.shens-site .shens-location-copy .elementor-widget-text-editor{color:var(--muted);font-size:14px}
.shens-site .shens-booking{background:var(--ink);color:var(--paper);padding-block:65px}.shens-site .shens-booking-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:50px}.shens-site .shens-booking-copy{max-width:700px;gap:16px}.shens-site .shens-booking .shens-kicker .elementor-heading-title{color:var(--gold)}.shens-site .shens-booking h2{font-size:51px}.shens-site .shens-booking-copy .elementor-widget-text-editor{font-size:14px;color:#bfb5a8}.shens-site .shens-booking-action{display:flex;flex-direction:column;align-items:center;gap:12px;flex:none}.shens-site .shens-phone-text .elementor-button{box-shadow:none;font-size:13px}
.shens-site .shens-page-hero{background:var(--deep);color:var(--paper);padding-block:33px 65px}.shens-site .shens-page-hero>.shens-wrap{gap:34px}.shens-site .shens-breadcrumb{font-size:10px!important;color:#bbaa94!important}.shens-site .shens-page-heading-row{display:grid;grid-template-columns:1.12fr 1fr;gap:80px;align-items:end}.shens-site .shens-page-heading{display:flex;flex-direction:column;gap:16px}.shens-site .shens-page-heading h1{font-size:66px}.shens-site .shens-page-hero .shens-kicker .elementor-heading-title{color:#bc9f71}.shens-site .shens-page-description{font-size:14px!important;color:#c3b7a6!important;line-height:1.85!important;max-width:420px}
.shens-site .shens-principle{display:flex;flex-direction:column;gap:20px;border-top:1px solid #bca989;padding-top:27px}.shens-site .shens-principle .elementor-widget-text-editor{font-size:14px;color:var(--muted)}
.shens-site .shens-menu-section{padding-block:45px 32px;background:var(--cream)}.shens-site .shens-menu-section .shens-wrap{gap:17px}.shens-site .shens-service-jumps{display:flex;flex-direction:row;flex-wrap:wrap;gap:9px}.shens-site .shens-service-jump .elementor-button{background:transparent;color:var(--ink);font-size:11px;padding:11px 16px;border:1px solid #cfc2ae;min-height:39px}.shens-site .shens-service-jump .elementor-button:hover{background:var(--ink);color:var(--paper)}
.shens-site .shens-service-collection{padding-block:50px 90px}.shens-site .shens-service-list{display:flex;flex-direction:column;gap:70px}.shens-site .shens-service-detail{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:30px;border-top:1px solid var(--line);scroll-margin-top:30px}.shens-site .shens-service-detail-photo img{width:100%;height:370px;object-fit:cover;display:block}.shens-site .shens-service-detail-copy{display:flex;flex-direction:column;gap:20px}.shens-site .shens-service-detail h2{font-size:44px}.shens-site .shens-service-detail-copy .elementor-widget-text-editor{font-size:14px;color:var(--muted)}.shens-site .shens-service-note{font-size:13px!important}.shens-site .shens-service-reverse>.shens-service-detail-photo{order:2}.shens-site .shens-service-reverse>.shens-service-detail-copy{order:1}
.shens-site .shens-faq-section{background:var(--cream)}.shens-site .shens-faq-grid{align-items:start;grid-template-columns:.8fr 1.2fr}.shens-site .shens-faq-heading .elementor-widget-text-editor{font-size:14px;color:var(--muted)}.shens-site .shens-faq .elementor-accordion-item{border:0!important;border-top:1px solid #cfc2ae!important}.shens-site .shens-faq .elementor-accordion-item:last-child{border-bottom:1px solid #cfc2ae!important}.shens-site .shens-faq .elementor-tab-title{padding:23px 0;font-family:ShenSans,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.7;color:var(--ink)!important}.shens-site .shens-faq .elementor-accordion-title{color:inherit!important}.shens-site .shens-faq .elementor-tab-content{border:0;padding:0 28px 25px 0;font-family:ShenSans,Arial,sans-serif;font-size:13px;line-height:1.85;color:var(--muted)}.shens-site .shens-faq .elementor-accordion-icon{font-size:10px;color:#8c724d}
.shens-site .shens-contact-grid{align-items:start}.shens-site .shens-contact-number .elementor-button{font-family:ShenSerif,Georgia,serif;font-size:41px;padding:10px 0;background:transparent;color:var(--ink)}.shens-site .shens-contact-address{background:var(--cream);padding:38px}.shens-site .shens-contact-address h2{font-size:40px}.shens-site .shens-contact-copy .elementor-widget-text-editor{color:var(--muted);font-size:14px}.shens-site .shens-address{font-size:18px!important}
.shens-site .shens-footer{background:var(--deep);color:#bfb3a1;padding:68px 0 90px}.shens-site .shens-footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1.15fr 1.1fr;gap:45px}.shens-site .shens-footer-brand,.shens-site .shens-footer-column{display:flex;flex-direction:column;gap:20px;align-items:flex-start}.shens-site .shens-footer-wordmark .elementor-heading-title{font-size:46px;letter-spacing:.1em;color:var(--paper)}.shens-site .shens-footer-column h3{font-family:ShenSans,Arial,sans-serif;font-size:12px;letter-spacing:.02em;color:var(--paper)}.shens-site .shens-footer .elementor-widget-text-editor{font-size:12px;line-height:1.9}.shens-site .shens-footer .shens-kicker .elementor-heading-title{font-size:8px;color:#b69a73;letter-spacing:.22em}.shens-site .shens-footer-nav .elementor-nav-menu--main .elementor-nav-menu{display:flex;flex-direction:column;gap:0}.shens-site .shens-footer-nav .elementor-nav-menu a{font-family:ShenSans,Arial,sans-serif;font-size:12px;line-height:1.5;padding:5px 0;color:#bfb3a1;background:transparent}.shens-site .shens-footer-nav .elementor-nav-menu a:hover{color:var(--gold)}
.shens-site .shens-footer-phone .elementor-button{padding:0;background:transparent;color:var(--paper);font-size:18px;min-height:28px}.shens-site .shens-footer .shens-outline .elementor-button{border-color:#655342;font-size:11px;min-height:41px;padding:12px 17px}.shens-site .shens-footer .shens-outline .elementor-button:hover{color:var(--paper);border-color:var(--gold)}.shens-site .shens-footer .shens-text-button .elementor-button{font-size:11px}.shens-site .shens-footer-bottom{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid #493c30;padding-top:25px;margin-top:20px}.shens-site .shens-footer-bottom .elementor-widget-text-editor{font-size:10px}
.shens-site .shens-floating{height:0;min-height:0;overflow:visible;position:static}.shens-site .shens-float{position:fixed!important;bottom:calc(22px + env(safe-area-inset-bottom));z-index:9998;width:56px!important;height:56px!important;max-width:56px!important;margin:0!important}.shens-site .shens-float-phone{left:24px}.shens-site .shens-float-wa{right:24px}.shens-site .shens-float .elementor-button{display:flex!important;align-items:center;justify-content:center;width:56px!important;height:56px!important;min-height:56px!important;padding:0!important;border:0!important;border-radius:50%!important;box-shadow:0 5px 20px #0003;color:#fff!important}.shens-site .shens-float-phone .elementor-button{background:#795d44!important}.shens-site .shens-float-wa .elementor-button{background:#178b53!important}.shens-site .shens-float .elementor-button-icon{display:flex;align-items:center;font-size:22px;margin:0}.shens-site .shens-float svg{width:23px;height:23px;fill:white}.shens-site .shens-float .elementor-button-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.shens-site .shens-float .elementor-button-content-wrapper{gap:0}
.shens-site.shens-ar,.shens-site.shens-ar .elementor-widget-text-editor,.shens-site.shens-ar .elementor-button,.shens-site.shens-ar .elementor-nav-menu a,.shens-site.shens-ar .elementor-tab-title,.shens-site.shens-ar .elementor-tab-content{font-family:ShenArabic,Arial,sans-serif!important;letter-spacing:0!important}.shens-site.shens-ar .elementor-widget-heading .elementor-heading-title{font-family:ShenArabic,Arial,sans-serif;letter-spacing:0;line-height:1.6}.shens-site.shens-ar .shens-brand-name .elementor-heading-title,.shens-site.shens-ar .shens-footer-wordmark .elementor-heading-title{font-family:ShenSerif,Georgia,serif;line-height:1}.shens-site.shens-ar .shens-brand-sub .elementor-heading-title{font-family:ShenSans,Arial,sans-serif;font-size:8px}.shens-site.shens-ar h1.elementor-heading-title{font-size:48px}.shens-site.shens-ar h2.elementor-heading-title{font-size:34px}.shens-site.shens-ar h3.elementor-heading-title{font-size:23px}.shens-site.shens-ar .shens-hero-copy h1{font-size:50px;line-height:1.5}.shens-site.shens-ar .shens-hero-copy h1 span{font-size:.7em}.shens-site.shens-ar .shens-kicker .elementor-heading-title{font-size:11px}.shens-site.shens-ar .shens-hero-tagline{font-family:ShenArabic,Arial,sans-serif!important;font-size:20px!important}.shens-site.shens-ar .shens-hero-location .elementor-widget-text-editor{font-size:10px;letter-spacing:0}.shens-site.shens-ar .shens-contact-number,.shens-site.shens-ar .shens-footer-phone,.shens-site.shens-ar .shens-phone-text{direction:ltr}.shens-site.shens-ar .shens-faq .elementor-tab-content{padding:0 0 25px 28px}
@media(min-width:1025px){.shens-site .shens-main-nav .elementor-menu-toggle{display:none!important}}
@media(max-width:1150px) and (min-width:1025px){.shens-site .shens-wrap{width:calc(100% - 72px)}.shens-site .shens-header>.shens-wrap{gap:20px}.shens-site .shens-brand{width:145px}.shens-site .shens-main-nav .elementor-nav-menu--main>.elementor-nav-menu{gap:16px}.shens-site .shens-header-actions{gap:16px}.shens-site .shens-hero-copy h1{font-size:62px}}
@media(max-width:1024px){
 .shens-site .shens-wrap{width:calc(100% - 64px)}.shens-site .shens-section{padding-block:65px}.shens-site h2.elementor-heading-title{font-size:42px}.shens-site .shens-header{padding-block:17px}.shens-site .shens-header>.shens-wrap{gap:20px}.shens-site .shens-brand{width:auto;margin-inline-end:auto}.shens-site .shens-main-nav{flex:0;width:auto;order:3;position:static}.shens-site .shens-header-actions{order:2;gap:20px}.shens-site .shens-main-nav .elementor-menu-toggle{display:flex!important;color:var(--paper);background:transparent;font-size:22px;padding:8px}.shens-site .shens-main-nav .elementor-nav-menu--dropdown{background:var(--deep);position:absolute!important;top:100%!important;left:0!important;width:100%!important;margin-top:0!important;z-index:100;border-top:1px solid #493c30}.shens-site .shens-main-nav .elementor-nav-menu--dropdown a{font-family:ShenSans,Arial,sans-serif;font-size:15px;padding:17px 32px;color:var(--paper);border-bottom:1px solid #493c30}.shens-site .shens-main-nav .elementor-nav-menu--dropdown a:hover{background:#46392e}.shens-site .shens-main-nav .elementor-nav-menu--main{display:none!important}
 .shens-site .shens-hero{padding-top:35px}.shens-site .shens-hero-grid{gap:30px}.shens-site .shens-hero-copy h1{font-size:53px}.shens-site .shens-hero-photo img{height:510px}.shens-site .shens-hero-copy{gap:17px}.shens-site .shens-hero-tagline{font-size:24px!important}.shens-site .shens-hero-location .elementor-widget-text-editor{font-size:8px}.shens-site .shens-hero-location{gap:13px}
 .shens-site .shens-two-col,.shens-site .shens-editorial-row,.shens-site .shens-faq-grid,.shens-site .shens-contact-grid,.shens-site .shens-intro-grid,.shens-site .shens-review-row,.shens-site .shens-page-heading-row,.shens-site .shens-service-detail{gap:38px}.shens-site .shens-services-preview{gap:20px}.shens-site .shens-service-photo img{height:220px}.shens-site .shens-service-card h3{font-size:27px}.shens-site .shens-editorial-image img,.shens-site .shens-about-image img,.shens-site .shens-bath-image img{height:490px}.shens-site .shens-title-row{gap:24px}.shens-site .shens-title-row .shens-section-heading{max-width:500px}.shens-site .shens-staff-grid{gap:30px 20px}.shens-site .shens-more-services{flex-direction:column;gap:12px}.shens-site .shens-booking-row{gap:35px}.shens-site .shens-booking h2{font-size:41px}
 .shens-site .shens-footer-grid{grid-template-columns:1.1fr .9fr;gap:40px 55px}.shens-site .shens-footer{padding-bottom:85px}.shens-site .shens-page-heading h1{font-size:53px}.shens-site .shens-page-hero{padding-block:24px 49px}.shens-site .shens-service-detail h2{font-size:35px}.shens-site .shens-service-detail-photo img{height:360px}.shens-site .shens-three-col{gap:28px}.shens-site .shens-contact-address{padding:27px}.shens-site .shens-contact-number .elementor-button{font-size:31px}.shens-site .shens-contact-address h2{font-size:32px}
 .shens-site.shens-ar .shens-hero-copy h1{font-size:38px}.shens-site.shens-ar h2.elementor-heading-title{font-size:30px}.shens-site.shens-ar .shens-page-heading h1{font-size:38px}
}
@media(max-width:600px){
 .shens-site{font-size:15px}.shens-site .shens-wrap{width:calc(100% - 40px);gap:28px}.shens-site .shens-section{padding-block:53px}.shens-site h2.elementor-heading-title{font-size:39px}.shens-site h3.elementor-heading-title{font-size:28px}.shens-site .elementor-widget-text-editor{font-size:14px}.shens-site .shens-kicker .elementor-heading-title{font-size:9px;letter-spacing:.16em}.shens-site .shens-header{padding-block:17px}.shens-site .shens-header>.shens-wrap{gap:12px}.shens-site .shens-brand-name .elementor-heading-title{font-size:28px}.shens-site .shens-brand-sub .elementor-heading-title{font-size:6px;letter-spacing:.28em}.shens-site .shens-header-call{display:none}.shens-site .shens-header-actions{gap:0}.shens-site .shens-language .elementor-button{font-size:11px}.shens-site .shens-main-nav .elementor-menu-toggle{font-size:21px;padding:7px}.shens-site .shens-main-nav .elementor-nav-menu--dropdown a{padding:17px 20px}
 .shens-site .shens-hero{padding-top:29px}.shens-site .shens-hero-grid{grid-template-columns:1fr;gap:30px}.shens-site .shens-hero-copy{gap:18px;padding:0}.shens-site .shens-hero-copy h1{font-size:57px;line-height:1.01}.shens-site .shens-hero-copy h1 span{font-size:.62em;margin-top:8px}.shens-site .shens-hero-tagline{font-size:23px!important}.shens-site .shens-hero-description{font-size:13px!important;max-width:310px}.shens-site .shens-hero .shens-actions{margin-top:0;gap:12px}.shens-site .shens-hero .elementor-button{padding:14px 17px;min-height:46px;font-size:11px}.shens-site .shens-hero-photo img{height:340px;object-position:50% 44%}.shens-site .shens-hero-location{display:grid;grid-template-columns:1fr;gap:6px;padding:18px 0 23px}.shens-site .shens-hero-location .elementor-widget-text-editor{font-size:8px}.shens-site .shens-hero-location>.shens-button{margin-top:3px}.shens-site .shens-hero-location .elementor-button{padding:5px 0;min-height:32px}.shens-site .shens-hero>.shens-wrap{gap:24px}
 .shens-site .shens-two-col,.shens-site .shens-editorial-row,.shens-site .shens-faq-grid,.shens-site .shens-contact-grid,.shens-site .shens-intro-grid,.shens-site .shens-review-row,.shens-site .shens-page-heading-row,.shens-site .shens-three-col,.shens-site .shens-service-detail{grid-template-columns:1fr;gap:28px}.shens-site .shens-title-row{flex-direction:column;align-items:flex-start;gap:14px}.shens-site .shens-section-heading{gap:18px}.shens-site .shens-intro-heading{gap:18px}.shens-site .shens-intro-copy{gap:18px}.shens-site .shens-intro-copy .elementor-widget-text-editor{font-size:14px}.shens-site .shens-services-preview{grid-template-columns:1fr;gap:38px}.shens-site .shens-service-photo img{height:285px}.shens-site .shens-service-card{gap:20px}.shens-site .shens-service-card h3{font-size:34px}.shens-site .shens-service-card-copy{gap:12px}.shens-site .shens-inline-menu{gap:4px 20px}.shens-site .shens-more-services{padding-top:22px}.shens-site .shens-editorial-image img,.shens-site .shens-about-image img,.shens-site .shens-bath-image img{height:370px}.shens-site .shens-editorial-row .shens-editorial-copy{padding:0}.shens-site .shens-steps{gap:17px}.shens-site .shens-step{padding-top:16px}
 .shens-site .shens-staff-grid{grid-template-columns:repeat(2,1fr);gap:30px 15px}.shens-site .shens-staff-card{gap:10px}.shens-site .shens-staff-call .elementor-button{font-size:11px;min-height:40px}.shens-site .shens-staff-grid>.shens-staff-card:last-child:nth-child(odd){grid-column:1 / -1;width:calc(50% - 7.5px)}.shens-site .shens-review-empty{padding:27px}.shens-site .shens-map iframe,.shens-site .shens-contact-map iframe{height:310px}.shens-site .shens-booking-row{flex-direction:column;align-items:flex-start;gap:27px}.shens-site .shens-booking-action{align-items:flex-start;gap:10px}.shens-site .shens-booking h2{font-size:40px}
 .shens-site .shens-page-hero{padding-block:23px 38px}.shens-site .shens-page-hero>.shens-wrap{gap:26px}.shens-site .shens-page-heading-row{gap:22px}.shens-site .shens-page-heading h1{font-size:49px}.shens-site .shens-page-description{font-size:13px!important;max-width:100%}.shens-site .shens-breadcrumb{font-size:9px!important}.shens-site .shens-principle{gap:16px;padding-top:20px}.shens-site .shens-menu-section{padding-block:30px}.shens-site .shens-service-jumps{gap:7px}.shens-site .shens-service-jump .elementor-button{font-size:10px;padding:10px 11px;min-height:37px}.shens-site .shens-service-list{gap:45px}.shens-site .shens-service-detail{gap:24px;padding-top:22px}.shens-site .shens-service-detail-photo img{height:280px}.shens-site .shens-service-reverse>.shens-service-detail-photo,.shens-site .shens-service-reverse>.shens-service-detail-copy{order:initial}.shens-site .shens-service-detail h2{font-size:36px}.shens-site .shens-service-detail-copy{gap:17px}.shens-site .shens-faq .elementor-tab-title{padding:20px 0;font-size:13px}.shens-site .shens-faq .elementor-tab-content{font-size:13px}.shens-site .shens-contact-number .elementor-button{font-size:36px}.shens-site .shens-contact-address{padding:26px}.shens-site .shens-contact-address h2{font-size:36px}
 .shens-site .shens-footer-grid{grid-template-columns:1fr 1fr;gap:33px 22px}.shens-site .shens-footer-brand{grid-column:1 / -1;gap:13px}.shens-site .shens-footer-column:last-child{grid-column:1 / -1}.shens-site .shens-footer-column{gap:15px}.shens-site .shens-footer .elementor-widget-text-editor{font-size:11px}.shens-site .shens-footer-bottom{margin-top:0;gap:16px}.shens-site .shens-footer-bottom .elementor-widget-text-editor{font-size:9px}.shens-site .shens-footer{padding-block:52px 95px}.shens-site .shens-float{bottom:calc(16px + env(safe-area-inset-bottom));width:54px!important;height:54px!important}.shens-site .shens-float .elementor-button{width:54px!important;height:54px!important;min-height:54px!important}.shens-site .shens-float-phone{left:16px}.shens-site .shens-float-wa{right:16px}
 .shens-site.shens-ar .shens-hero-copy h1{font-size:39px;line-height:1.5}.shens-site.shens-ar .shens-hero-tagline{font-size:18px!important}.shens-site.shens-ar h2.elementor-heading-title{font-size:29px}.shens-site.shens-ar h3.elementor-heading-title{font-size:22px}.shens-site.shens-ar .shens-page-heading h1{font-size:35px}.shens-site.shens-ar .shens-kicker .elementor-heading-title{font-size:10px}.shens-site.shens-ar .shens-hero-photo img{height:320px}
}
.shens-site .shens-booking-row>.shens-booking-copy{width:auto;flex:1 1 0%;min-width:0}
.shens-site .shens-booking-row>.shens-booking-action{width:auto;flex:0 0 auto}
.shens-site .shens-main-nav .elementor-item:after{background-color:var(--gold)!important}
.shens-site .shens-footer-nav .elementor-item.elementor-item-active{color:var(--gold)!important}
@media(min-width:1025px){.shens-site .shens-main-nav>.elementor-widget-container{width:100%}.shens-site .shens-main-nav .elementor-nav-menu--main{display:flex;width:100%;justify-content:center}}
@media(max-width:1024px){.shens-site .shens-main-nav{flex:0 0 44px!important;width:44px!important;max-width:44px!important}.shens-site .shens-main-nav .elementor-menu-toggle{width:44px;height:44px;min-width:44px;min-height:44px;justify-content:center;color:var(--paper)!important}.shens-site .shens-main-nav .elementor-menu-toggle svg{fill:var(--paper)!important}.shens-site .shens-main-nav .elementor-menu-toggle i{color:var(--paper)!important}}
@media(max-width:600px){.shens-site .shens-booking-row>.shens-booking-copy{width:100%;flex:0 1 auto}}
@media(prefers-reduced-motion:reduce){.shens-site *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* User-approved bright hotel SPA revision, 15 September 2026.
   Shared presentation only; native Elementor documents remain editable. */
.shens-site {
  --ink: #3c382f;
  --deep: #3c382f;
  --paper: #fffdf9;
  --cream: #f4f0e8;
  --gold: #88643d;
  --muted: #6d685f;
  --line: #e2d9cc;
}
.shens-site .elementor-widget-heading .elementor-heading-title { font-weight: 500; line-height: 1.12; letter-spacing: -.025em; }
.shens-site h2.elementor-heading-title { font-size: 48px; }
.shens-site .shens-kicker .elementor-heading-title { font-size: 11px; letter-spacing: .16em; color: var(--gold); line-height: 1.7; }
.shens-site .shens-section { padding-block: 86px; }
.shens-site .shens-section-heading { gap: 18px; }
.shens-site .shens-wrap { gap: 38px; }
.shens-site .shens-button .elementor-button { font-size: 14px; min-height: 48px; border-radius: 3px; padding: 15px 25px; }
.shens-site .shens-gold .elementor-button { color: #fffdf9; background: var(--gold); }
.shens-site .shens-gold .elementor-button:hover { background: #6c4d2c; color: #fff; }
.shens-site .shens-text-button .elementor-button,
.shens-site .shens-language .elementor-button,
.shens-site .shens-menu-link .elementor-button,
.shens-site .shens-phone-text .elementor-button { padding: 10px 0; border-radius: 0; }
.shens-site .shens-on-dark .elementor-button { background: transparent; color: var(--ink); border-color: #b9aa94; }
.shens-site .shens-on-dark .elementor-button:hover { background: #ebe2d3; color: var(--ink); border-color: var(--gold); }

/* Light, legible shared navigation. */
.shens-site .shens-header { background: var(--paper); color: var(--ink); border-color: var(--line); padding-block: 23px; }
.shens-site .shens-header > .shens-wrap { gap: 28px; }
.shens-site .shens-brand { gap: 7px; }
.shens-site .shens-brand-name .elementor-heading-title { line-height: 1; font-size: 34px; }
.shens-site .shens-brand-sub .elementor-heading-title { font-size: 8px; letter-spacing: .24em; }
.shens-site .shens-main-nav .elementor-nav-menu--main > .elementor-nav-menu { gap: 25px; }
.shens-site .shens-main-nav .elementor-nav-menu a.elementor-item { color: var(--ink); font-size: 13px; }
.shens-site .shens-main-nav .elementor-item:hover,
.shens-site .shens-main-nav .elementor-item.elementor-item-active { color: var(--gold); }
.shens-site .shens-header-actions { gap: 24px; }
.shens-site .shens-language .elementor-button { font-size: 13px; min-height: 44px; }
.shens-site .shens-header-call .elementor-button { padding: 13px 22px; }

/* A quieter opening: warm stone canvas, generous image, shorter text measure. */
.shens-site .shens-hero { background: var(--cream); color: var(--ink); padding-top: 56px; }
.shens-site .shens-hero > .shens-wrap { gap: 38px; }
.shens-site .shens-hero-grid { grid-template-columns: .94fr 1.06fr; gap: 60px; }
.shens-site .shens-hero-copy { gap: 23px; padding-block: 10px; }
.shens-site .shens-hero-copy h1 { font-size: clamp(60px, 4.8vw, 70px); line-height: 1.05; letter-spacing: -.035em; }
.shens-site .shens-hero-copy h1 span { color: var(--gold); font-size: .57em; margin-top: 12px; line-height: 1.3; }
.shens-site .shens-hero .shens-kicker .elementor-heading-title { color: var(--gold); }
.shens-site .shens-hero-tagline { font-size: 26px!important; color: var(--ink); }
.shens-site .shens-hero-description { max-width: 410px; color: var(--muted)!important; font-size: 16px!important; line-height: 1.75!important; }
.shens-site .shens-hero-photo img { height: 540px; border-radius: 3px; object-position: 50% 47%; }
.shens-site .shens-hero-location { border-color: var(--line); color: var(--muted); padding-block: 18px 23px; }
.shens-site .shens-hero-location .elementor-widget-text-editor { font-size: 11px; letter-spacing: .08em; }
.shens-site .shens-hero-location .elementor-button { font-size: 13px; padding: 8px 0; min-height: 40px; }

/* Consistent image proportions within each content type. */
.shens-site .shens-service-photo img,
.shens-site .shens-service-detail-photo img { width: 100%; height: auto!important; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 3px; }
.shens-site .shens-services-preview { gap: 30px; align-items: stretch; }
.shens-site .shens-service-card { gap: 24px; height: 100%; }
.shens-site .shens-service-card-copy { gap: 15px; flex: 1; }
.shens-site .shens-service-card-copy > .shens-button { margin-top: auto; }
.shens-site .shens-service-card h3 { font-size: 31px; }
.shens-site .shens-service-card-copy .elementor-widget-text-editor,
.shens-site .shens-service-detail-copy .elementor-widget-text-editor,
.shens-site .shens-intro-copy .elementor-widget-text-editor,
.shens-site .shens-editorial-copy .elementor-widget-text-editor { font-size: 16px; line-height: 1.8; }
.shens-site .shens-editorial-image img,
.shens-site .shens-about-image img,
.shens-site .shens-bath-image img { height: auto!important; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 3px; }
.shens-site .shens-more-services { gap: 30px; }
.shens-site .shens-menu-link .elementor-button { font-size: 13px; }
.shens-site .shens-step .elementor-widget-text-editor { font-size: 15px; }

/* The same 4:5 portrait frame and booking row for every team member.
   Cropping is CSS presentation; the supplied image files stay intact. */
.shens-site .shens-staff-grid { gap: 32px 28px; align-items: stretch; }
.shens-site .shens-staff-card { background: #fff; border: 1px solid var(--line); border-radius: 3px; overflow: hidden; gap: 0; align-items: stretch; padding: 10px 10px 18px; }
.shens-site .shens-staff-photo { width: 100%; }
.shens-site .shens-staff-photo img { width: 100%; height: auto!important; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 22%; display: block; }
.shens-site .shens-staff-card:nth-child(2) img { object-position: 50% 30%; }
.shens-site .shens-staff-card:nth-child(3) img { object-position: 50% 12%; }
.shens-site .shens-staff-card:nth-child(4) img { object-position: 50% 16%; }
.shens-site .shens-staff-card:nth-child(5) img { object-position: 50% 20%; }
.shens-site .shens-staff-card:nth-child(6) img { object-position: 50% 35%; }
.shens-site .shens-staff-call { align-self: center; margin: 15px 12px 0; }
.shens-site .shens-staff-call .elementor-button { color: var(--gold); font-size: 14px; min-height: 44px; padding: 11px 4px; }
.shens-site .shens-team-section .shens-section-heading > .elementor-widget-text-editor { font-size: 16px; max-width: 610px; }
.shens-site .shens-team-full { background: var(--paper); }

/* Inner-page headings and practical information share the same light palette. */
.shens-site .shens-page-hero { background: var(--cream); color: var(--ink); padding-block: 28px 58px; border-bottom: 1px solid var(--line); }
.shens-site .shens-page-hero > .shens-wrap { gap: 32px; }
.shens-site .shens-page-heading h1 { font-size: 62px; }
.shens-site .shens-breadcrumb { font-size: 12px!important; color: var(--muted)!important; }
.shens-site .shens-page-hero .shens-kicker .elementor-heading-title { color: var(--gold); }
.shens-site .shens-page-description { font-size: 16px!important; color: var(--muted)!important; line-height: 1.8!important; }
.shens-site .shens-principle { border-color: var(--line); }
.shens-site .shens-principle .elementor-widget-text-editor,
.shens-site .shens-location-copy .elementor-widget-text-editor,
.shens-site .shens-contact-copy .elementor-widget-text-editor { font-size: 16px; }
.shens-site .shens-service-jump .elementor-button { font-size: 13px; min-height: 44px; padding: 12px 17px; }
.shens-site .shens-service-note { font-size: 15px!important; }
.shens-site .shens-faq-heading .elementor-widget-text-editor { font-size: 16px; }
.shens-site .shens-faq .elementor-tab-title { font-size: 16px; }
.shens-site .shens-faq .elementor-tab-content { font-size: 15px; }
.shens-site .shens-review-home { background: #eee9de; padding-block: 64px; }
.shens-site .shens-review-copy .elementor-widget-text-editor { font-size: 16px; color: var(--muted); }
.shens-site .shens-review-empty { background: #fff; border-radius: 3px; }
.shens-site .shens-contact-address { border: 1px solid var(--line); border-radius: 3px; }
.shens-site .shens-map iframe,
.shens-site .shens-contact-map iframe { border-radius: 3px; }
.shens-site .shens-booking { background: #eee5d6; color: var(--ink); border-top: 1px solid var(--line); padding-block: 64px; }
.shens-site .shens-booking-copy { gap: 18px; }
.shens-site .shens-booking h2 { font-size: 48px; }
.shens-site .shens-booking-copy .elementor-widget-text-editor { font-size: 16px; color: var(--muted); }
.shens-site .shens-phone-text .elementor-button { font-size: 14px; }

/* A pale footer gives the whole page a calm, continuous finish. */
.shens-site .shens-footer { background: var(--paper); color: var(--muted); border-top: 1px solid var(--line); padding-block: 62px 88px; }
.shens-site .shens-footer-wordmark .elementor-heading-title { color: var(--ink); }
.shens-site .shens-footer-column h3 { color: var(--ink); font-size: 14px; }
.shens-site .shens-footer .elementor-widget-text-editor { font-size: 13px; }
.shens-site .shens-footer .shens-kicker .elementor-heading-title { font-size: 10px; color: var(--gold); }
.shens-site .shens-footer-nav .elementor-nav-menu a { color: var(--muted); font-size: 13px; }
.shens-site .shens-footer-phone .elementor-button { color: var(--ink); font-size: 19px; padding: 0; }
.shens-site .shens-footer .shens-outline .elementor-button { color: var(--ink); border-color: #b9aa94; font-size: 13px; }
.shens-site .shens-footer .shens-outline .elementor-button:hover { color: var(--gold); border-color: var(--gold); }
.shens-site .shens-footer .shens-text-button .elementor-button { font-size: 13px; }
.shens-site .shens-footer-bottom { border-color: var(--line); }
.shens-site .shens-footer-bottom .elementor-widget-text-editor { font-size: 11px; }

@media (max-width: 1150px) and (min-width: 1025px) {
  .shens-site .shens-main-nav .elementor-nav-menu--main > .elementor-nav-menu { gap: 17px; }
  .shens-site .shens-header > .shens-wrap { gap: 20px; }
  .shens-site .shens-header-actions { gap: 15px; }
  .shens-site .shens-hero-grid { gap: 38px; }
}
@media (max-width: 1024px) {
  .shens-site .shens-section { padding-block: 66px; }
  .shens-site h2.elementor-heading-title { font-size: 41px; }
  .shens-site .shens-header { padding-block: 19px; }
  .shens-site .shens-header > .shens-wrap { gap: 22px; }
  .shens-site .shens-main-nav .elementor-menu-toggle,
  .shens-site .shens-main-nav .elementor-menu-toggle i { color: var(--ink)!important; }
  .shens-site .shens-main-nav .elementor-menu-toggle svg { fill: var(--ink)!important; }
  .shens-site .shens-main-nav .elementor-nav-menu--dropdown { background: var(--paper); border-color: var(--line); box-shadow: 0 12px 18px #3c382f0d; }
  .shens-site .shens-main-nav .elementor-nav-menu--dropdown a { color: var(--ink); border-color: var(--line); font-size: 16px; }
  .shens-site .shens-main-nav .elementor-nav-menu--dropdown a:hover { background: var(--cream); color: var(--gold); }
  .shens-site .shens-hero { padding-top: 38px; }
  .shens-site .shens-hero-grid { gap: 32px; grid-template-columns: 1fr 1fr; }
  .shens-site .shens-hero-copy { gap: 19px; }
  .shens-site .shens-hero-copy h1 { font-size: 53px; }
  .shens-site .shens-hero-tagline { font-size: 24px!important; }
  .shens-site .shens-hero-description { font-size: 15px!important; }
  .shens-site .shens-hero-photo img { height: 490px; }
  .shens-site .shens-hero-location .elementor-widget-text-editor { font-size: 10px; letter-spacing: .035em; }
  .shens-site .shens-hero .shens-actions { gap: 12px; }
  .shens-site .shens-hero .shens-actions .elementor-button { font-size: 13px; padding: 14px 18px; }
  .shens-site .shens-services-preview { gap: 22px; }
  .shens-site .shens-service-card h3 { font-size: 29px; }
  .shens-site .shens-staff-grid { gap: 26px 20px; }
  .shens-site .shens-staff-card { padding: 8px 8px 15px; }
  .shens-site .shens-staff-call { margin: 12px 8px 0; }
  .shens-site .shens-staff-call .elementor-button { font-size: 13px; }
  .shens-site .shens-page-heading h1 { font-size: 52px; }
  .shens-site .shens-booking h2 { font-size: 40px; }
  .shens-site.shens-ar .shens-hero-copy h1 { font-size: 37px; line-height: 1.55; }
  .shens-site.shens-ar h2.elementor-heading-title { font-size: 30px; }
  .shens-site.shens-ar .shens-page-heading h1 { font-size: 37px; }
}
@media (max-width: 600px) {
  .shens-site .shens-wrap { gap: 29px; }
  .shens-site .shens-section { padding-block: 50px; }
  .shens-site h2.elementor-heading-title { font-size: 37px; }
  .shens-site .shens-kicker .elementor-heading-title { font-size: 10px; letter-spacing: .12em; }
  .shens-site .shens-header { padding-block: 18px; }
  .shens-site .shens-header > .shens-wrap { gap: 16px; }
  .shens-site .shens-brand { gap: 6px; }
  .shens-site .shens-brand-name .elementor-heading-title { font-size: 29px; }
  .shens-site .shens-brand-sub .elementor-heading-title { font-size: 7px; letter-spacing: .2em; }
  .shens-site .shens-language .elementor-button { font-size: 12px; }
  .shens-site .shens-hero { padding-top: 35px; }
  .shens-site .shens-hero > .shens-wrap { gap: 26px; }
  .shens-site .shens-hero-grid { grid-template-columns: 1fr; gap: 29px; }
  .shens-site .shens-hero-copy { gap: 18px; padding: 0; }
  .shens-site .shens-hero-copy h1 { font-size: 54px; line-height: 1.05; }
  .shens-site .shens-hero-copy h1 span { font-size: .6em; margin-top: 9px; }
  .shens-site .shens-hero-tagline { font-size: 24px!important; }
  .shens-site .shens-hero-description { max-width: 100%; font-size: 15px!important; }
  .shens-site .shens-hero-photo img { height: auto!important; aspect-ratio: 6 / 5; object-position: 50% 42%; }
  .shens-site .shens-hero-location { gap: 8px; padding-block: 18px 24px; }
  .shens-site .shens-hero-location .elementor-widget-text-editor { font-size: 10px; }
  .shens-site .shens-hero-location .elementor-button { font-size: 13px; min-height: 40px; padding: 8px 0; }
  .shens-site .shens-services-preview { gap: 35px; }
  .shens-site .shens-service-card { gap: 20px; }
  .shens-site .shens-service-card-copy { gap: 13px; }
  .shens-site .shens-service-card h3 { font-size: 31px; }
  .shens-site .shens-service-card-copy .elementor-widget-text-editor,
  .shens-site .shens-service-detail-copy .elementor-widget-text-editor,
  .shens-site .shens-intro-copy .elementor-widget-text-editor,
  .shens-site .shens-editorial-copy .elementor-widget-text-editor { font-size: 15px; }
  .shens-site .shens-title-row { gap: 17px; }
  .shens-site .shens-staff-grid { gap: 20px 14px; }
  .shens-site .shens-staff-card { padding: 6px 6px 12px; }
  .shens-site .shens-staff-call { margin: 9px 0 0; }
  .shens-site .shens-staff-call .elementor-button { font-size: 12px; padding: 11px 1px; }
  .shens-site .shens-staff-grid > .shens-staff-card:last-child:nth-child(odd) { width: calc(50% - 7px); }
  .shens-site .shens-team-section .shens-section-heading > .elementor-widget-text-editor { font-size: 15px; }
  .shens-site .shens-page-hero { padding-block: 24px 40px; }
  .shens-site .shens-page-heading h1 { font-size: 45px; }
  .shens-site .shens-page-description { font-size: 15px!important; }
  .shens-site .shens-breadcrumb { font-size: 11px!important; }
  .shens-site .shens-service-jump .elementor-button { font-size: 12px; padding: 11px 12px; }
  .shens-site .shens-faq .elementor-tab-title { font-size: 15px; }
  .shens-site .shens-faq .elementor-tab-content { font-size: 14px; }
  .shens-site .shens-review-home { padding-block: 48px; }
  .shens-site .shens-booking { padding-block: 49px; }
  .shens-site .shens-booking h2 { font-size: 37px; }
  .shens-site .shens-booking-copy .elementor-widget-text-editor { font-size: 15px; }
  .shens-site .shens-footer { padding-block: 49px 95px; }
  .shens-site .shens-footer .elementor-widget-text-editor { font-size: 13px; }
  .shens-site .shens-footer-bottom { flex-wrap: wrap; gap: 10px 20px; }
  .shens-site .shens-footer-bottom .elementor-widget-text-editor { font-size: 10px; }
  .shens-site.shens-ar .shens-hero-copy h1 { font-size: 35px; line-height: 1.55; }
  .shens-site.shens-ar .shens-hero-tagline { font-size: 20px!important; }
  .shens-site.shens-ar h2.elementor-heading-title { font-size: 29px; }
  .shens-site.shens-ar .shens-page-heading h1 { font-size: 33px; }
  .shens-site.shens-ar .shens-kicker .elementor-heading-title { letter-spacing: 0; }
}

/* Supplied review cards. Text and ratings are native editable widgets;
   only the avatar region of the original screenshot is displayed. */
.shens-site .shens-guest-reviews-home { background: #f0ebe2; }
.shens-site .shens-guest-reviews .shens-wrap { align-items: stretch; }
.shens-site .shens-guest-reviews .shens-title-row { align-items: flex-end; }
.shens-site .shens-reviews-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; width: 100%; align-items: stretch; }
.shens-site .shens-review-card { display: flex; flex-direction: column; gap: 23px; height: 100%; background: #fff; border: 1px solid #e0d6c5; border-radius: 4px; padding: 31px; }
.shens-site .shens-review-card-header { display: flex; flex-direction: row; align-items: center; gap: 18px; }
.shens-site .shens-review-person { display: flex; flex-direction: column; gap: 9px; width: auto; flex: 1; min-width: 0; }
.shens-site .shens-review-name .elementor-heading-title { font-family: ShenSans,Arial,sans-serif!important; font-size: 18px; line-height: 1.45; letter-spacing: 0; font-weight: 500; }
.shens-site .shens-review-name { direction: ltr; }
.shens-site .shens-review-stars .elementor-heading-title { font-family: Arial,sans-serif!important; color: #bd841b; font-size: 19px; line-height: 1.1; letter-spacing: .12em; }
.shens-site .shens-review-stars { direction: ltr; }
.shens-site .shens-review-text.elementor-widget-text-editor { font-size: 16px; color: #615e57; line-height: 1.85; }
.shens-site .shens-review-avatar { --face-y: 22; flex: 0 0 68px; width: 68px; max-width: 68px; height: 68px; border-radius: 50%; overflow: hidden; background: #edeae4; }
.shens-site .shens-review-avatar > .elementor-widget-container { position: relative; width: 100%; height: 100%; overflow: hidden; border-radius: 50%; }
.shens-site .shens-review-avatar img { position: absolute; width: 863.076923077%!important; max-width: none!important; height: auto!important; aspect-ratio: auto!important; left: -37.692307692%; top: calc(var(--face-y) * -.76923076923%); display: block; object-fit: initial; border-radius: 0!important; }
.shens-site .shens-avatar-omar-al-hamadi { --face-y: 22; }
.shens-site .shens-avatar-daniel-wong { --face-y: 201; }
.shens-site .shens-avatar-michael-turner { --face-y: 365; }
.shens-site .shens-avatar-ahmed-khan { --face-y: 531; }
.shens-site .shens-avatar-james-carter { --face-y: 701; }
.shens-site .shens-avatar-ali-mansoor { --face-y: 869; }
.shens-site .shens-avatar-victor-petrov { --face-y: 1040; }
.shens-site .shens-avatar-ethan-brooks { --face-y: 1211; }
.shens-site.shens-ar .shens-review-name,
.shens-site.shens-ar .shens-review-stars { text-align: right; }
.shens-site .shens-map iframe { background: #eee9df; }
.shens-site .shens-complete-services { row-gap: 48px; }
.shens-site .shens-source-benefits .shens-principle > .shens-button { margin-top: auto; }
.shens-site .shens-guide-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; width: 100%; }
.shens-site .shens-guide-card { display: flex; flex-direction: column; gap: 18px; background: #fffdf9; border: 1px solid #e0d6c5; padding: 32px; }
.shens-site .shens-guide-card:last-child { grid-column: 1 / -1; }
.shens-site .shens-guide-card h3 { font-size: 31px; }
.shens-site .shens-guide-card > .shens-actions { margin-top: auto; padding-top: 5px; }
.shens-site .shens-choice-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
.shens-site .shens-bath-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; width: 100%; }
@media (min-width: 1025px) {
  .shens-site .shens-complete-services > .shens-service-card:last-child:nth-child(3n + 1) { grid-column: 2; }
}
@media (min-width: 601px) and (max-width: 1024px) {
  .shens-site .shens-complete-services { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1024px) {
  .shens-site .shens-bath-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .shens-site .shens-guide-card { padding: 25px; }
  .shens-site .shens-reviews-grid { gap: 20px; }
  .shens-site .shens-review-card { padding: 25px; gap: 20px; }
  .shens-site .shens-review-card-header { gap: 14px; }
  .shens-site .shens-review-avatar { flex-basis: 60px; width: 60px; max-width: 60px; height: 60px; }
  .shens-site .shens-review-name .elementor-heading-title { font-size: 17px; }
  .shens-site .shens-review-text.elementor-widget-text-editor { font-size: 15px; }
}
@media (max-width: 600px) {
  .shens-site .shens-guide-grid, .shens-site .shens-choice-list, .shens-site .shens-bath-steps { grid-template-columns: 1fr; }
  .shens-site .shens-guide-card h3 { font-size: 29px; }
  .shens-site .shens-reviews-grid { grid-template-columns: 1fr; gap: 19px; }
  .shens-site .shens-guest-reviews .shens-title-row { align-items: flex-start; }
  .shens-site .shens-review-card { padding: 24px; }
  .shens-site .shens-review-name .elementor-heading-title { font-size: 17px; }
  .shens-site .shens-review-stars .elementor-heading-title { font-size: 18px; }
  .shens-site .shens-review-person { gap: 7px; }
}
