/* MisterSK / shared action system. Loaded after every page stylesheet.
   Existing dimensions and type remain page-owned; shape, state and motion live here. */
:root{--action-green:#1d5442;--action-orange:#ef6024;--action-paper:#fff;--action-speed:220ms;--action-ease:cubic-bezier(.2,.7,.2,1)}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control){
 --action-fill:var(--action-green);--action-ink:#fff;--action-edge:var(--action-green);--action-cut:12px;
 position:relative;isolation:isolate;z-index:0;border:1px solid transparent;border-radius:0 0 3px 3px;
 background:transparent;color:var(--action-ink);box-shadow:none;transform:none;text-decoration:none;
 min-height:44px;cursor:pointer;transition:color var(--action-speed) var(--action-ease);-webkit-tap-highlight-color:transparent;
}
/* Two clipped surfaces create a true angled outline without clipping focus or text. */
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::before,
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::after{
 content:'';position:absolute;pointer-events:none;clip-path:polygon(0 0,calc(100% - var(--action-cut)) 0,100% var(--action-cut),100% 100%,3px 100%,0 calc(100% - 3px));
 transition:clip-path var(--action-speed) var(--action-ease),background-position var(--action-speed) var(--action-ease),background-color var(--action-speed) var(--action-ease);
}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::before{
 inset:-1px;z-index:-2;background:linear-gradient(135deg,transparent 40%,var(--action-orange) 41%,var(--action-orange) 70%,transparent 71%) calc(100% + 5px) -5px/25px 25px no-repeat,var(--action-edge);
}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::after{
 inset:1px;z-index:-1;background:linear-gradient(105deg,transparent 25%,#ffffff0d 50%,transparent 75%) 150% 0/240% 100% no-repeat,var(--action-fill);
}
/* Secondary / outline share the silhouette but remain visually subordinate. */
:root body :is(.button.secondary,.button.outline,.wf-outline-button){--action-fill:#fff;--action-ink:var(--action-green);--action-edge:#a2b9ae}
:root body :is(.button.white,.button.light){--action-fill:#fff;--action-ink:var(--action-green);--action-edge:#fff}
:root body :is(.final-cta,.sf-final,.wf-final,.about-final,.cta-dark,.booking-card,.services-cta) .button{--action-fill:#fff;--action-ink:var(--action-green);--action-edge:#fff;color:var(--action-ink)}
:root body .sf-run{--action-fill:var(--action-green);--action-ink:#fff;--action-edge:#90b2a3;--action-cut:8px}
:root body :is(.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control){--action-cut:8px}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control) :is(.ico,svg,[aria-hidden=true]):last-child{
 flex-shrink:0;transition:transform var(--action-speed) var(--action-ease);
}
/* Text actions: quiet underline, with no orange text contrast penalty. */
:root body :is(.text-link,.inline-link){position:relative;text-decoration:none;border-bottom:0;color:var(--action-green);min-height:44px;transition:color var(--action-speed) var(--action-ease),background-size var(--action-speed) var(--action-ease);background:linear-gradient(var(--action-orange),var(--action-orange)) left calc(100% - 6px)/0 1px no-repeat}
:root body :is(.final-cta,.sf-final,.wf-final,.about-final,.cta-dark) :is(.text-link,.inline-link){color:#fff}
:root body :is(.text-link,.inline-link) :is(.ico,svg,[aria-hidden=true]):last-child{transition:transform var(--action-speed) var(--action-ease);flex-shrink:0}
/* Touch and keyboard retain a visible pressed/focus response without hover. */
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control,.text-link,.inline-link):focus-visible{
 outline:2px solid var(--action-orange);outline-offset:5px;box-shadow:0 0 0 2px #fff;
}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):active:not(:disabled):not([aria-disabled=true]){--action-cut:15px}
:root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):active:not(:disabled):not([aria-disabled=true])::after{background-color:#174535}
:root body :is(.button.secondary,.button.outline,.button.white,.button.light,.wf-outline-button):active:not(:disabled):not([aria-disabled=true])::after{background-color:#e8eee9}
:root body :is(.final-cta,.sf-final,.wf-final,.about-final,.cta-dark,.booking-card,.services-cta) .button:active:not(:disabled)::after{background-color:#e8eee9}
@media(hover:hover) and (pointer:fine){
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):hover:not(:disabled):not([aria-disabled=true]){--action-cut:16px;background:transparent;border-color:transparent;transform:none;box-shadow:none}
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):hover:not(:disabled):not([aria-disabled=true])::before{background-position:100% 0}
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):hover:not(:disabled):not([aria-disabled=true])::after{background-position:0 0;background-color:#254f41}
 :root body :is(.button.secondary,.button.outline,.wf-outline-button):hover:not(:disabled):not([aria-disabled=true]){--action-edge:var(--action-green);color:white}
 :root body :is(.button.white,.button.light):hover:not(:disabled):not([aria-disabled=true])::after{background-color:#edf3ef}
 :root body :is(.final-cta,.sf-final,.wf-final,.about-final,.cta-dark,.booking-card,.services-cta) .button:hover:not(:disabled):not([aria-disabled=true])::after{background-color:#edf3ef}
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control):hover:not(:disabled):not([aria-disabled=true]) :is(.ico,svg,[aria-hidden=true]):last-child{transform:translateX(3px)}
 :root body :is(.text-link,.inline-link):hover{color:var(--action-green);background-size:calc(100% - 30px) 1px;transition:background-size var(--action-speed) var(--action-ease)}
 :root body :is(.final-cta,.sf-final,.wf-final,.about-final,.cta-dark) :is(.text-link,.inline-link):hover{color:#fff}
 :root body :is(.text-link,.inline-link):hover :is(.ico,svg,[aria-hidden=true]):last-child{transform:translateX(3px)}
}
:root body :is(.button,.sf-run,.wf-outline-button):is(:disabled,[aria-disabled=true]){opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
:root body .booking-placeholder .button:disabled{background:transparent;color:var(--action-green)}
@media(prefers-reduced-motion:reduce){
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control,.text-link,.inline-link),
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control,.text-link,.inline-link)::before,
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control,.text-link,.inline-link)::after,
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control,.text-link,.inline-link) :is(.ico,svg,[aria-hidden=true]):last-child{transition:none!important;animation:none!important;transform:none!important}
}
@media(forced-colors:active){
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control){border:1px solid ButtonText;color:ButtonText;background:ButtonFace}
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::before,
 :root body :is(.button,.nav-cta,.wf-outline-button,.sf-run,.sf-demo-button,.sf-chat-question,[data-ask-webflow],.commerce-motion-control)::after{display:none}
 :root body :is(.text-link,.inline-link){text-decoration:underline;color:LinkText}
}
