/* Scoped ShiningOven offers v1.2 */
.sco-offers{max-width:1180px;margin:42px auto 78px;padding:0 24px;font-family:inherit;color:#24313b}.sco-heading{text-align:center;max-width:750px;margin:0 auto 34px}.sco-kicker{color:#0784a9;font-size:11px;font-weight:800;letter-spacing:2px}.sco-heading h1{font-family:inherit!important;font-size:clamp(32px,4vw,50px)!important;font-weight:750!important;line-height:1.12!important;letter-spacing:-1.4px;margin:14px 0!important;color:#26323c!important}.sco-heading p{color:#6a7782;font-size:16px;line-height:1.7}.sco-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px}.sco-filters{display:flex;gap:8px;flex-wrap:wrap}.sco-filter{border:1px solid #d9e5ec;background:#fff;color:#526674;border-radius:100px;padding:10px 17px;font:600 13px/1.3 inherit;cursor:pointer;transition:.2s}.sco-filter.is-active,.sco-filter:hover{background:#087fa6;border-color:#087fa6;color:#fff}.sco-filter span{opacity:.75;margin-left:5px}.sco-result-count{font-size:12px;color:#78858e;white-space:nowrap}.sco-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sco-card{background:#fff;border:1px solid #e0e8ec;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(19,50,70,.06);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.sco-card:hover{transform:translateY(-3px);box-shadow:0 15px 40px rgba(19,50,70,.1)}.sco-photo{height:195px;position:relative;background:#edf5f8}.sco-photo img{width:100%;height:100%;object-fit:cover;display:block}.sco-photo-empty{height:100%;background:linear-gradient(135deg,#edf8fc,#dcecf3);color:#39718b;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;font-size:12px;font-weight:600;text-align:center;padding:20px}.sco-photo-symbol{font-size:40px;color:#7db4cc}.sco-photo-badge{position:absolute;top:14px;left:14px;border-radius:7px;background:#fff;color:#047da4;padding:8px 11px;font-size:10px;font-weight:800;letter-spacing:.5px;box-shadow:0 3px 12px #0001}.sco-content{padding:24px;display:flex;flex:1;flex-direction:column}.sco-card-label{color:#0085ac;font-size:10px;font-weight:800;letter-spacing:1.4px}.sco-content h2{font-family:inherit!important;color:#26323c!important;font-size:22px!important;font-weight:750!important;line-height:1.28!important;margin:10px 0!important}.sco-summary{color:#667885;font-size:14px;line-height:1.65;margin:3px 0 12px}.sco-preview{padding:0!important;margin:8px 0 16px!important;list-style:none!important}.sco-preview li{position:relative;padding:0 0 7px 23px!important;font-size:13px;color:#4d616f;line-height:1.5}.sco-preview li:before{content:'✓';position:absolute;left:0;color:#0085a7;font-weight:800}.sco-bottom{margin-top:auto;border-top:1px solid #e9eef1;padding-top:16px}.sco-price-label{font-size:10px;letter-spacing:1px;font-weight:750;color:#8a979f}.sco-price{font-size:27px;font-weight:800;color:#25343e;margin:4px 0 17px}.sco-price del{font-size:14px;color:#8d9ca4}.sco-actions{display:flex;flex-direction:column;gap:10px}.sco-open-modal{width:100%;background:#f1f8fb;border:1px solid #d9eaf1;border-radius:9px;color:#047da4;cursor:pointer;padding:12px;font-size:13px;font-weight:750}.sco-open-modal:hover{background:#e5f4fa}.sco-book{display:block;text-align:center;text-decoration:none!important;background:#087fa6;color:#fff!important;border-radius:9px;padding:14px;font-weight:750;font-size:14px}.sco-book:hover{background:#06688a}.sco-afterword{text-align:center;color:#768590;font-size:13px;margin-top:30px}.sco-booking-toggle{border:0!important;background:transparent!important;color:#007fa8!important;display:block!important;font-size:12px!important;font-weight:700!important;cursor:pointer!important;text-align:left!important;padding:5px 0!important;line-height:1.3!important;box-shadow:none!important}.sco-booking-notice{padding:14px 18px;margin:12px auto 20px;max-width:900px;border-left:4px solid #0180a8;background:#eaf7fb;color:#174255;font-weight:600}.sco-modal[hidden]{display:none!important}.sco-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}.sco-modal-backdrop{position:absolute;inset:0;background:rgba(16,35,49,.72);backdrop-filter:blur(3px)}.sco-modal-panel{position:relative;width:min(100%,650px);max-height:min(86vh,820px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px #0004;padding:36px 38px;outline:none;color:#293944}.sco-modal-close{position:absolute;right:16px;top:13px;border:0!important;background:#eef5f8!important;border-radius:100px!important;width:38px;height:38px;display:grid;place-items:center;font-size:27px;color:#355467;cursor:pointer;line-height:1}.sco-modal-kicker{font-size:11px;letter-spacing:1.7px;color:#0785ac;font-weight:800}.sco-modal-panel h2{font-family:inherit!important;font-size:clamp(23px,3vw,31px)!important;color:#263744!important;line-height:1.2!important;margin:10px 40px 22px 0!important;font-weight:800!important}.sco-modal-panel h3{font-family:inherit!important;font-size:16px!important;color:#263744!important;margin:22px 0 12px!important;font-weight:800!important}.sco-modal-image{display:block;width:100%;height:170px;object-fit:cover;border-radius:12px;margin:10px 0 20px}.sco-modal-checks{list-style:none!important;padding:0!important;margin:0!important}.sco-modal-checks li{position:relative;padding:10px 0 10px 31px!important;border-bottom:1px solid #edf2f4;color:#3c5360;font-size:14px;line-height:1.5}.sco-modal-checks li:before{content:'✓';position:absolute;left:0;top:9px;color:#0785ac;font-weight:900}.sco-modal-copy{font-size:14px;line-height:1.85;color:#506675;white-space:normal}.sco-modal-open{overflow:hidden}.sco-empty{grid-column:1/-1;text-align:center;padding:30px}@media(max-width:900px){.sco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.sco-offers{padding:0 15px;margin:25px auto 50px}.sco-grid{grid-template-columns:1fr;gap:17px}.sco-toolbar{align-items:flex-start;flex-direction:column}.sco-result-count{padding-left:4px}.sco-content{padding:20px}.sco-photo{height:205px}.sco-modal{padding:12px}.sco-modal-panel{padding:28px 22px;max-height:90vh}.sco-heading h1{letter-spacing:-.7px!important}}

/* Rich WooCommerce product description in the popup */
.sco-rich-description{font-size:14px;line-height:1.75;color:#465e6d;overflow-wrap:anywhere}
.sco-rich-description h2,.sco-rich-description h3,.sco-rich-description h4{font-family:inherit!important;font-size:17px!important;font-weight:800!important;line-height:1.4!important;color:#233b4a!important;margin:22px 0 10px!important}
.sco-rich-description h2:first-child,.sco-rich-description h3:first-child{margin-top:0!important}
.sco-rich-description p{margin:0 0 14px!important;line-height:1.75!important}
.sco-rich-description ul{list-style:none!important;padding:0!important;margin:10px 0 20px!important}
.sco-rich-description ul li{list-style:none!important;position:relative;padding:7px 0 7px 27px!important;margin:0!important;line-height:1.65!important}
.sco-rich-description ul li:before{content:'✓';position:absolute;left:1px;top:7px;color:#0785ac;font-weight:900}
.sco-rich-description ol{padding-left:24px!important;margin:10px 0 20px!important}
.sco-rich-description ol li{padding:4px 0!important}
.sco-rich-description strong{color:#243b49;font-weight:750}
.sco-rich-description a{color:#007fa8;text-decoration:underline}

/* v1.3: theme typography and informative bundle accordions */
.sco-offers,.sco-offers button,.sco-modal-panel,.sco-modal-panel button{font-family:inherit!important}
.sco-heading h1,.sco-content h2{font-family:inherit!important;letter-spacing:normal!important}
.sco-service-accordion{border:1px solid #dfebf0;border-radius:12px;margin:10px 0;background:#fbfdfe;overflow:hidden}
.sco-service-accordion summary{cursor:pointer;font-weight:750;color:#1b4356;padding:14px 18px;list-style-position:inside}
.sco-service-accordion[open] summary{border-bottom:1px solid #dfebf0}
.sco-service-accordion .sco-rich-description{padding:18px}
.sco-linked-services{margin-top:20px}
.sco-rich-description h2,.sco-rich-description h3{letter-spacing:normal!important}

/* v1.3.1: isolate offer layout from theme column / grid overrides. */
.sco-offers .sco-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;width:100%!important;max-width:100%!important;float:none!important;clear:both!important;}
.sco-offers .sco-grid>.sco-card{width:auto!important;max-width:none!important;min-width:0!important;margin:0!important;float:none!important;grid-column:auto!important;align-self:stretch!important;}
.sco-offers .sco-card .sco-content{min-width:0;}
.sco-offers .sco-card .sco-bottom{margin-top:auto;}
.postcode-area .postcode-item .sco-booking-notice{max-width:none!important;margin:10px 0 16px!important;padding:10px 13px!important;border-left:3px solid #0784a9;border-radius:5px;background:#eaf7fb;font-size:13px!important;line-height:1.5!important;font-weight:600;}
@media(max-width:900px){.sco-offers .sco-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:620px){.sco-offers .sco-grid{grid-template-columns:minmax(0,1fr)!important;}}

/* v1.3.2: flex layout fallback for themes that interfere with CSS grid. */
.sco-offers .sco-grid{display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:22px!important;grid-template-columns:none!important;}
.sco-offers .sco-grid > article.sco-card{display:flex!important;flex-direction:column!important;flex:0 0 calc((100% - 44px)/3)!important;width:calc((100% - 44px)/3)!important;max-width:calc((100% - 44px)/3)!important;box-sizing:border-box!important;}
@media(max-width:900px){.sco-offers .sco-grid > article.sco-card{flex-basis:calc((100% - 22px)/2)!important;width:calc((100% - 22px)/2)!important;max-width:calc((100% - 22px)/2)!important;}}
@media(max-width:620px){.sco-offers .sco-grid > article.sco-card{flex-basis:100%!important;width:100%!important;max-width:100%!important;}}

/* Consistent text arrow on desktop and mobile; never substitute icon glyphs. */
.sco-booking-toggle::before,.sco-booking-toggle::after{content:none!important;display:none!important}
.sco-booking-toggle .sco-text-arrow{display:inline!important;font-family:Arial,sans-serif!important;font-size:1em!important;font-style:normal!important;font-weight:700!important;line-height:inherit!important;margin-left:3px!important;vertical-align:baseline!important;color:inherit!important}

/* v1.3.7: use an SVG arrow rather than a font-dependent glyph on iOS. */
.sco-booking-toggle .sco-text-arrow{display:inline-block!important;width:11px!important;height:11px!important;min-width:11px!important;max-width:11px!important;vertical-align:-2px!important;margin-left:4px!important;overflow:visible!important;fill:none!important;stroke:none!important;flex-shrink:0!important}
.sco-booking-toggle .sco-text-arrow path{stroke:currentColor!important;fill:none!important}
.sco-booking-toggle .sco-text-arrow::before,.sco-booking-toggle .sco-text-arrow::after{content:none!important;display:none!important}

/* v1.4: concise cards, genuine images only, typography inherited from theme */
.sco-offers .sco-card{border-radius:16px;box-shadow:0 7px 25px rgba(20,48,63,.055);border-color:#dce7ec}
.sco-offers .sco-card-no-photo .sco-content{padding-top:25px}
.sco-offers .sco-card-topline{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.sco-offers .sco-card-badge{font-size:10px;letter-spacing:.35px;font-weight:800;background:#e4f4fa;color:#086e92;padding:6px 9px;border-radius:999px}
.sco-offers .sco-content h2{font-size:21px!important;margin:14px 0 9px!important;line-height:1.25!important}
.sco-offers .sco-preview{margin-top:12px!important;margin-bottom:17px!important}
.sco-offers .sco-price{margin:5px 0 14px}
.sco-offers .sco-photo{height:180px}
.sco-offers .sco-book,.sco-offers .sco-open-modal{transition:background .18s ease,transform .18s ease}
.sco-offers .sco-book:focus-visible,.sco-offers .sco-open-modal:focus-visible,.sco-offers .sco-filter:focus-visible{outline:3px solid #79bed5;outline-offset:3px}
@media(max-width:620px){.sco-offers .sco-content h2{font-size:20px!important}.sco-offers .sco-card-no-photo .sco-content{padding-top:20px}}
