/* Catalog and service detail presentation, shared with the existing marketplace. */
.hh-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.hh-service-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dde4d6;border-radius:16px;overflow:hidden;box-shadow:0 6px 22px #153c3205;transition:transform .2s,box-shadow .2s}.hh-service-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #153c3212}.hh-service-cover{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#e8eddf}.hh-service-cover img{display:block!important;width:100%!important;height:100%!important;object-fit:cover;transition:transform .4s}.hh-service-card:hover .hh-service-cover img{transform:scale(1.035)}.hh-service-cover>span{position:absolute;bottom:14px;left:16px;font-size:9px;letter-spacing:1px;font-weight:700;color:#153c32;background:#faf9f4ed;backdrop-filter:blur(6px);padding:7px 10px;border-radius:20px}.hh-service-card-body{padding:23px;flex:1;display:flex;flex-direction:column}.hh-service-card-body h3{font-size:22px!important;letter-spacing:-.6px;line-height:1.2;margin:0 0 12px!important}.hh-service-card-body>p{font-size:13px!important;line-height:1.65;color:#697366;margin:0 0 22px!important;flex:1}.hh-service-card-bottom{display:flex;gap:10px;justify-content:space-between;align-items:center;border-top:1px solid #edf0e7;padding-top:18px}.hh-service-card-price{font-size:22px;font-weight:700;color:#153c32}.hh-service-card-price del{font-size:12px;color:#87917f;font-weight:400;margin-right:5px}.hh-service-card-price ins{background:none;text-decoration:none}.hh-service-card-price small{display:block;font-size:10px;color:#7b8473;font-weight:400;margin-top:2px}.hh-app .hh-service-card-book{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:11px 16px;border-radius:7px;background:#245c47;color:#fff!important;font-size:12px;font-weight:600;white-space:nowrap;text-decoration:none!important}.hh-app .hh-service-card-book:hover{background:#153c32}.hh-service-card-book span{font-size:16px}.hh-service-card a:focus-visible{outline:3px solid #a4c96b;outline-offset:-3px}.hh-service-card .screen-reader-text{position:absolute!important}
.single-product .hh-native .woocommerce div.product{padding-top:14px}.hh-service-hero{position:relative;float:left;width:48%;margin:0 0 30px!important;overflow:hidden;border-radius:18px;background:#e8eddf;isolation:isolate}.hh-service-hero>img{display:block;width:100%;height:550px;object-fit:cover}.hh-service-photo-caption{position:absolute;inset:auto 0 25px;padding:70px 28px 28px;color:#fff;background:linear-gradient(transparent,#0f2c24b8)}.hh-service-photo-caption>span{display:block;font-size:9px;font-weight:700;letter-spacing:1.5px;margin-bottom:12px}.hh-service-photo-caption>strong{font-size:35px;line-height:1.06;letter-spacing:-1px;font-weight:600}.hh-service-hero>figcaption{font-size:9px;padding:7px 15px;background:#e8eddf;color:#5c7058}.single-product .hh-native .woocommerce div.product .summary{padding:10px 0 0 24px!important;background:transparent;border:0;box-shadow:none}.single-product .hh-native .woocommerce div.product .product_title{font-size:clamp(30px,3.8vw,48px)!important;line-height:1.08!important;letter-spacing:-1.5px;margin:0 0 18px!important}.single-product .hh-native .woocommerce div.product p.price{font-size:31px!important;line-height:1.25;margin:0 0 8px!important}.single-product .hh-native .woocommerce div.product p.price del{font-size:17px;color:#849078}.single-product .hh-native .woocommerce div.product p.price ins{background:none;text-decoration:none;color:#153c32}.hh-booking-price-note{font-size:11px!important;color:#6c7864;margin-bottom:25px!important;max-width:390px;line-height:1.6}.hh-service-lead{font-size:15px!important;line-height:1.75;color:#5f6c57}.hh-service-highlights{display:flex;flex-wrap:wrap;list-style:none!important;padding:0!important;gap:7px;margin:18px 0 24px!important}.hh-service-highlights li{font-size:10px!important;padding:6px 10px;background:#edf2e4;border-radius:20px;color:#38563c}.single-product .hh-native .woocommerce div.product form.cart{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:22px 0!important}.single-product .hh-native form.cart .quantity{margin:0!important}.single-product .hh-native form.cart .quantity input{width:62px!important;min-height:46px;text-align:center}.single-product .hh-native .woocommerce form.cart .single_add_to_cart_button{background:transparent!important;color:#245c47!important;margin:0!important}.single-product .hh-native .woocommerce form.cart .hh-book-now{margin:0!important;background:#245c47!important}.single-product .hh-native .woocommerce div.product .product_meta{font-size:11px;border-top:1px solid #dfe6d5;padding-top:16px;margin-top:20px;color:#7a8570}.hh-unavailable-actions{display:flex;gap:10px;margin:20px 0 10px}.hh-unavailable-actions button{opacity:.5;cursor:not-allowed}.hh-service-location{padding:15px 18px;margin-top:20px}.hh-service-location p{margin:6px 0 10px}.single-product .hh-native .hh-service-location button{background:transparent!important;color:#245c47!important;font-size:11px!important;padding:8px 13px!important}.hh-service-details{display:grid;grid-template-columns:1.1fr 1fr;gap:35px}.hh-service-details h2{font-size:27px!important;letter-spacing:-.7px;line-height:1.2}.hh-service-details h3{font-size:17px!important}.hh-service-details p,.hh-service-details li{font-size:14px;color:#64715c;line-height:1.8}.hh-service-details ul{padding-left:20px}.hh-booking-explainer{background:#edf2e4;border-radius:13px;padding:26px}.hh-booking-explainer ol{list-style:none;counter-reset:hh-step;padding:0;margin:22px 0 0}.hh-booking-explainer li{counter-increment:hh-step;position:relative;padding:0 0 20px 42px}.hh-booking-explainer li::before{content:counter(hh-step,decimal-leading-zero);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:#dce8c9;display:grid;place-items:center;font-size:11px;color:#245c47}.hh-booking-explainer li strong,.hh-booking-explainer li span{display:block}.hh-booking-explainer li strong{font-size:13px;color:#254c37}.hh-booking-explainer li span{font-size:12px;line-height:1.65;margin-top:5px}.hh-service-terms{grid-column:1/-1;border-top:1px solid #e0e6d7;padding-top:12px}.hh-service-terms p{font-size:12px;max-width:900px}.hh-other-services{clear:both;padding-top:50px}.hh-other-services-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}.hh-other-services-heading h2{font-size:35px!important;letter-spacing:-1px;line-height:1.15;margin:10px 0 0}.hh-other-services-heading>a{font-size:12px;font-weight:600;white-space:nowrap}.hh-native .hh-other-services .hh-service-grid{gap:17px}.hh-native .hh-service-card-body{padding:19px}.hh-native .hh-service-card-body h3{font-size:20px!important}.single-product .hh-native .woocommerce div.product .woocommerce-tabs{clear:both;padding:26px!important;background:#fff;border:1px solid #e0e6d7;border-radius:15px}.single-product .hh-native .woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin-bottom:25px!important}.single-product .hh-native .woocommerce div.product .woocommerce-tabs .panel{margin:0}.hh-native .hh-service-card a{text-decoration:none!important}
@media(max-width:1000px){.hh-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hh-service-hero>img{height:500px}.hh-service-photo-caption>strong{font-size:28px}.hh-native .hh-service-card-bottom{flex-wrap:wrap}.hh-service-card-body h3{font-size:21px!important}}@media(max-width:767px){.hh-service-hero{float:none;width:100%;margin-bottom:25px!important}.hh-service-hero>img{height:360px}.single-product .hh-native .woocommerce div.product .summary{float:none!important;width:100%!important;padding:0!important}.hh-service-details{grid-template-columns:1fr;gap:24px}.hh-service-terms{grid-column:auto}.hh-other-services-heading h2{font-size:28px!important}.hh-other-services-heading{align-items:start}.hh-booking-explainer{padding:21px}.single-product .hh-native .woocommerce div.product .woocommerce-tabs{padding:20px!important}.single-product .hh-native .woocommerce div.product .product_title{font-size:37px!important}.hh-service-photo-caption>strong{font-size:32px}}@media(max-width:480px){.hh-service-grid{grid-template-columns:1fr;gap:20px}.hh-service-cover{aspect-ratio:16/10}.hh-service-card-body{padding:22px}.hh-service-card-body h3{font-size:24px!important}.hh-service-card-body>p{font-size:13px!important}.hh-native .hh-service-card-bottom{flex-wrap:nowrap}.hh-other-services-heading{flex-direction:column;gap:12px}.hh-service-hero>img{height:340px}.single-product .hh-native .woocommerce div.product form.cart{gap:8px}.single-product .hh-native .woocommerce div.product form.cart button{font-size:12px!important;padding:12px 14px!important}}
@media(prefers-reduced-motion:reduce){.hh-service-card,.hh-service-cover img{transition:none}.hh-service-card:hover{transform:none}}
/* Requested density: three across on desktop, two across on phones. */
@media(min-width:768px){.hh-app .hh-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:768px) and (max-width:1000px){.hh-service-card-bottom{flex-wrap:wrap}.hh-service-card-book{width:100%}.hh-service-card-body{padding:18px}}
@media(max-width:767px){.hh-app .hh-service-grid,.hh-native .hh-other-services .hh-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hh-app .hh-service-card{border-radius:11px}.hh-app .hh-service-cover{aspect-ratio:4/3}.hh-app .hh-service-cover>span{left:7px;bottom:7px;max-width:calc(100% - 14px);font-size:7px;letter-spacing:.4px;padding:5px 6px}.hh-app .hh-service-card-body{padding:12px}.hh-app .hh-service-card-body h3{font-size:16px!important;letter-spacing:-.3px;line-height:1.25;min-height:2.5em;margin-bottom:9px!important}.hh-app .hh-service-card-body>p{font-size:11px!important;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px!important;min-height:4.65em;flex:1}.hh-app .hh-service-card-bottom{flex-direction:column;align-items:stretch;gap:9px;padding-top:12px}.hh-app .hh-service-card-price{font-size:18px}.hh-app .hh-service-card-price del{font-size:10px;margin-right:3px}.hh-app .hh-service-card-price small{font-size:9px}.hh-app .hh-service-card-book{width:100%;font-size:11px;padding:10px 8px;gap:7px;min-height:44px}.hh-app .hh-service-card-book span{font-size:14px}}
