/* RestoreHer creative section library. Scoped to RHS blocks, no global font or layout reset. */
.rhs-builder-content{width:100%}.rhs-page-layout{width:100%}.rhs-section{--rhs-ink:#303735;--rhs-background:#fcf8f0;--rhs-accent:#d28a70;position:relative;isolation:isolate;overflow:hidden;background:var(--rhs-background);color:var(--rhs-ink);min-height:240px;padding:clamp(55px,7.4vw,116px) max(22px,calc((100vw - 1250px)/2));font-family:Archivo,Arial,sans-serif}
.rhs-tone-cream{--rhs-background:#fcf8f0;--rhs-ink:#303735;--rhs-accent:#d28a70}
.rhs-tone-white{--rhs-background:#ffffff;--rhs-ink:#303735;--rhs-accent:#d28a70}
.rhs-tone-sage{--rhs-background:#cedbd1;--rhs-ink:#2c433a;--rhs-accent:#a96356}
.rhs-tone-aqua{--rhs-background:#d6e9e7;--rhs-ink:#284948;--rhs-accent:#bf7660}
.rhs-tone-peach{--rhs-background:#f1d4c4;--rhs-ink:#533e3c;--rhs-accent:#ac6a59}
.rhs-tone-charcoal{--rhs-background:#293435;--rhs-ink:#faf7f0;--rhs-accent:#f2bba1}
.rhs-tone-lavender{--rhs-background:#e7def0;--rhs-ink:#42374d;--rhs-accent:#af716e}
.rhs-section-inner{max-width:1180px;margin-inline:auto;position:relative;z-index:1}.rhs-width-narrow .rhs-section-inner{max-width:880px}.rhs-width-full .rhs-section-inner{max-width:none}
.rhs-section-main{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(32px,6.5vw,100px)}.rhs-reverse .rhs-section-main{direction:rtl}.rhs-reverse .rhs-section-main>*{direction:ltr}
.rhs-section-copy{position:relative;z-index:2}.rhs-section-eyebrow{font-family:Caveat,cursive;font-size:clamp(22px,2.65vw,35px);color:var(--rhs-accent);line-height:1.25;margin:0 0 13px}
.rhs-section-heading{font-size:clamp(32px,4.8vw,65px);line-height:1.07;letter-spacing:-.035em;font-weight:800;max-width:900px;margin:0 0 21px;font-family:Archivo,sans-serif}
.rhs-section-body{font-size:clamp(15px,1.4vw,18px);line-height:1.75;opacity:.88;max-width:690px}.rhs-section-body p{margin:0 0 14px}.rhs-section-body p:last-child{margin:0}
.rhs-section-button{display:inline-flex;align-items:center;justify-content:center;background:var(--rhs-ink);color:var(--rhs-background);font-size:15px;line-height:1.3;font-weight:650;padding:14px 24px;text-decoration:none;border-radius:6px;margin-top:26px;transition:transform .18s ease,opacity .18s ease}.rhs-section-button:hover{transform:translateY(-2px);opacity:.86;color:var(--rhs-background)}
.rhs-section-photo{position:relative;aspect-ratio:4/4.25;border-radius:51% 49% 38% 62% / 39% 57% 43% 61%;background:color-mix(in srgb,var(--rhs-accent) 25%,white);overflow:hidden;max-height:560px;box-shadow:15px 20px 0 color-mix(in srgb,var(--rhs-accent) 21%,transparent)}.rhs-section-photo img{width:100%;height:100%;object-fit:cover;display:block}.rhs-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:20px;color:var(--rhs-ink);opacity:.6;font-size:14px}
.rhs-section-hero{min-height:580px;display:flex;align-items:center}.rhs-section-hero .rhs-section-inner{width:100%}.rhs-section-hero .rhs-section-heading{font-size:clamp(46px,6vw,86px)}
.rhs-section-feature .rhs-section-photo{border-radius:17% 43% 15% 25% / 30% 12% 32% 17%;transform:rotate(-2deg)}.rhs-section-editorial .rhs-section-photo{border-radius:200px 200px 15px 15px}.rhs-section-stack .rhs-section-photo{transform:rotate(3deg);border:9px solid #fff;border-radius:10px;box-shadow:-22px 24px 0 color-mix(in srgb,var(--rhs-accent) 43%,white)}.rhs-photo-frame{position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff99}
.rhs-section-gallery .rhs-section-photo{aspect-ratio:1.25;border-radius:12px;transform:rotate(-2deg)}
.rhs-section-quote{text-align:center;padding-block:100px 120px}.rhs-section-quote .rhs-section-inner{max-width:970px}.rhs-section-quote .rhs-section-heading{font-family:Instrument Serif,Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(42px,5.5vw,78px);letter-spacing:-.015em}.rhs-section-quote .rhs-section-body{margin-inline:auto}
.rhs-section-cta{text-align:center;padding-block:82px}.rhs-section-cta .rhs-section-inner{max-width:920px}.rhs-section-cta .rhs-section-heading{margin-inline:auto}.rhs-section-cta .rhs-section-body{margin-inline:auto}
.rhs-align-centre .rhs-section-copy,.rhs-align-centre:not(:has(.rhs-section-main)){text-align:center}.rhs-align-right .rhs-section-copy{text-align:right}.rhs-align-centre .rhs-section-body,.rhs-align-centre .rhs-section-heading{margin-inline:auto}.rhs-align-right .rhs-section-body,.rhs-align-right .rhs-section-heading{margin-left:auto}
.rhs-section-cards .rhs-section-copy,.rhs-section-stats .rhs-section-copy,.rhs-section-timeline .rhs-section-copy{text-align:center}.rhs-section-cards .rhs-section-heading,.rhs-section-stats .rhs-section-heading,.rhs-section-timeline .rhs-section-heading{margin-inline:auto}.rhs-section-cards .rhs-section-body,.rhs-section-stats .rhs-section-body,.rhs-section-timeline .rhs-section-body{margin-inline:auto}
.rhs-section-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:44px}.rhs-section-item{border:1px solid color-mix(in srgb,var(--rhs-ink) 12%,transparent);padding:clamp(24px,3.2vw,39px);border-radius:13px;background:color-mix(in srgb,var(--rhs-background) 80%,white);box-shadow:8px 8px 0 color-mix(in srgb,var(--rhs-accent) 18%,transparent);text-align:left;min-width:0}.rhs-section-item:nth-child(2){transform:rotate(2deg)}.rhs-section-item:nth-child(3){transform:rotate(-1deg)}.rhs-section-item h3{font-family:Archivo,sans-serif;font-weight:750;font-size:clamp(20px,2vw,28px);margin:0 0 12px}.rhs-section-item p{font-size:16px;line-height:1.65;opacity:.78;margin:0}.rhs-section-stats .rhs-section-item{text-align:center;box-shadow:none;background:transparent;border:0;border-top:2px solid var(--rhs-accent);border-radius:0;transform:none}.rhs-stat-number{font-family:Instrument Serif,Georgia,serif;font-weight:400;font-size:clamp(42px,6.5vw,94px);letter-spacing:-.03em;display:block;line-height:1;margin-bottom:15px}.rhs-item-number{font-family:Caveat,cursive;font-size:37px;color:var(--rhs-accent)}
.rhs-section-timeline .rhs-section-items{gap:18px}.rhs-section-timeline .rhs-section-item{border-top:5px solid var(--rhs-accent)}
.rhs-section-events .rhs-section-copy{text-align:center}.rhs-section-events .rhs-section-heading,.rhs-section-events .rhs-section-body{margin-inline:auto}
.rhs-section-decor{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:visible}.rhs-decoration{position:absolute;display:block;width:var(--rhs-d-size);height:var(--rhs-d-size);color:var(--rhs-d-colour);opacity:var(--rhs-d-opacity);transform:translate(var(--rhs-d-x),var(--rhs-d-y)) rotate(var(--rhs-d-rotation)) scale(var(--rhs-d-scale,1));pointer-events:none;user-select:none}.rhs-decoration svg{height:100%;width:100%;display:block;overflow:visible}.rhs-decor-pos-top-left{top:6%;left:4%}.rhs-decor-pos-top-right{top:6%;right:4%}.rhs-decor-pos-bottom-left{bottom:5%;left:5%}.rhs-decor-pos-bottom-right{bottom:5%;right:5%}.rhs-decor-pos-centre-left{top:42%;left:3%}.rhs-decor-pos-centre-right{top:42%;right:3%}.rhs-decor-pos-centre{top:40%;left:43%}.rhs-decor-pos-free{top:20%;left:20%}
.rhs-decoration-standalone{position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;display:block;max-width:100%}.rhs-decor-block{display:flex;justify-content:center;overflow:hidden;padding:10px;min-height:100px}
.rhs-page-layout .rhs-empty-page{padding:110px 25px;text-align:center}.rhs-page-layout .rhs-empty-page h1{font-family:Archivo,sans-serif;font-size:clamp(28px,5vw,55px);font-weight:800}
/* Calendar layout */
.rhs-calendar{max-width:1120px;margin:36px auto 0;color:var(--rhs-ink,#303735);font-family:Archivo,sans-serif}.rhs-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 22px;flex-wrap:wrap}.rhs-calendar-controls h3{font-size:clamp(21px,3vw,30px);font-weight:750;margin:0}.rhs-calendar-controls a{border:1px solid #aaa;border-radius:30px;padding:7px 17px;text-decoration:none;color:inherit;background:#ffffffaf}.rhs-calendar-weekdays,.rhs-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.rhs-calendar-weekdays{text-align:center;font-weight:700;font-size:12px;opacity:.7;padding:12px 0}.rhs-calendar-cell{background:#ffffff95;border:1px solid #3a3b381c;border-radius:8px;min-height:95px;padding:9px;overflow:hidden}.rhs-calendar-cell.is-other-month{opacity:.36}.rhs-calendar-day{display:block;font-size:14px;font-weight:700;margin-bottom:7px}.rhs-calendar-entry{display:block;margin-bottom:4px;font-size:11px;line-height:1.35;text-decoration:none;border-radius:4px;background:#d0e0d7;color:#283933;padding:5px 6px}.rhs-calendar-entry:hover{background:#b4d1be}.rhs-calendar-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:18px;margin:25px 0}.rhs-calendar-card{background:#fffdfa;border:1px solid #00000014;border-radius:12px;padding:22px;box-shadow:4px 4px 0 #b8beb838;color:#283633;text-align:left}.rhs-calendar-card time{font-size:13px;letter-spacing:.025em;color:#6f786c}.rhs-calendar-card h3{font-size:21px;font-weight:750;margin:7px 0}.rhs-calendar-card p{font-size:14px;line-height:1.6;margin:8px 0}.rhs-calendar-card a{color:#405a54;text-decoration:underline;font-weight:600}.rhs-calendar-empty{border:1px dashed #929e95;padding:25px;border-radius:10px;text-align:center}
/* Visual front-end inline editing hover states */
body.rhs-editing .rhs-section[data-rhs-block]{cursor:pointer}body.rhs-editing .rhs-section[data-rhs-block]:hover{outline:2px dashed #627e73;outline-offset:-5px}body.rhs-editing .rhs-section[data-rhs-block].rhs-selected{outline:3px solid #597e6e;outline-offset:-4px}
@media(max-width:830px){.rhs-section{padding:65px 24px}.rhs-section-main{grid-template-columns:1fr;gap:32px}.rhs-reverse .rhs-section-main{direction:ltr}.rhs-section-photo{max-height:460px;max-width:520px;min-width:0;width:100%;margin:auto}.rhs-section-items{grid-template-columns:1fr;gap:15px}.rhs-section-item:nth-child(n){transform:none}.rhs-calendar-cell{min-height:75px;padding:5px}.rhs-calendar-entry{font-size:10px;padding:3px}.rhs-section-hero{min-height:0}}
@media(max-width:520px){.rhs-section{padding:55px 20px}.rhs-section-photo{max-height:380px}.rhs-calendar-cell{min-height:55px}.rhs-calendar-entry{font-size:9px;line-height:1.1;word-break:break-word}.rhs-calendar-weekdays{font-size:10px}.rhs-section-decor{opacity:.7}}
@media(prefers-reduced-motion:reduce){.rhs-section-button{transition:none}}
/* WordPress editor support */
.editor-styles-wrapper .rhs-block-preview{min-height:370px;padding:36px 40px;border-radius:8px;overflow:hidden}.editor-styles-wrapper .rhs-block-preview .rhs-section-heading{font-size:clamp(24px,3vw,42px)}.editor-styles-wrapper .rhs-block-preview .rhs-section-photo{max-height:320px}.editor-styles-wrapper .rhs-block-preview .rhs-section-body{font-size:16px}.rhs-editor-card{border-bottom:1px solid #ddd;margin:8px 0;padding:10px 0}.rhs-block-colour{display:grid;grid-template-columns:1fr 40px 100px;gap:6px;align-items:center;margin:13px 0}.rhs-block-colour input{width:100%;min-height:30px}.rhs-block-colour input[type=color]{padding:0}.rhs-block-decor-preview{display:flex;gap:12px;align-items:center;margin:20px 0}.rhs-editor-free-shape{min-height:130px}.rhs-block-events-notice{padding:15px;background:#fff;border:1px solid #ddd}

/* v2.3 — these section layouts must look identical in public view and builder preview. */
.rhs-section-text .rhs-section-photo,
.rhs-section-heading-only .rhs-section-photo,
.rhs-section-divider .rhs-section-photo,
.rhs-section-spacer .rhs-section-photo{display:none}

/* v2.6 independent reusable shape masks. None removes the clipping. */
.rhs-mask-circle{clip-path:circle(var(--rhs-mask-size,50%) at var(--rhs-mask-x,50%) var(--rhs-mask-y,50%));border-radius:0}
.rhs-mask-oval{clip-path:ellipse(var(--rhs-mask-size,50%) 42% at var(--rhs-mask-x,50%) var(--rhs-mask-y,50%));border-radius:0}
.rhs-mask-arch{clip-path:polygon(0 100%,0 34%,8% 15%,28% 2%,50% 0,72% 2%,92% 15%,100% 34%,100% 100%);border-radius:0}
.rhs-mask-blob{clip-path:polygon(2% 30%,16% 5%,45% 0,78% 10%,98% 38%,90% 81%,61% 100%,24% 89%,0 62%);border-radius:0}
.rhs-mask-diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:0}
.rhs-mask-hexagon{clip-path:polygon(24% 0,76% 0,100% 50%,76% 100%,24% 100%,0 50%);border-radius:0}
.rhs-mask-wave{clip-path:polygon(0 12%,20% 2%,40% 10%,60% 0,80% 10%,100% 0,100% 88%,80% 100%,60% 90%,40% 100%,20% 90%,0 100%);border-radius:0}
.rhs-mask-scallop{clip-path:polygon(0 12%,12% 0,24% 12%,36% 0,48% 12%,60% 0,72% 12%,84% 0,96% 12%,100% 0,100% 88%,88% 100%,76% 88%,64% 100%,52% 88%,40% 100%,28% 88%,16% 100%,4% 88%,0 100%);border-radius:0}
.rhs-mask-section-circle{clip-path:circle(var(--rhs-mask-size,50%) at var(--rhs-mask-x,50%) var(--rhs-mask-y,50%))}
.rhs-mask-section-oval{clip-path:ellipse(var(--rhs-mask-size,50%) 42% at var(--rhs-mask-x,50%) var(--rhs-mask-y,50%))}
.rhs-mask-section-arch{clip-path:polygon(0 100%,0 34%,8% 15%,28% 2%,50% 0,72% 2%,92% 15%,100% 34%,100% 100%)}
.rhs-mask-section-blob{clip-path:polygon(2% 30%,16% 5%,45% 0,78% 10%,98% 38%,90% 81%,61% 100%,24% 89%,0 62%)}
.rhs-mask-section-diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.rhs-mask-section-hexagon{clip-path:polygon(24% 0,76% 0,100% 50%,76% 100%,24% 100%,0 50%)}
.rhs-mask-section-wave{clip-path:polygon(0 12%,20% 2%,40% 10%,60% 0,80% 10%,100% 0,100% 88%,80% 100%,60% 90%,40% 100%,20% 90%,0 100%)}
.rhs-mask-section-scallop{clip-path:polygon(0 12%,12% 0,24% 12%,36% 0,48% 12%,60% 0,72% 12%,84% 0,96% 12%,100% 0,100% 88%,88% 100%,76% 88%,64% 100%,52% 88%,40% 100%,28% 88%,16% 100%,4% 88%,0 100%)}
.rhs-mask-cards-circle .rhs-section-item{clip-path:circle(50% at 50% 50%);aspect-ratio:1}
.rhs-mask-cards-oval .rhs-section-item{clip-path:ellipse(50% 42% at 50% 50%)}
.rhs-mask-cards-arch .rhs-section-item{clip-path:polygon(0 100%,0 35%,20% 2%,50% 0,80% 2%,100% 35%,100% 100%)}
.rhs-mask-cards-blob .rhs-section-item{clip-path:polygon(2% 30%,16% 5%,45% 0,78% 10%,98% 38%,90% 81%,61% 100%,24% 89%,0 62%)}
.rhs-mask-cards-diamond .rhs-section-item{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.rhs-mask-cards-hexagon .rhs-section-item{clip-path:polygon(24% 0,76% 0,100% 50%,76% 100%,24% 100%,0 50%)}
.rhs-mask-cards-wave .rhs-section-item{clip-path:polygon(0 12%,20% 2%,40% 10%,60% 0,80% 10%,100% 0,100% 88%,80% 100%,60% 90%,40% 100%,20% 90%,0 100%)}
.rhs-mask-cards-scallop .rhs-section-item{clip-path:polygon(0 12%,12% 0,24% 12%,36% 0,48% 12%,60% 0,72% 12%,84% 0,96% 12%,100% 0,100% 88%,88% 100%,76% 88%,64% 100%,52% 88%,40% 100%,28% 88%,16% 100%,4% 88%,0 100%)}
.rhs-section-subblocks{display:grid;gap:18px;max-width:930px;margin:35px auto 0;position:relative;z-index:2}
.rhs-subblock{min-width:0}.rhs-subblock h3{font-family:Archivo,sans-serif;font-size:clamp(22px,3vw,36px);font-weight:750}.rhs-subblock img{width:100%;height:auto;max-height:520px;object-fit:contain}.rhs-subblock blockquote{font-family:Instrument Serif,Georgia,serif;font-size:clamp(22px,3vw,38px)}
.rhs-subblock-divider hr{width:100%;border:none;border-top:1px solid currentColor;opacity:.3}
.rhs-insert-slot{position:relative;display:flow-root;max-width:100%;min-height:0}
.rhs-insert-slot:empty{display:none}
.rhs-context-add,.rhs-insert-line{display:none}
