/*!
 * Sacred Skin Care Core — front-end stylesheet ("sacred noir")
 * Version 1.0.0 · build 2026.10.12.1 · hand-written, no build step.
 * Scope: `.ssc-site` (body class added by the plugin) for everything except :root tokens,
 * the coming-soon document and the CookieYes block. Fonts come from the Elementor kit.
 * `!important` is used only inside the Elementor / CookieYes override blocks (each commented).
 * One rule per line on purpose: the file ships unminified.
 * CONTENTS: 1 Tokens · 2 Base · 3 Layout/sections · 4 Type utilities · 5 Buttons · 6 Glass/grid/tiles
 * 7 Services/filters · 8 FAQ · 9 Credential/CTA band/phone CTA/trust/disclosure · 10 Forms · 11 Journal/reading
 * 12 Advertorial · 13 Location/steps/principles/booking/testimonials/team/hours · 14 Search/404 · 15 Footer/social
 * 16 Coming soon · 17 Sticky CTA/icons/misc · 18 Elementor overrides · 19 CookieYes · 20 Motion/forced-colors/print */

/* 1. Tokens ---------------------------------------------------------------- */
:root{
--ssc-bg:#111311;--ssc-bg2:#191B18;--ssc-ink:#0B0D0C;--ssc-surface:rgba(255,255,255,0.045);--ssc-line:rgba(255,255,255,0.12);
--ssc-bone:#EFECE4;--ssc-heading:#F7F5F0;--ssc-text:#C9CDC5;--ssc-fog:#A8ACA4;/* SPEC allows #A8ACA4: >=4.5:1 on #111311 */
--ssc-accent:#C6A98B;--ssc-accent-light:#E1CBB2;--ssc-graphite:#121412;--ssc-success:#B2C5B3;--ssc-error:#F1B7B4;
--ssc-font-display:'Cormorant Garamond',Georgia,serif;--ssc-font-body:'Inter',system-ui,sans-serif;
--ssc-radius-lg:26px;--ssc-radius:20px;--ssc-radius-sm:14px;--ssc-ease:cubic-bezier(.2,.7,.2,1);--ssc-dur:260ms;
--ssc-gutter:clamp(18px,4vw,64px);--ssc-wrap:1280px;--ssc-reading:760px;--ssc-header-h:76px;
/* derived */
--ssc-shadow:0 18px 40px rgba(0,0,0,.35);--ssc-glow:radial-gradient(60% 50% at 50% 0%,rgba(198,169,139,.14),rgba(198,169,139,0) 70%);
--ssc-t:var(--ssc-dur) var(--ssc-ease)
}

/* 2. Base ------------------------------------------------------------------ */
body.ssc-site{background:var(--ssc-bg);color:var(--ssc-text);font-family:var(--ssc-font-body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-wrap:anywhere}
.ssc-site :where(h1,h2,h3,h4,h5,h6){font-family:var(--ssc-font-display);font-weight:500;letter-spacing:-0.01em;color:var(--ssc-heading);margin:0 0 .5em;overflow-wrap:anywhere}
.ssc-site :where(h1){font-size:88px;line-height:1.02}
.ssc-site :where(h2){font-size:62px;line-height:1.06}
.ssc-site :where(h3){font-size:32px;line-height:1.2}
.ssc-site :where(h4){font-size:24px;line-height:1.3}
.ssc-site :where(h5){font-size:20px;line-height:1.35}
.ssc-site :where(h6){font-size:16px;line-height:1.4;font-family:var(--ssc-font-body);font-weight:600}
.ssc-site p{margin:0 0 1.2em}
.ssc-site p:last-child{margin-bottom:0}
.ssc-site a{color:var(--ssc-accent-light);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;transition:color var(--ssc-t)}
.ssc-site a:hover{color:var(--ssc-heading)}
.ssc-site :focus{outline:none}
.ssc-site :focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:2px;border-radius:4px}
.ssc-site img,.ssc-site svg,.ssc-site video,.ssc-site iframe{max-width:100%}
.ssc-site img{height:auto;display:block}
.ssc-site figure{margin:0}
.ssc-site ::selection{background:var(--ssc-accent);color:var(--ssc-graphite)}
.ssc-site button,.ssc-site input,.ssc-site select,.ssc-site textarea{font:inherit;color:inherit}
.ssc-site hr{border:0;border-top:1px solid var(--ssc-line);margin:32px 0}
.ssc-sr-only,.ssc-site .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}/* !important: must beat display rules on the host element */
/* Skip links (plugin's and Hello's): off-screen until focused, then a bone pill top-left. */
.ssc-site .ssc-skip-link,.ssc-site .skip-link{position:absolute;left:16px;top:-200px;z-index:10000;padding:12px 20px;border-radius:999px;background:var(--ssc-bone);color:var(--ssc-graphite);font-weight:600;font-size:15px;text-decoration:none;clip:auto;clip-path:none;width:auto;height:auto;margin:0;overflow:visible;white-space:nowrap}
.ssc-site .ssc-skip-link:focus,.ssc-site .skip-link:focus{top:16px;outline:2px solid var(--ssc-graphite);outline-offset:2px}

/* 3. Layout / sections ------------------------------------------------------ */
.ssc-wrap{max-width:var(--ssc-wrap);margin-inline:auto;padding-inline:var(--ssc-gutter)}
.ssc-site .e-con-boxed>.e-con-inner{padding-inline:var(--ssc-gutter)}/* kit container_padding is 0 */
.ssc-site .e-con.ssc-reading>.e-con-inner{max-width:calc(var(--ssc-reading) + 2*var(--ssc-gutter))}/* keep a full 760px column inside the gutters */
.ssc-site section.ssc-section{padding:96px 0;position:relative}/* element selector: .e-con.ssc-section already carries Elementor padding */
.ssc-site section.ssc-section--tight{padding:40px 0}
.ssc-site .ssc-section--alt{background:var(--ssc-bg2)}
.ssc-site .ssc-section--host{padding:0}
.ssc-site .ssc-section--alt+.ssc-section--alt{border-top:1px solid var(--ssc-line)}
.ssc-site .ssc-hairline:not(.elementor-widget){border:0;border-top:1px solid var(--ssc-line);height:0;margin:0}/* the Elementor divider widget draws its own line */
.ssc-site .elementor-widget.ssc-hairline .elementor-divider{padding:0}
.ssc-glow{position:relative}
.ssc-glow::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:var(--ssc-glow)}
.ssc-glow>*{position:relative;z-index:1}
@media (max-width:1024px){
.ssc-site section.ssc-section{padding:64px 0}
.ssc-site :where(h1){font-size:64px}.ssc-site :where(h2){font-size:50px}.ssc-site :where(h3){font-size:28px}.ssc-site :where(h4){font-size:22px}
}
@media (max-width:767px){
body.ssc-site{font-size:16px}
.ssc-site section.ssc-section{padding:48px 0}
.ssc-site section.ssc-section--tight{padding:24px 0}
.ssc-site :where(h1){font-size:46px}.ssc-site :where(h2){font-size:38px}.ssc-site :where(h3){font-size:24px}.ssc-site :where(h4){font-size:20px}
}

/* 4. Type utilities --------------------------------------------------------- */
:is(.ssc-site,.ssc-coming-soon) .ssc-eyebrow,.ssc-site .ssc-eyebrow-widget p{font-family:var(--ssc-font-body);font-weight:500;font-size:12px;line-height:1.4;letter-spacing:.2em;text-transform:uppercase;color:var(--ssc-accent);margin:0 0 14px}
:is(.ssc-site,.ssc-coming-soon) .ssc-lead,.ssc-site .ssc-lead-widget p{font-size:20px;line-height:1.55;color:var(--ssc-text);max-width:68ch}
.ssc-site .ssc-h1,.ssc-site .ssc-h2,.ssc-site .ssc-h3{font-family:var(--ssc-font-display);font-weight:500;letter-spacing:-0.01em;color:var(--ssc-heading)}
.ssc-site .ssc-h1,.ssc-site .ssc-h1 .elementor-heading-title{font-size:88px;line-height:1.02}
.ssc-site .ssc-h2,.ssc-site .ssc-h2 .elementor-heading-title{font-size:62px;line-height:1.06}
.ssc-site .ssc-h3,.ssc-site .ssc-h3 .elementor-heading-title{font-size:32px;line-height:1.2}
:is(.ssc-site,.ssc-coming-soon) .ssc-muted{color:var(--ssc-fog)}
.ssc-site .ssc-section-heading{max-width:820px;margin:0 0 48px}
.ssc-site .ssc-section-heading--center{margin-inline:auto;text-align:center}
.ssc-site .ssc-section-heading--center .ssc-lead{margin-inline:auto}
.ssc-site .ssc-section-heading>:last-child{margin-bottom:0}
.ssc-site .ssc-section-heading .ssc-h2+.ssc-lead{margin-top:18px}
@media (max-width:1024px){
.ssc-site .ssc-h1,.ssc-site .ssc-h1 .elementor-heading-title{font-size:64px}
.ssc-site .ssc-h2,.ssc-site .ssc-h2 .elementor-heading-title{font-size:50px}
.ssc-site .ssc-h3,.ssc-site .ssc-h3 .elementor-heading-title{font-size:28px}
.ssc-site .ssc-lead,.ssc-site .ssc-lead-widget p{font-size:19px}
.ssc-site .ssc-section-heading{margin-bottom:36px}
}
@media (max-width:767px){
.ssc-site .ssc-h1,.ssc-site .ssc-h1 .elementor-heading-title{font-size:46px}
.ssc-site .ssc-h2,.ssc-site .ssc-h2 .elementor-heading-title{font-size:38px}
.ssc-site .ssc-h3,.ssc-site .ssc-h3 .elementor-heading-title{font-size:24px}
.ssc-site .ssc-lead,.ssc-site .ssc-lead-widget p{font-size:18px}
.ssc-site .ssc-section-heading{margin-bottom:28px}
}

/* 5. Buttons ----------------------------------------------------------------- */
.ssc-site .ssc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 26px;border-radius:999px;font-family:var(--ssc-font-body);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;border:1px solid transparent;white-space:nowrap;transition:var(--ssc-t)}
.ssc-site .ssc-btn .ssc-icon,.ssc-site .ssc-btn__icon{flex:none;width:18px;height:18px}
.ssc-site .ssc-btn--primary{background:var(--ssc-bone);color:var(--ssc-graphite);border-color:var(--ssc-bone)}
.ssc-site .ssc-btn--primary:hover{background:#fff;border-color:#fff;color:var(--ssc-graphite);transform:translateY(-2px)}
.ssc-site .ssc-btn--primary:focus-visible{outline:2px solid var(--ssc-graphite);outline-offset:2px;box-shadow:0 0 0 5px var(--ssc-accent-light)}
.ssc-site .ssc-btn--outline{background:transparent;color:var(--ssc-bone);border-color:rgba(255,255,255,.32)}
.ssc-site .ssc-btn--outline:hover{background:var(--ssc-surface);border-color:var(--ssc-bone);color:var(--ssc-heading);transform:translateY(-2px)}
.ssc-site .ssc-btn--text{min-height:44px;padding:10px 0;border-radius:4px;background:none;color:var(--ssc-accent-light);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em}
.ssc-site .ssc-btn--text:hover{color:var(--ssc-heading)}
.ssc-site .ssc-btn--text .ssc-btn__icon{transition:transform var(--ssc-t)}
.ssc-site .ssc-btn--text:hover .ssc-btn__icon{transform:translateX(3px)}
.ssc-site .ssc-btn--lg{min-height:56px;padding:16px 34px;font-size:16px}
.ssc-site .ssc-btn--block{display:flex;width:100%}
.ssc-site .ssc-btn[disabled],.ssc-site .ssc-btn.is-disabled,.ssc-site .ssc-btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;pointer-events:none;transform:none}
.ssc-site .ssc-btn.is-loading{position:relative;color:transparent;pointer-events:none}
.ssc-site .ssc-btn.is-loading::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid var(--ssc-graphite);border-color:var(--ssc-graphite) transparent;animation:ssc-spin .8s linear infinite}
.ssc-site .ssc-btn--outline.is-loading::after{border-color:var(--ssc-bone) transparent}
@keyframes ssc-spin{to{transform:rotate(360deg)}}
@media (max-width:767px){.ssc-site .ssc-btn{white-space:normal;text-align:center}}

/* 6. Glass cards, grids, quick tiles ----------------------------------------- */
.ssc-site .ssc-glass{position:relative;background:var(--ssc-surface);border:1px solid var(--ssc-line);border-radius:var(--ssc-radius-lg);padding:32px;transition:var(--ssc-t)}
.ssc-site .ssc-glass--sm{border-radius:var(--ssc-radius);padding:22px 24px}
.ssc-site .ssc-glass--hover:hover,.ssc-site .ssc-glass--hover:focus-within{transform:translateY(-3px);border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.065);box-shadow:var(--ssc-shadow)}
.ssc-site .ssc-glass>:last-child{margin-bottom:0}
.ssc-site .ssc-grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ssc-site .ssc-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ssc-site .ssc-grid--4,.ssc-site .ssc-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
.ssc-site .ssc-grid>*{min-width:0}
.ssc-site .ssc-tiles{display:grid;gap:20px}
.ssc-site .ssc-tile{display:flex;flex-direction:column;gap:10px;min-height:180px;padding:26px;color:var(--ssc-text);text-decoration:none;border-radius:var(--ssc-radius)}
.ssc-site .ssc-tile__icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:12px;background:rgba(198,169,139,.12);color:var(--ssc-accent)}
.ssc-site .ssc-tile__icon .ssc-icon{width:22px;height:22px}
.ssc-site .ssc-tile__title{font-family:var(--ssc-font-display);font-size:26px;line-height:1.15;color:var(--ssc-heading);margin-top:6px}
.ssc-site .ssc-tile__text{font-size:15px;color:var(--ssc-fog)}
.ssc-site .ssc-tile:hover .ssc-tile__title{color:var(--ssc-accent-light)}
@media (max-width:1024px){.ssc-site .ssc-grid,.ssc-site .ssc-grid--3,.ssc-site .ssc-grid--4,.ssc-site .ssc-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
.ssc-site .ssc-grid,.ssc-site .ssc-grid--2,.ssc-site .ssc-grid--3,.ssc-site .ssc-grid--4,.ssc-site .ssc-tiles{grid-template-columns:minmax(0,1fr);gap:16px}
.ssc-site .ssc-glass{padding:24px;border-radius:var(--ssc-radius)}
.ssc-site .ssc-glass--sm{padding:20px;border-radius:var(--ssc-radius-sm)}
.ssc-site .ssc-tile{min-height:0}
}

/* 7. Services: cards, filters, chips, results count, empty state, fact rows --- */
.ssc-site .ssc-service-card,.ssc-site .ssc-article-card{display:flex;flex-direction:column;padding:0;overflow:hidden;height:100%}
.ssc-site .ssc-service-card__media,.ssc-site .ssc-article-card__media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ssc-bg2)}
.ssc-site .ssc-article-card__media{aspect-ratio:16/10}
.ssc-site .ssc-service-card__media img,.ssc-site .ssc-article-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ssc-ease)}
.ssc-site .ssc-service-card:hover .ssc-service-card__media img,.ssc-site .ssc-article-card:hover .ssc-article-card__media img{transform:scale(1.04)}
.ssc-site .ssc-service-card__body,.ssc-site .ssc-article-card__body{display:flex;flex-direction:column;flex:1 1 auto;gap:10px;padding:24px 26px 26px}
.ssc-site .ssc-service-card__cat,.ssc-site .ssc-article-card__body .ssc-eyebrow{margin:0}
.ssc-site .ssc-service-card__title,.ssc-site .ssc-article-card__title{font-size:28px;line-height:1.15;margin:0}
.ssc-site :is(.ssc-service-card__title,.ssc-article-card__title) a{color:inherit;text-decoration:none}
.ssc-site :is(.ssc-service-card__title,.ssc-article-card__title) a::after{content:"";position:absolute;inset:0}/* whole card clickable */
.ssc-site :is(.ssc-service-card__title,.ssc-article-card__title) a:hover{color:var(--ssc-accent-light)}
.ssc-site :is(.ssc-service-card__title,.ssc-article-card__title,.ssc-category-card__title) a:focus-visible{outline:none}
.ssc-site :is(.ssc-service-card,.ssc-article-card,.ssc-category-card):has(a:focus-visible),.ssc-site .ssc-tile:focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:3px}
.ssc-site .ssc-service-card__text,.ssc-site .ssc-article-card__text{font-size:15.5px;color:var(--ssc-text);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ssc-site .ssc-service-card__meta{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;color:var(--ssc-fog)}
.ssc-site .ssc-service-card__meta li{display:inline-flex;align-items:center;gap:6px}
.ssc-site .ssc-service-card__meta li+li::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--ssc-fog);margin-right:8px}
.ssc-site .ssc-service-card__body>.ssc-btn--text,.ssc-site .ssc-article-card__body>.ssc-btn--text,.ssc-site .ssc-team-card .ssc-btn--text{margin-top:auto;align-self:flex-start;position:relative;z-index:1}
.ssc-site .ssc-service-card[hidden],.ssc-site .ssc-service-card.is-hidden{display:none}
.ssc-site .ssc-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.ssc-site .ssc-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:999px;background:var(--ssc-surface);border:1px solid var(--ssc-line);color:var(--ssc-text);font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;cursor:pointer;transition:var(--ssc-t)}
.ssc-site .ssc-chip:hover{border-color:rgba(255,255,255,.3);color:var(--ssc-heading)}
.ssc-site .ssc-chip.is-active,.ssc-site .ssc-chip[aria-pressed="true"],.ssc-site .ssc-chip[aria-current]{background:var(--ssc-bone);border-color:var(--ssc-bone);color:var(--ssc-graphite)}
.ssc-site .ssc-chip--clear{background:none;border-style:dashed;color:var(--ssc-fog)}
.ssc-site .ssc-chip--clear[hidden]{display:none}
.ssc-site .ssc-results-count,.ssc-site .ssc-faq__count{font-size:14px;color:var(--ssc-fog);margin:0 0 24px}
.ssc-site .ssc-faq__count{margin:10px 0 0}
.ssc-site .ssc-results-count:empty{display:none}
.ssc-site .ssc-empty-state{text-align:center;max-width:640px;margin:0 auto;padding:48px 32px}
.ssc-site .ssc-empty-state__title{font-size:30px;margin-bottom:10px}
.ssc-site .ssc-empty-state p{color:var(--ssc-fog);margin-bottom:22px}
.ssc-site .ssc-fact-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:0 0 32px}
.ssc-site .ssc-fact{background:var(--ssc-surface);border:1px solid var(--ssc-line);border-radius:var(--ssc-radius-sm);padding:16px 18px;margin:0;min-width:0}
.ssc-site .ssc-fact dt{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ssc-fog);margin:0 0 6px;font-weight:500}
.ssc-site .ssc-fact dd{margin:0;font-family:var(--ssc-font-display);font-size:24px;line-height:1.2;color:var(--ssc-heading)}
@media (max-width:767px){
.ssc-site .ssc-service-card__body,.ssc-site .ssc-article-card__body{padding:20px 20px 22px}
.ssc-site .ssc-service-card__title,.ssc-site .ssc-article-card__title{font-size:24px}
.ssc-site .ssc-filters{gap:8px}
.ssc-site .ssc-chip{padding:9px 14px}
.ssc-site .ssc-fact-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ssc-site .ssc-fact dd{font-size:21px}
.ssc-site .ssc-empty-state{padding:32px 22px}
}
@media (max-width:360px){.ssc-site .ssc-fact-row{grid-template-columns:minmax(0,1fr)}}

/* 8. FAQ accordion ----------------------------------------------------------- */
.ssc-site .ssc-faq{max-width:860px}
.ssc-site .ssc-faq__search{margin:0 0 32px;max-width:520px}
.ssc-site .ssc-faq__search .ssc-input,.ssc-site .ssc-journal__search .ssc-input,.ssc-site .ssc-search-form .ssc-input{border-radius:999px;padding-inline:22px}
.ssc-site .ssc-faq__group{margin:0 0 40px}
.ssc-site .ssc-faq__group:last-child{margin-bottom:0}
.ssc-site .ssc-faq__group-title{font-size:28px;margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid var(--ssc-line)}
.ssc-site .ssc-faq__item{border-bottom:1px solid var(--ssc-line)}
.ssc-site .ssc-faq__item[hidden],.ssc-site .ssc-faq__a[hidden],.ssc-site .ssc-faq__none[hidden],.ssc-site .ssc-faq__group[hidden]{display:none}
.ssc-site .ssc-faq__heading{margin:0;font:inherit}
.ssc-site .ssc-faq__q{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:56px;padding:18px 4px;background:none;border:0;border-radius:0;text-align:left;cursor:pointer;font-family:var(--ssc-font-display);font-size:24px;line-height:1.25;font-weight:500;color:var(--ssc-heading);transition:color var(--ssc-t)}
.ssc-site .ssc-faq__q:hover{color:var(--ssc-accent-light);background:none}
.ssc-site .ssc-faq__q:focus-visible{outline-offset:-2px;border-radius:8px}
.ssc-site .ssc-faq__chev{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--ssc-line);color:var(--ssc-accent);transition:var(--ssc-t)}
.ssc-site .ssc-faq__chev .ssc-icon{width:16px;height:16px}
.ssc-site .ssc-faq__q[aria-expanded="true"] .ssc-faq__chev{transform:rotate(180deg);background:rgba(198,169,139,.12)}
.ssc-site .ssc-faq__a{overflow:hidden}
.ssc-site .ssc-faq__a.is-animating{transition:height var(--ssc-t)}
.ssc-site .ssc-faq__a-inner{padding:0 4px 22px;max-width:70ch;color:var(--ssc-text)}
.ssc-site .ssc-faq__a-inner>:last-child{margin-bottom:0}
.ssc-site .ssc-faq__a-inner ul,.ssc-site .ssc-faq__a-inner ol{padding-left:1.2em;margin:0 0 1em}
.ssc-site .ssc-faq__none{color:var(--ssc-fog);padding:24px 0;margin:0}
@media (max-width:767px){
.ssc-site .ssc-faq__q{font-size:20px;padding:14px 2px;gap:14px}
.ssc-site .ssc-faq__group-title{font-size:24px}
}

/* 9. Credential row, CTA band, phone CTA, trust note, disclosure -------------- */
.ssc-site .ssc-credential-row{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14px;color:var(--ssc-fog)}
.ssc-site .ssc-credential-row li{display:inline-flex;align-items:center;gap:8px}
.ssc-site .ssc-credential-row .ssc-icon{color:var(--ssc-accent);width:18px;height:18px}
.ssc-site .ssc-cta-band__inner{text-align:center;padding:64px 48px;overflow:hidden}
.ssc-site .ssc-cta-band__inner::before{content:"";position:absolute;inset:0;background:var(--ssc-glow);pointer-events:none}
.ssc-site .ssc-cta-band__inner>*{position:relative}
.ssc-site .ssc-cta-band__inner .ssc-h2{max-width:16ch;margin:0 auto 16px}
.ssc-site .ssc-cta-band__inner .ssc-lead{margin:0 auto 28px;max-width:56ch}
.ssc-site .ssc-cta-band__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:0 0 20px}
.ssc-site .ssc-cta-band .ssc-trust-note{margin:8px auto 0}
:is(.ssc-site,.ssc-coming-soon) .ssc-phone-cta{display:inline-grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;text-align:left;padding:14px 22px 14px 16px;border-radius:999px;border:1px solid var(--ssc-line);background:var(--ssc-surface);color:var(--ssc-heading);text-decoration:none;min-height:64px;transition:var(--ssc-t)}
:is(.ssc-site,.ssc-coming-soon) .ssc-phone-cta .ssc-icon{grid-row:1/span 2;width:36px;height:36px;padding:8px;border-radius:50%;background:rgba(198,169,139,.14);color:var(--ssc-accent);box-sizing:border-box}
:is(.ssc-site,.ssc-coming-soon) .ssc-phone-cta__label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ssc-fog);line-height:1.3}
:is(.ssc-site,.ssc-coming-soon) .ssc-phone-cta__num{font-family:var(--ssc-font-display);font-size:24px;line-height:1.1;color:var(--ssc-heading);white-space:nowrap}
:is(.ssc-site,.ssc-coming-soon) .ssc-phone-cta:hover{border-color:var(--ssc-accent);background:rgba(198,169,139,.1);transform:translateY(-2px)}
.ssc-site .ssc-phone-cta:hover .ssc-phone-cta__num{color:var(--ssc-accent-light)}
.ssc-site .ssc-trust-note{font-size:14px;color:var(--ssc-fog);margin:16px 0 0;max-width:64ch}
.ssc-site .ssc-disclosure{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;margin:24px 0 0;border:1px solid var(--ssc-line);border-left:3px solid var(--ssc-accent);border-radius:var(--ssc-radius-sm);background:var(--ssc-surface);font-size:14.5px;color:var(--ssc-text)}
.ssc-site .ssc-disclosure .ssc-icon{flex:none;color:var(--ssc-accent);margin-top:2px}
.ssc-site .ssc-disclosure p{margin:0}
.ssc-site .ssc-disclosure--post{margin-top:40px}
@media (max-width:767px){
.ssc-site .ssc-cta-band__inner{padding:40px 22px}
.ssc-site .ssc-cta-band__actions,.ssc-site .ssc-404__links,.ssc-site .ssc-search-form,.ssc-site .ssc-journal__search{flex-direction:column;align-items:stretch}
}

/* 10. Forms ------------------------------------------------------------------ */
.ssc-site .ssc-form,.ssc-site .ssc-form-suppressed{max-width:720px}
.ssc-site .ssc-form__notice{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;margin:0 0 28px;border-radius:var(--ssc-radius-sm);background:rgba(198,169,139,.1);border:1px solid rgba(198,169,139,.35);color:var(--ssc-heading);font-size:15px}
.ssc-site .ssc-form__notice .ssc-icon{flex:none;color:var(--ssc-accent);margin-top:3px}
.ssc-site .ssc-form__notice p{margin:0}
.ssc-site .ssc-form__status{margin:0 0 24px;font-size:15px}
.ssc-site .ssc-form__status:empty{display:none}
.ssc-site .ssc-form__status[data-state]{padding:14px 18px;border-radius:var(--ssc-radius-sm);border:1px solid var(--ssc-line);background:var(--ssc-surface)}
.ssc-site .ssc-form__status[data-state="success"]{border-color:rgba(178,197,179,.5);color:var(--ssc-success)}
.ssc-site .ssc-form__status[data-state="error"]{border-color:rgba(241,183,180,.5);color:var(--ssc-error)}
.ssc-site .ssc-form__status ul{margin:8px 0 0;padding-left:1.2em}
.ssc-site .ssc-form__status a{color:inherit}
.ssc-site .ssc-field{margin:0 0 20px}
.ssc-site .ssc-field__label{display:block;font-size:14px;font-weight:500;color:var(--ssc-text);margin:0 0 8px}
.ssc-site .ssc-field__req{color:var(--ssc-accent);margin-left:2px}
.ssc-site .ssc-input,.ssc-site .ssc-select,.ssc-site .ssc-textarea{display:block;width:100%;min-height:50px;padding:13px 16px;border-radius:var(--ssc-radius-sm);background:var(--ssc-surface);border:1px solid var(--ssc-line);color:var(--ssc-heading);font-size:16px;line-height:1.4;-webkit-appearance:none;appearance:none;transition:var(--ssc-t)}
.ssc-site .ssc-input::placeholder,.ssc-site .ssc-textarea::placeholder{color:var(--ssc-fog);opacity:1}
.ssc-site .ssc-input:focus,.ssc-site .ssc-select:focus,.ssc-site .ssc-textarea:focus{outline:none;border-color:var(--ssc-accent-light);background:rgba(255,255,255,.07);box-shadow:0 0 0 3px rgba(225,203,178,.25)}
.ssc-site .ssc-textarea{min-height:160px;resize:vertical}
.ssc-site .ssc-select{padding-right:44px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--ssc-fog) 50%),linear-gradient(135deg,var(--ssc-fog) 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.ssc-site .ssc-select option{background:var(--ssc-bg2);color:var(--ssc-heading)}
.ssc-site .ssc-field__help{font-size:13.5px;color:var(--ssc-fog);margin:8px 0 0}
.ssc-site .ssc-field__error{font-size:13.5px;color:var(--ssc-error);margin:8px 0 0}
.ssc-site .ssc-field__error:empty{display:none}
.ssc-site .ssc-field.is-invalid .ssc-input,.ssc-site .ssc-field.is-invalid .ssc-select,.ssc-site .ssc-field.is-invalid .ssc-textarea{border-color:var(--ssc-error)}
.ssc-site .ssc-field__label--checkbox{display:flex;align-items:flex-start;gap:12px;font-weight:400;font-size:15px;cursor:pointer}
.ssc-site .ssc-checkbox,.ssc-site .ssc-field input[type="checkbox"]{width:22px;height:22px;flex:none;margin:2px 0 0;accent-color:var(--ssc-accent);cursor:pointer}
.ssc-site .ssc-form__errors{margin:8px 0 0;padding-left:1.2em}
.ssc-site .ssc-honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0}/* off-screen, never display:none, so bots still fill it */
.ssc-site .ssc-form__actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:28px 0 0}
.ssc-site .ssc-form__privacy{font-size:13.5px;color:var(--ssc-fog);margin:18px 0 0}
.ssc-site .ssc-form-suppressed .ssc-phone-cta{margin-top:8px}
@media (max-width:767px){.ssc-site .ssc-form__actions .ssc-btn{width:100%}}

/* 11. Journal: index, feature, pagination, post hero, reading column, share --- */
.ssc-site .ssc-journal__search,.ssc-site .ssc-search-form{display:flex;gap:12px;max-width:560px;margin:0 0 24px}
.ssc-site .ssc-journal__search .ssc-input,.ssc-site .ssc-search-form .ssc-input{flex:1 1 auto}
.ssc-site .ssc-journal .ssc-filters{margin-bottom:32px}
.ssc-site .ssc-journal__feature{display:grid;grid-template-columns:1.15fr 1fr;padding:0;overflow:hidden;margin:0 0 32px;align-items:stretch}
.ssc-site .ssc-journal__feature-media{display:block;min-height:320px;background:var(--ssc-bg2)}
.ssc-site .ssc-journal__feature-media img{width:100%;height:100%;object-fit:cover}
.ssc-site .ssc-journal__feature-body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:40px 44px}
.ssc-site .ssc-journal__feature-body>*{margin:0}
.ssc-site .ssc-journal__feature-title{font-size:40px;line-height:1.1}
.ssc-site .ssc-journal__feature-title a{color:inherit;text-decoration:none}
.ssc-site .ssc-journal__feature-title a:hover{color:var(--ssc-accent-light)}
.ssc-site .ssc-journal__feature .ssc-lead{font-size:17px}
.ssc-site .ssc-journal__feature .ssc-btn--text{align-self:flex-start}
.ssc-site .ssc-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:48px 0 0}
.ssc-site .ssc-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--ssc-line);color:var(--ssc-text);text-decoration:none;font-size:15px;font-weight:500;transition:var(--ssc-t)}
.ssc-site .ssc-pagination a.page-numbers:hover{border-color:var(--ssc-bone);color:var(--ssc-heading)}
.ssc-site .ssc-pagination .page-numbers.current{background:var(--ssc-bone);border-color:var(--ssc-bone);color:var(--ssc-graphite)}
.ssc-site .ssc-pagination .page-numbers.dots{border-color:transparent;color:var(--ssc-fog)}
.ssc-site .ssc-pagination .ssc-btn{margin:0 6px}
.ssc-site .ssc-post-hero{max-width:860px;margin:0 auto;text-align:center}
.ssc-site .ssc-post-hero .ssc-h1{font-size:72px;margin-bottom:20px}
.ssc-site .ssc-post-hero .ssc-lead{margin-inline:auto}
.ssc-site .ssc-post-hero__media{margin:40px auto 0;max-width:1080px;border-radius:24px;overflow:hidden}
.ssc-site .ssc-post-hero__media img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ssc-site .ssc-post-hero__media figcaption,.ssc-site .ssc-reading figcaption{font-size:13.5px;color:var(--ssc-fog);padding:10px 0 0}
.ssc-site .ssc-post-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:14px;color:var(--ssc-fog);margin:16px 0 0}
.ssc-site .ssc-reading{font-size:18px;line-height:1.7}
.ssc-site div.ssc-reading{max-width:var(--ssc-reading);margin-inline:auto}
.ssc-site .ssc-reading p{margin:0 0 1.35em}
.ssc-site .ssc-reading h2{font-size:40px;line-height:1.12;margin:1.6em 0 .55em}
.ssc-site .ssc-reading h3{font-size:28px;margin:1.5em 0 .5em}
.ssc-site .ssc-reading h4{font-size:22px;margin:1.4em 0 .5em}
.ssc-site .ssc-reading>:first-child,.ssc-site .ssc-reading .elementor-widget-container>:first-child{margin-top:0}
.ssc-site .ssc-reading ul,.ssc-site .ssc-reading ol{margin:0 0 1.35em;padding-left:1.4em}
.ssc-site .ssc-reading li{margin:0 0 .5em}
.ssc-site .ssc-reading li::marker{color:var(--ssc-accent)}
.ssc-site .ssc-reading blockquote{margin:2em 0;padding:8px 0 8px 28px;border-left:2px solid var(--ssc-accent);font-family:var(--ssc-font-display);font-size:26px;line-height:1.35;color:var(--ssc-heading)}
.ssc-site .ssc-reading blockquote p{margin-bottom:.6em}
.ssc-site .ssc-reading blockquote cite{display:block;font-family:var(--ssc-font-body);font-style:normal;font-size:14px;color:var(--ssc-fog)}
.ssc-site .ssc-reading figure,.ssc-site .ssc-reading .wp-block-image{margin:2em 0}
.ssc-site .ssc-reading img{border-radius:20px}
.ssc-site .ssc-reading table{width:100%;border-collapse:collapse;margin:2em 0;font-size:15.5px}
.ssc-site .ssc-reading th,.ssc-site .ssc-reading td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--ssc-line);vertical-align:top}
.ssc-site .ssc-reading th{color:var(--ssc-heading);font-weight:600;font-size:14px}
.ssc-site .ssc-reading .wp-block-table{overflow-x:auto}
.ssc-site .ssc-reading code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9em;padding:.1em .4em;border-radius:6px;background:var(--ssc-surface)}
.ssc-site .ssc-reading pre{padding:18px 20px;border-radius:var(--ssc-radius-sm);background:var(--ssc-ink);overflow-x:auto;margin:0 0 1.5em}
.ssc-site .ssc-reading hr{margin:2.5em 0}
.ssc-site .ssc-reading strong{color:var(--ssc-heading);font-weight:600}
.ssc-site .ssc-legal-reviewed{font-size:14px;color:var(--ssc-fog);padding:12px 16px;border:1px dashed var(--ssc-line);border-radius:var(--ssc-radius-sm)}
.ssc-site .ssc-share{list-style:none;margin:32px 0 0;padding:24px 0 0;border-top:1px solid var(--ssc-line);display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ssc-site .ssc-share::before{content:attr(aria-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ssc-fog);margin-right:8px}
.ssc-site .ssc-share a,.ssc-site .ssc-social a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid var(--ssc-line);font-size:14px;font-weight:500;text-decoration:none;color:var(--ssc-text);transition:var(--ssc-t)}
.ssc-site .ssc-share a:hover,.ssc-site .ssc-social a:hover{border-color:var(--ssc-bone);color:var(--ssc-heading)}
@media (max-width:1024px){
.ssc-site .ssc-journal__feature{grid-template-columns:1fr}
.ssc-site .ssc-journal__feature-body{padding:28px 30px}
.ssc-site .ssc-journal__feature-title{font-size:32px}
.ssc-site .ssc-post-hero .ssc-h1{font-size:54px}
}
@media (max-width:767px){
.ssc-site .ssc-journal__feature-media{min-height:200px}
.ssc-site .ssc-post-hero .ssc-h1{font-size:40px}
.ssc-site .ssc-post-hero__media{border-radius:16px;margin-top:28px}
.ssc-site .ssc-reading{font-size:17px}
.ssc-site .ssc-reading h2{font-size:32px}
.ssc-site .ssc-reading h3{font-size:25px}
.ssc-site .ssc-reading blockquote{font-size:22px;padding-left:20px}
.ssc-site .ssc-reading img{border-radius:14px}
}

/* 12. Advertorial ------------------------------------------------------------ */
.ssc-site .ssc-adv-label{position:sticky;top:var(--ssc-header-h);z-index:90;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;width:100%;padding:10px var(--ssc-gutter);background:var(--ssc-accent);color:var(--ssc-graphite);font-size:14px;line-height:1.3;border-bottom:1px solid rgba(0,0,0,.2)}/* z-index 90: above content, below the header (100) */
.ssc-site .ssc-adv-label__tag{font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:12px;padding:4px 10px;border-radius:999px;background:var(--ssc-graphite);color:var(--ssc-accent-light)}
.ssc-site .ssc-adv-label__text{font-weight:500}
.ssc-site .ssc-adv-label a{color:inherit}
.admin-bar.ssc-site .ssc-adv-label{top:calc(var(--ssc-header-h) + 32px)}
.ssc-site .ssc-adv-byline{font-size:14px;color:var(--ssc-fog);margin:0 0 8px}
.ssc-site .ssc-adv-byline time{color:var(--ssc-text)}
.ssc-site .ssc-adv__media img{border-radius:24px;width:100%}
.ssc-site .ssc-adv__title .elementor-heading-title{font-size:64px}
.ssc-site .ssc-adv-cta{padding:32px;text-align:center}
.ssc-site .ssc-adv-cta .ssc-btn{margin-top:12px}
@media (max-width:782px){.admin-bar.ssc-site .ssc-adv-label{top:calc(var(--ssc-header-h) + 46px)}}
@media (max-width:600px){.admin-bar.ssc-site .ssc-adv-label{top:var(--ssc-header-h)}}
@media (max-width:767px){
.ssc-site .ssc-adv-label{font-size:13px;padding:8px var(--ssc-gutter)}
.ssc-site .ssc-adv__title .elementor-heading-title{font-size:40px}
}

/* 13. Location, breadcrumbs, steps, principles, booking, testimonials, team, hours */
.ssc-site .ssc-location-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);padding:0;overflow:hidden}
.ssc-site .ssc-location-card:not(:has(.ssc-location-card__map)){grid-template-columns:minmax(0,1fr)}
.ssc-site .ssc-location-card__body{padding:44px 48px}
.ssc-site .ssc-location-card__body .ssc-h3{font-size:36px;margin-bottom:18px}
.ssc-site .ssc-location-card__address{font-style:normal;font-size:18px;line-height:1.55;color:var(--ssc-heading);margin:0 0 22px}
.ssc-site .ssc-location-card__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.ssc-site .ssc-location-card__list li{display:flex;align-items:flex-start;gap:12px;min-height:28px}
.ssc-site .ssc-location-card__list .ssc-icon{flex:none;color:var(--ssc-accent);margin-top:3px}
.ssc-site .ssc-location-card__list a{display:inline-block;padding:2px 0}
.ssc-site .ssc-location-card__map{position:relative;min-height:360px;background:var(--ssc-bg2)}
.ssc-site .ssc-location-card__map iframe,.ssc-site .ssc-location-card__map img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;filter:saturate(.6) contrast(1.05)}
.ssc-site .ssc-breadcrumbs{font-size:14px;color:var(--ssc-fog)}
.ssc-site .ssc-breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;align-items:center}
.ssc-site .ssc-breadcrumbs li{display:inline-flex;align-items:center;min-height:32px}
.ssc-site .ssc-breadcrumbs li+li::before{content:"/";color:rgba(255,255,255,.25);margin:0 10px}
.ssc-site .ssc-breadcrumbs a{color:var(--ssc-fog);text-decoration:none;padding:4px 0}
.ssc-site .ssc-breadcrumbs a:hover{color:var(--ssc-accent-light);text-decoration:underline}
.ssc-site .ssc-breadcrumbs [aria-current="page"]{color:var(--ssc-text)}
.ssc-site .ssc-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ssc-site .ssc-step,.ssc-site .ssc-principle,.ssc-site .ssc-team-card{display:flex;flex-direction:column;gap:10px}
.ssc-site .ssc-step__num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;margin-bottom:8px;border:1px solid var(--ssc-accent);color:var(--ssc-accent);font-family:var(--ssc-font-display);font-size:22px}
.ssc-site .ssc-step__title,.ssc-site .ssc-team-card h3{font-size:28px;margin:0}
.ssc-site .ssc-step p,.ssc-site .ssc-principle p,.ssc-site .ssc-team-card p{margin:0}
.ssc-site .ssc-principle__icon{width:28px;height:28px;color:var(--ssc-accent);margin-bottom:6px}
.ssc-site .ssc-principle .ssc-h3{font-size:26px;margin:0}
.ssc-site .ssc-principle p,.ssc-site .ssc-team-card p,.ssc-site .ssc-policy-note p{font-size:15.5px}
.ssc-site .ssc-booking-panel{max-width:960px;margin-inline:auto}
.ssc-site .ssc-booking-embed{position:relative;border-radius:var(--ssc-radius-lg);overflow:hidden;border:1px solid var(--ssc-line);background:var(--ssc-bg2);min-height:720px}
.ssc-site .ssc-booking-embed iframe{display:block;width:100%;min-height:720px;height:100%;border:0}
.ssc-site .ssc-booking-link,.ssc-site .ssc-booking-fallback{text-align:center;padding:48px 40px}
.ssc-site .ssc-booking-link .ssc-lead,.ssc-site .ssc-booking-fallback .ssc-lead{margin:0 auto 24px}
.ssc-site .ssc-booking-fallback .ssc-phone-cta{margin:0 auto}
.ssc-site .ssc-booking-fallback p{margin-top:20px}
.ssc-site .ssc-booking-embed+.ssc-booking-fallback{margin-top:24px;padding:28px 32px}
.ssc-site .ssc-booking-embed+.ssc-booking-fallback p{margin:0 0 16px}
.ssc-site .ssc-policy-note{margin-top:24px}
.ssc-site .ssc-policy-note .ssc-h3{font-size:26px;margin-bottom:8px}
.ssc-site .ssc-booking-panel .ssc-trust-note{margin-top:20px}
.ssc-site .ssc-testimonial{display:flex;flex-direction:column;gap:18px;margin:0}
.ssc-site .ssc-testimonial blockquote{margin:0;font-family:var(--ssc-font-display);font-size:24px;line-height:1.35;color:var(--ssc-heading);flex:1 1 auto}
.ssc-site .ssc-testimonial blockquote::before{content:"\201C";display:block;font-size:56px;line-height:.6;color:var(--ssc-accent);margin-bottom:14px}
.ssc-site .ssc-testimonial figcaption{font-size:14.5px;color:var(--ssc-text);display:flex;flex-direction:column;gap:2px}
.ssc-site .ssc-testimonial__src{font-size:13px;color:var(--ssc-fog)}
.ssc-site .ssc-team-card{gap:8px;padding:24px}
.ssc-site .ssc-team-card__photo{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--ssc-radius);margin-bottom:12px}
.ssc-site .ssc-team-card .ssc-eyebrow{margin:0}
.ssc-site .ssc-team-profile--has-photo{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:48px;align-items:start}
.ssc-site .ssc-team-profile__media img{border-radius:24px;width:100%}
.ssc-site .ssc-team-profile__bio{margin:28px 0 0}
.ssc-site .ssc-team-profile__actions,.ssc-site .ssc-section__actions,.ssc-site .ssc-about-block__actions,.ssc-site .ssc-service-booking__actions,.ssc-site .ssc-search-results__links{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.ssc-site .ssc-hours{margin:0;font-size:15px}
.ssc-site .ssc-hours__row{display:flex;justify-content:space-between;gap:16px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.ssc-site .ssc-hours dt{color:var(--ssc-fog);font-weight:500}
.ssc-site .ssc-hours dd{margin:0;color:var(--ssc-heading);text-align:right}
.ssc-site .ssc-hours__note{font-size:13.5px;color:var(--ssc-fog);margin:8px 0 0}
.ssc-site .ssc-location-card__hours{margin-top:22px;padding-top:18px;border-top:1px solid var(--ssc-line)}
@media (max-width:1024px){
.ssc-site .ssc-steps{grid-template-columns:minmax(0,1fr);gap:16px}
.ssc-site .ssc-location-card__body{padding:32px}
.ssc-site .ssc-team-profile--has-photo{grid-template-columns:minmax(0,1fr);gap:28px}
.ssc-site .ssc-team-profile__media{max-width:420px}
}
@media (max-width:767px){
.ssc-site .ssc-location-card{grid-template-columns:minmax(0,1fr)}
.ssc-site .ssc-location-card__body{padding:24px 22px}
.ssc-site .ssc-location-card__body .ssc-h3{font-size:30px}
.ssc-site .ssc-location-card__map{min-height:240px}
.ssc-site .ssc-booking-embed,.ssc-site .ssc-booking-embed iframe{min-height:640px}
.ssc-site .ssc-booking-embed{border-radius:var(--ssc-radius)}
.ssc-site .ssc-booking-link,.ssc-site .ssc-booking-fallback{padding:32px 22px}
.ssc-site .ssc-step__title{font-size:25px}
.ssc-site .ssc-testimonial blockquote{font-size:21px}
}

/* 14. Search results, 404 ---------------------------------------------------- */
.ssc-site .ssc-search-results{max-width:860px}
.ssc-site .ssc-search-results__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.ssc-site .ssc-search-results__list .ssc-eyebrow{margin-bottom:6px}
.ssc-site .ssc-search-results__list .ssc-h3{font-size:26px;margin:0 0 6px}
.ssc-site .ssc-search-results__list .ssc-h3 a{color:inherit;text-decoration:none}
.ssc-site .ssc-search-results__list .ssc-h3 a:hover{color:var(--ssc-accent-light)}
.ssc-site .ssc-search-results__list p{font-size:15.5px;margin:0}
.ssc-site .ssc-search-results__empty{text-align:center;padding:40px 32px;margin-top:8px}
.ssc-site .ssc-search-results__empty .ssc-search-results__links{justify-content:center}
.ssc-site .ssc-404{max-width:760px}
.ssc-site .ssc-404__links{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}
@media (max-width:767px){.ssc-site .ssc-404__links .ssc-btn,.ssc-site .ssc-search-results__links .ssc-btn{width:100%}}

/* 15. Footer, social --------------------------------------------------------- */
.ssc-site .ssc-footer{background:var(--ssc-ink);color:var(--ssc-text);border-top:1px solid var(--ssc-line);font-size:15px}
.ssc-site .ssc-footer__logo{display:inline-block;text-decoration:none;margin-bottom:8px}
.ssc-site .ssc-footer__logo img{max-height:48px;width:auto}
.ssc-site .ssc-footer__name{font-family:var(--ssc-font-display);font-size:26px;color:var(--ssc-heading);line-height:1.1}
.ssc-site .ssc-footer__desc{color:var(--ssc-fog);max-width:44ch;margin:0}
.ssc-site .ssc-footer__contact address{font-style:normal;line-height:1.6;margin:0 0 10px}
.ssc-site .ssc-footer__contact a{display:block;width:fit-content;padding:4px 0;color:var(--ssc-bone);text-decoration:none}
.ssc-site .ssc-footer__contact a:hover{color:var(--ssc-accent-light);text-decoration:underline}
.ssc-site .ssc-footer__heading .elementor-heading-title{font-family:var(--ssc-font-body);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ssc-accent);line-height:1.4}
.ssc-site .ssc-footer__legal{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:13.5px;color:var(--ssc-fog)}
.ssc-site .ssc-footer__legal p{margin:0}
.ssc-site .ssc-footer__legal a{color:var(--ssc-fog);padding:4px 0;display:inline-block}
.ssc-site .ssc-footer__legal a:hover{color:var(--ssc-accent-light)}
.ssc-site .ssc-footer__bottom{font-size:13.5px}
.ssc-site .ssc-social{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ssc-site .ssc-social a{padding:8px 14px;font-size:13.5px}
.ssc-site .ssc-social .ssc-icon{width:18px;height:18px}
@media (max-width:767px){.ssc-site .ssc-footer__legal{flex-direction:column;align-items:flex-start}}

/* 16. Coming-soon page (standalone document rendered by SSC_Gate) ------------- */
main.ssc-coming-soon{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:var(--ssc-gutter);margin:0;background:var(--ssc-bg);color:var(--ssc-text);font-family:var(--ssc-font-body);font-size:17px;line-height:1.65;position:relative;overflow:hidden;box-sizing:border-box}
main.ssc-coming-soon::before{content:"";position:absolute;inset:-20% -10% auto;height:80%;pointer-events:none;background:radial-gradient(50% 55% at 50% 40%,rgba(198,169,139,.22),rgba(198,169,139,0) 70%)}
.ssc-coming-soon__card{position:relative;width:min(100%,680px);text-align:center;padding:56px 48px;background:var(--ssc-surface);border:1px solid var(--ssc-line);border-radius:var(--ssc-radius-lg);box-shadow:var(--ssc-shadow)}
.ssc-coming-soon h1,.ssc-coming-soon .ssc-h1{font-family:var(--ssc-font-display);font-weight:500;font-size:clamp(40px,7vw,72px);line-height:1.02;letter-spacing:-0.01em;color:var(--ssc-heading);margin:0 0 16px}
.ssc-coming-soon .ssc-lead{margin:0 auto 28px}
.ssc-coming-soon address{font-style:normal;color:var(--ssc-fog);margin:0 0 24px;line-height:1.6}
.ssc-coming-soon a{color:var(--ssc-accent-light)}
.ssc-coming-soon :focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:2px}
.ssc-coming-soon .ssc-icon{display:inline-block;fill:none;stroke:currentColor}
.ssc-coming-soon .ssc-muted{font-size:14px;margin-top:24px}
@media (max-width:767px){.ssc-coming-soon__card{padding:36px 24px;border-radius:var(--ssc-radius)}}

/* 17. Mobile sticky CTA, icons, misc ----------------------------------------- */
.ssc-site .ssc-sticky-cta{display:none}
.ssc-site .ssc-icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.2em;flex:none;fill:none;stroke:currentColor}
.ssc-site .ssc-space-gallery__item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--ssc-radius)}
.ssc-site .ssc-category-card{display:flex;flex-direction:column;gap:8px;padding:26px}
.ssc-site .ssc-category-card__title{font-size:28px;line-height:1.15;margin:0}
.ssc-site .ssc-category-card__title a{color:inherit;text-decoration:none}
.ssc-site .ssc-category-card__title a::after{content:"";position:absolute;inset:0}
.ssc-site .ssc-category-card__title a:hover{color:var(--ssc-accent-light)}
.ssc-site .ssc-category-card__count{margin:0}
.ssc-site .ssc-category-card__text{font-size:15.5px;margin:0}
.ssc-site .ssc-about-block{max-width:760px}
.ssc-site .ssc-about-block__text p{font-size:18px;line-height:1.7}
.ssc-site .ssc-service-hero--has-media{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center}
.ssc-site .ssc-service-hero__figure img{width:100%;border-radius:24px;aspect-ratio:4/3;object-fit:cover}
.ssc-site .ssc-service-hero__thumbs{display:flex;gap:10px;margin-top:10px}
.ssc-site .ssc-service-hero__thumb{flex:1 1 0;min-width:0}
.ssc-site .ssc-service-hero__thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--ssc-radius-sm)}
.ssc-site .ssc-service-hero__body .ssc-h1{font-size:72px}
.ssc-site .ssc-service-hero__meta{margin:4px 0 0;font-size:15px}
.ssc-site .ssc-service-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.ssc-site .ssc-service-booking__alt,.ssc-site .ssc-testimonial__note{font-size:14px;color:var(--ssc-fog);margin:16px 0 0}
.ssc-site .ssc-testimonial__service{font-size:13px;color:var(--ssc-fog)}
.ssc-site .ssc-phone-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;color:var(--ssc-accent-light);text-decoration:none;font-weight:600}
.ssc-site .ssc-phone-link:hover{color:var(--ssc-heading);text-decoration:underline}
.ssc-site .ssc-phone-link__icon{color:var(--ssc-accent);width:18px;height:18px}
.ssc-site .ssc-archive-header{max-width:820px}
@media (max-width:1024px){.ssc-site .ssc-service-hero--has-media{gap:32px}.ssc-site .ssc-service-hero__body .ssc-h1{font-size:54px}}
@media (max-width:767px){
.ssc-site .ssc-sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:95;isolation:isolate;padding:10px var(--ssc-gutter) calc(10px + env(safe-area-inset-bottom,0px));background:rgba(11,13,12,.9);border-top:1px solid var(--ssc-line);transition:transform var(--ssc-t),visibility 0s}
.ssc-site .ssc-sticky-cta::before{content:"";position:absolute;inset:0;z-index:-1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.ssc-site .ssc-sticky-cta .ssc-btn,.ssc-site .ssc-sticky-cta a{width:100%}
.ssc-site .ssc-sticky-cta .ssc-phone-cta{display:grid;min-height:56px}
.ssc-site .ssc-sticky-cta.is-hidden{transform:translateY(110%);visibility:hidden;transition-delay:0s,var(--ssc-dur)}
body.ssc-site.ssc-has-sticky-cta{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
body.ssc-has-sticky-cta .cky-btn-revisit-wrapper{bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}
.ssc-site .ssc-service-hero--has-media{grid-template-columns:minmax(0,1fr);gap:24px}
.ssc-site .ssc-service-hero__body .ssc-h1{font-size:40px}
.ssc-site .ssc-service-hero__actions .ssc-btn,.ssc-site .ssc-section__actions .ssc-btn{width:100%}
}

/* 18. Elementor overrides ------------------------------------------------------
   Elementor paints widget "default global" colours (headings → Primary, nav → Text/Accent)
   at widget-level specificity. Where a plain selector cannot win we re-map the global CSS
   variables inside a narrow scope; !important appears only where noted. */
/* 18.1 Header — the .e-con is the Elementor Pro sticky element (JS makes it fixed + inserts a spacer clone). */
.ssc-site .e-con.ssc-header{position:relative;isolation:isolate;z-index:100;width:100%;min-height:var(--ssc-header-h);justify-content:center;background:rgba(17,19,17,.72);border-bottom:1px solid var(--ssc-line);transition:var(--ssc-t)}
.ssc-site .e-con.ssc-header::before{content:"";position:absolute;inset:0;z-index:-1;opacity:1;width:auto;height:auto;border-radius:0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none}/* blur on the pseudo, never on the wrapper */
.ssc-site .e-con.ssc-header.elementor-sticky--effects,.ssc-site .e-con.ssc-header.is-scrolled{background:rgba(11,13,12,.86);border-bottom-color:rgba(255,255,255,.16)}
.ssc-site .e-con.ssc-header.elementor-sticky--active{left:0!important;width:100%!important}/* !important: Elementor's sticky plugin writes a px width inline at stick time; stay full-bleed through resizes */
.ssc-site .e-con.ssc-header--compact{min-height:var(--ssc-header-h)}/* same height as the main header so the advertorial label bar sticks flush beneath it */
.ssc-site .e-con.ssc-header__inner{min-width:0}
.ssc-site .ssc-header__logo,.ssc-site .ssc-header__brand,.ssc-site .ssc-header__phone-widget,.ssc-site .ssc-header__cta{flex:0 0 auto;width:auto}
.ssc-site .ssc-header__logo img{max-height:44px;width:auto;display:block;border-radius:0}
.ssc-site .ssc-header__brand .elementor-heading-title{font-family:var(--ssc-font-display);font-size:22px;font-weight:500;line-height:1.1;letter-spacing:0;color:var(--ssc-heading);margin:0;white-space:nowrap}
.ssc-site .ssc-header__brand .elementor-heading-title a{color:inherit;text-decoration:none}
.ssc-site .ssc-header__phone{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 4px;color:var(--ssc-bone);text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap}
.ssc-site .ssc-header__phone:hover{color:var(--ssc-accent-light)}
.ssc-site .ssc-header__phone .ssc-icon{color:var(--ssc-accent);width:18px;height:18px}
/* 18.2 Elementor Pro nav menu */
.ssc-site .ssc-nav{--e-global-color-text:var(--ssc-bone);--e-global-color-accent:var(--ssc-heading);min-width:0}/* Pro's item colour = global Text, hover/active = global Accent, output per widget → re-map inside the widget */
.ssc-site .ssc-nav .elementor-nav-menu--main .elementor-item{font-family:var(--ssc-font-body);font-size:13px;font-weight:500;letter-spacing:.04em;line-height:1.4;padding:14px 16px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:var(--ssc-bone);transition:color var(--ssc-t)}
.ssc-site .ssc-nav .elementor-nav-menu--main .elementor-item:is(:hover,:focus,.highlighted,.elementor-item-active){color:var(--ssc-heading);background:transparent}
.ssc-site .ssc-nav .elementor-nav-menu--main .elementor-item:focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:-4px;border-radius:8px}
.ssc-site .ssc-nav .e--pointer-underline .elementor-item::before,.ssc-site .ssc-nav .e--pointer-underline .elementor-item::after{background-color:var(--ssc-accent)!important;height:2px;bottom:8px;left:16px;width:calc(100% - 32px)}/* !important: pointer colour is output per widget as var(--e-global-color-accent), re-mapped above for text; the pointer must stay champagne */
.ssc-site .ssc-nav .elementor-nav-menu--dropdown{background:var(--ssc-bg2);border:1px solid var(--ssc-line);border-radius:var(--ssc-radius-sm);box-shadow:var(--ssc-shadow);overflow:hidden;font-size:14px}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown a{color:var(--ssc-text);padding:13px 20px;min-height:44px;display:flex;align-items:center;font-size:14px;letter-spacing:.02em;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.06)}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown li:last-child>a{border-bottom:0}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown a:is(:hover,:focus,.highlighted,.elementor-item-active){background:var(--ssc-surface);color:var(--ssc-heading)}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown a:focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:-3px}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown .elementor-sub-item{padding-left:36px}
.ssc-site .ssc-nav div.elementor-menu-toggle{width:44px;height:44px;min-width:44px;margin-left:auto;border-radius:12px;border:1px solid var(--ssc-line);background:var(--ssc-surface);color:var(--ssc-bone);cursor:pointer;transition:var(--ssc-t)}/* burger: 44px target, bone icon */
.ssc-site .ssc-nav div.elementor-menu-toggle:hover,.ssc-site .ssc-nav div.elementor-menu-toggle.elementor-active{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:var(--ssc-heading)}
.ssc-site .ssc-nav div.elementor-menu-toggle:focus-visible{outline:2px solid var(--ssc-accent-light);outline-offset:2px}
.ssc-site .ssc-nav .elementor-menu-toggle i,.ssc-site .ssc-nav .elementor-menu-toggle svg{color:inherit;fill:currentColor;font-size:20px;width:20px;height:20px}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{background:var(--ssc-ink);border:0;border-top:1px solid var(--ssc-line);border-radius:0;box-shadow:var(--ssc-shadow);max-height:calc(100dvh - var(--ssc-header-h));overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 0 16px}/* mobile/tablet sheet */
.ssc-site .ssc-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item{font-size:16px;padding:15px var(--ssc-gutter);min-height:52px;border-bottom:1px solid rgba(255,255,255,.06)}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item{padding-left:calc(var(--ssc-gutter) + 18px);font-size:15px}
.ssc-site .ssc-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item-active{color:var(--ssc-accent-light)}
/* 18.3 Hero, page intro, split */
.ssc-site .e-con.ssc-hero{position:relative;overflow:hidden}
.ssc-site .e-con.ssc-hero:first-child,.ssc-site .e-con.ssc-page-intro:first-child{margin-top:calc(-1 * var(--ssc-header-h))}/* bleed behind the translucent header; padding below clears it */
.ssc-site .e-con.ssc-hero--home{min-height:clamp(560px,88vh,920px);justify-content:center;padding-top:calc(var(--ssc-header-h) + 96px);padding-bottom:96px}
.ssc-site .e-con.ssc-hero--page{min-height:46vh;justify-content:center;padding-top:var(--ssc-header-h)}
.ssc-site .e-con.ssc-hero__inner{max-width:860px}
.ssc-site .ssc-hero__eyebrow p,.ssc-site .e-con.ssc-page-intro .ssc-eyebrow-widget p{margin-bottom:0}
.ssc-site .ssc-hero__title .elementor-heading-title{font-size:104px;line-height:.98;letter-spacing:-0.01em;color:var(--ssc-heading);max-width:12ch}
.ssc-site .ssc-hero__text p{font-size:20px;line-height:1.55;max-width:56ch;color:var(--ssc-text)}
.ssc-site .e-con.ssc-hero__actions,.ssc-site .e-con.ssc-start__actions{gap:12px 14px}
.ssc-site .e-con.ssc-page-intro:first-child{padding-top:140px}
.ssc-site .e-con.ssc-page-intro .elementor-widget{max-width:820px}
.ssc-site .e-con.ssc-page-intro+.e-con.ssc-section,.ssc-site .e-con.ssc-page-intro+.ssc-section--host>section.ssc-section{padding-top:0}/* intro already carries 96px below the lead */
.ssc-site .e-con.ssc-split{align-items:center}
.ssc-site .ssc-split__media img{border-radius:24px;width:100%;object-fit:cover}
.ssc-site .ssc-split__copy>:first-child{margin-top:0}
/* 18.4 Elementor buttons → .ssc-btn look (kit buttons are output at .elementor-kit-N specificity) */
.ssc-site .elementor-widget-button .elementor-button,.ssc-site .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 26px;border-radius:999px;font-family:var(--ssc-font-body);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;background-color:var(--ssc-bone);color:var(--ssc-graphite);border:1px solid var(--ssc-bone);fill:currentColor;transition:var(--ssc-t)}
.ssc-site .elementor-widget-button .elementor-button:hover,.ssc-site .elementor-widget-button .elementor-button:focus{background-color:#fff;border-color:#fff;color:var(--ssc-graphite);transform:translateY(-2px)}
.ssc-site .elementor-widget-button .elementor-button:focus-visible{outline:2px solid var(--ssc-graphite);outline-offset:2px;box-shadow:0 0 0 5px var(--ssc-accent-light)}
.ssc-site .elementor-widget-button .elementor-button.elementor-size-sm,.ssc-site .ssc-header__cta .elementor-button{min-height:44px;padding:11px 20px;font-size:14px}
.ssc-site .elementor-widget-button .elementor-button.elementor-size-lg,.ssc-site .elementor-widget-button .elementor-button.elementor-size-xl{min-height:56px;padding:16px 34px;font-size:16px}
.ssc-site .elementor-button .elementor-button-content-wrapper{gap:10px;align-items:center}
.ssc-site .elementor-button .elementor-button-icon svg{width:18px;height:18px}
.ssc-site .ssc-button--outline .elementor-button,.ssc-site .elementor-button.ssc-btn--outline{background-color:transparent;color:var(--ssc-bone);border-color:rgba(255,255,255,.32)}/* outline: class on the widget or on the anchor */
.ssc-site :is(.ssc-button--outline .elementor-button,.elementor-button.ssc-btn--outline):is(:hover,:focus){background-color:var(--ssc-surface);border-color:var(--ssc-bone);color:var(--ssc-heading)}
.ssc-site .ssc-button--outline .elementor-button:focus-visible,.ssc-site .elementor-button.ssc-btn--outline:focus-visible{outline-color:var(--ssc-accent-light);box-shadow:none}
.ssc-site .ssc-button--text .elementor-button,.ssc-site .elementor-button.ssc-btn--text{background:none;border-color:transparent;color:var(--ssc-accent-light);padding-inline:0;text-decoration:underline;text-underline-offset:.22em}
.ssc-site .ssc-button--text .elementor-button:hover,.ssc-site .elementor-button.ssc-btn--text:hover{background:none;color:var(--ssc-heading);transform:none}
/* 18.5 Elementor Pro forms, text editor, headings, widget resets, images, footer menus */
.ssc-site .elementor-form .elementor-field-group .elementor-field-textual{background-color:var(--ssc-surface);border:1px solid var(--ssc-line);border-radius:var(--ssc-radius-sm);color:var(--ssc-heading);font-size:16px;min-height:50px}/* Pro forms: dark fields even where the kit is bypassed */
.ssc-site .elementor-form .elementor-field-group .elementor-field-textual:focus{border-color:var(--ssc-accent-light);box-shadow:0 0 0 3px rgba(225,203,178,.25);outline:none}
.ssc-site .elementor-form .elementor-field-label{color:var(--ssc-text)}
.ssc-site .elementor-form .elementor-message{color:var(--ssc-text)}
.ssc-site .elementor-form .elementor-message-danger,.ssc-site .elementor-form .elementor-help-inline{color:var(--ssc-error)}
.ssc-site .elementor-widget-text-editor{color:var(--ssc-text)}
.ssc-site .elementor-widget-text-editor a{color:var(--ssc-accent-light)}
.ssc-site .elementor-widget-text-editor a:hover{color:var(--ssc-heading)}
.ssc-site :is(.elementor-widget-heading,.elementor-widget-theme-post-title,.elementor-widget-theme-archive-title,.elementor-widget-theme-site-title,.elementor-widget-theme-page-title,.elementor-widget-woocommerce-product-title){--e-global-color-primary:var(--ssc-heading)}/* title widgets default to the kit "Primary" global (our champagne accent); re-map only inside them so explicit widget colours (footer headings) survive */
.ssc-site :is(.elementor-widget-heading,.elementor-widget-theme-post-title,.elementor-widget-theme-archive-title,.elementor-widget-woocommerce-product-title) .elementor-heading-title{color:var(--ssc-heading);font-family:var(--ssc-font-display);font-weight:500;letter-spacing:-0.01em;overflow-wrap:anywhere}
.ssc-site .elementor-widget-heading h1.elementor-heading-title,.ssc-site .elementor-widget-theme-post-title h1.elementor-heading-title{line-height:1.02}
.ssc-site .elementor-widget-heading h2.elementor-heading-title{line-height:1.06}
.ssc-site .elementor-widget-heading h3.elementor-heading-title{line-height:1.2}
.ssc-site .elementor-widget-heading .elementor-heading-title a{color:inherit;text-decoration:none}
.ssc-site .elementor-widget-container>:last-child,.ssc-site .e-con>.elementor-widget>:last-child{margin-bottom:0}
.ssc-site .e-con>.elementor-widget,.ssc-site .e-con-inner>.elementor-widget,.ssc-site .ssc-footer__col{min-width:0}
.ssc-site .elementor-widget-image img,.ssc-site .elementor-widget-theme-post-featured-image img{border-radius:24px}
.ssc-site .elementor-widget-image figcaption{color:var(--ssc-fog);font-size:13.5px;margin-top:10px}
.ssc-site .elementor-widget-divider .elementor-divider-separator{border-color:var(--ssc-line)}
.ssc-site .e-con.ssc-section--alt{background-color:var(--ssc-bg2)}
.ssc-site .elementor-widget-shortcode .elementor-shortcode:empty{display:none}
.ssc-site .ssc-footer__menu,.ssc-site .ssc-footer__legal-menu{--e-global-color-text:var(--ssc-fog);--e-global-color-accent:var(--ssc-accent-light)}
.ssc-site .ssc-footer__menu .elementor-item,.ssc-site .ssc-footer__legal-menu .elementor-item{display:inline-flex;align-items:center;min-height:40px;padding:6px 0;font-size:15px;color:var(--ssc-fog);text-decoration:none;transition:color var(--ssc-t)}
.ssc-site .ssc-footer__legal-menu .elementor-item{font-size:13.5px;padding:8px 16px 8px 0}
.ssc-site :is(.ssc-footer__menu,.ssc-footer__legal-menu) .elementor-item:is(:hover,:focus,.elementor-item-active){color:var(--ssc-accent-light);background:transparent;text-decoration:underline;text-underline-offset:.2em}
.ssc-site .ssc-footer__legal-menu .elementor-nav-menu{flex-wrap:wrap}
@media (max-width:1024px){
.ssc-site .ssc-hero__title .elementor-heading-title{font-size:76px}
.ssc-site .e-con.ssc-page-intro:first-child{padding-top:128px}
}
@media (max-width:767px){
.ssc-site{--ssc-header-h:64px}
.ssc-site .ssc-header__logo img{max-height:36px}
.ssc-site .ssc-header__brand .elementor-heading-title{font-size:19px}
.ssc-site .ssc-header__cta .elementor-button{min-height:40px;padding:9px 14px;font-size:13px}
body.ssc-has-sticky-cta .ssc-header__cta{display:none}/* when the mobile sticky CTA exists it carries the call to action */
.ssc-site .ssc-header__brand .elementor-heading-title{white-space:normal;max-width:40vw;line-height:1.05}
.ssc-site .e-con.ssc-hero--home{min-height:0;padding-top:140px;padding-bottom:72px}
.ssc-site .e-con.ssc-hero--page{min-height:0}
.ssc-site .ssc-hero__title .elementor-heading-title{font-size:52px}
.ssc-site .ssc-hero__text p{font-size:18px}
.ssc-site .e-con.ssc-hero__actions,.ssc-site .e-con.ssc-start__actions,.ssc-site .e-con.ssc-footer__bottom{flex-direction:column;align-items:stretch}
.ssc-site .e-con.ssc-hero__actions .elementor-widget,.ssc-site .e-con.ssc-hero__actions .elementor-button,.ssc-site .e-con.ssc-start__actions .elementor-widget,.ssc-site .e-con.ssc-start__actions .ssc-btn{width:100%}
.ssc-site .e-con.ssc-page-intro:first-child{padding-top:120px}
.ssc-site .ssc-split__media img{border-radius:18px}
.ssc-site .elementor-widget-button .elementor-button{white-space:normal}
.ssc-site .ssc-footer__legal-menu .elementor-nav-menu{flex-direction:column;align-items:flex-start}
.ssc-site .ssc-footer__menu .elementor-item,.ssc-site .ssc-footer__legal-menu .elementor-item{min-height:44px;padding:8px 0}
}
@media (max-width:420px){.ssc-site .ssc-header__phone span:not(.ssc-sr-only){display:none}.ssc-site .ssc-header__brand .elementor-heading-title{font-size:17px}}

/* 19. CookieYes 3.x — dark glass, equal-weight Accept / Reject / Manage.
   CookieYes inlines its colours, so !important is required throughout this block; layout is left to CookieYes. */
.cky-consent-container{font-family:var(--ssc-font-body)!important;font-size:15px!important;z-index:99999!important}
.cky-consent-container .cky-consent-bar{background:rgba(17,19,17,.92)!important;border:1px solid var(--ssc-line)!important;border-radius:var(--ssc-radius)!important;box-shadow:var(--ssc-shadow)!important;color:var(--ssc-text)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.cky-consent-container .cky-title,.cky-preference-title{font-family:var(--ssc-font-display)!important;font-size:24px!important;font-weight:500!important;color:var(--ssc-heading)!important;letter-spacing:-0.01em}
.cky-consent-container .cky-notice-des,.cky-consent-container .cky-notice-des *{color:var(--ssc-text)!important;font-size:14.5px!important;line-height:1.55!important}
.cky-consent-container a,.cky-preference-center a{color:var(--ssc-accent-light)!important;text-decoration:underline!important}
.cky-btn,.cky-consent-container .cky-btn,.cky-preference-center .cky-btn{font-family:var(--ssc-font-body)!important;font-size:14px!important;font-weight:600!important;line-height:1.2!important;min-height:44px!important;padding:11px 20px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.32)!important;background:transparent!important;color:var(--ssc-bone)!important;text-transform:none!important;letter-spacing:0!important;transition:var(--ssc-t)}
.cky-btn:is(.cky-btn-accept,.cky-btn-reject,.cky-btn-customize,.cky-btn-preferences,.cky-btn-do-not-sell){background:transparent!important;color:var(--ssc-bone)!important;border-color:rgba(255,255,255,.32)!important}/* Accept, Reject and Manage share one treatment — no button dominates */
.cky-btn:hover,.cky-btn:is(.cky-btn-accept,.cky-btn-reject,.cky-btn-customize,.cky-btn-preferences):hover{background:var(--ssc-surface)!important;border-color:var(--ssc-bone)!important;color:var(--ssc-heading)!important}
.cky-btn:focus-visible,.cky-consent-container button:focus-visible,.cky-preference-center button:focus-visible,.cky-switch input:focus-visible+.cky-dummy-switch,.cky-btn-revisit-wrapper:focus-visible{outline:2px solid var(--ssc-accent-light)!important;outline-offset:2px!important;box-shadow:none!important}
.cky-consent-container .cky-btn-close,.cky-preference-center .cky-btn-close{color:var(--ssc-fog)!important}
.cky-btn-close img,.cky-accordion-chevron img,.cky-accordion-btn img,.cky-btn-revisit img{filter:invert(1) brightness(1.4)}
.cky-preference-center{background:rgba(17,19,17,.96)!important;color:var(--ssc-text)!important;border:1px solid var(--ssc-line)!important;border-radius:var(--ssc-radius)!important;box-shadow:var(--ssc-shadow)!important;font-family:var(--ssc-font-body)!important}
.cky-preference-header{border-bottom:1px solid var(--ssc-line)!important}
.cky-preference-content-wrapper,.cky-preference-content-wrapper p,.cky-accordion-body,.cky-accordion-body p,.cky-cookie-des-table,.cky-cookie-des-table *,.cky-accordion-header-des,.cky-accordion-header-des p{color:var(--ssc-text)!important}
.cky-accordion{border-bottom:1px solid var(--ssc-line)!important}
.cky-accordion-btn,.cky-accordion-chevron{color:var(--ssc-heading)!important;background:transparent!important;font-family:var(--ssc-font-body)!important;font-weight:600!important;font-size:15px!important}
.cky-accordion-chevron i::before{border-color:var(--ssc-fog)!important}
.cky-always-active{color:var(--ssc-success)!important;font-weight:600!important}
.cky-cookie-des-table,.cky-cookie-des-table td{background:transparent!important;border-color:var(--ssc-line)!important}
.cky-switch .cky-dummy-switch,.cky-switch label{background-color:rgba(255,255,255,.18)!important;border-color:transparent!important}
.cky-switch input:checked+.cky-dummy-switch,.cky-switch input:checked+label{background-color:var(--ssc-accent)!important}
.cky-switch .cky-dummy-switch::before,.cky-switch label::before{background-color:var(--ssc-bone)!important}
.cky-footer-wrapper{background:transparent!important;border-top:1px solid var(--ssc-line)!important}
.cky-footer-shadow{display:none!important}
.cky-footer,.cky-footer a{color:var(--ssc-fog)!important;font-size:12px!important}
.cky-btn-revisit-wrapper{background:var(--ssc-bg2)!important;border:1px solid var(--ssc-line)!important;box-shadow:var(--ssc-shadow)!important}
.cky-notice-btn-wrapper .cky-btn-customize{order:1}.cky-notice-btn-wrapper .cky-btn-reject{order:2}.cky-notice-btn-wrapper .cky-btn-accept{order:3}
@media (max-width:767px){.cky-consent-container .cky-consent-bar{border-radius:var(--ssc-radius-sm)!important}.cky-consent-container .cky-notice-btn-wrapper .cky-btn{flex:1 1 auto}}

/* 20. Motion, forced colours, print ------------------------------------------ */
.ssc-site button,.ssc-site [role="button"]{touch-action:manipulation}
.ssc-site a[href^="tel:"]{white-space:nowrap}
html{scroll-padding-top:calc(var(--ssc-header-h) + 16px)}
@media (prefers-reduced-motion:reduce){
.ssc-site *,.ssc-site *::before,.ssc-site *::after,.cky-consent-container *,main.ssc-coming-soon *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}/* !important: kills every transition/animation declared above */
.ssc-site .ssc-glass--hover:hover,.ssc-site .ssc-btn:hover,.ssc-site .ssc-phone-cta:hover,.ssc-site .elementor-widget-button .elementor-button:hover,.ssc-site .ssc-service-card:hover .ssc-service-card__media img,.ssc-site .ssc-article-card:hover .ssc-article-card__media img,.ssc-site .ssc-btn--text:hover .ssc-btn__icon{transform:none}
.ssc-site .ssc-btn.is-loading::after{animation:none;border-style:dotted}
}
@media (forced-colors:active){
.ssc-site :is(.ssc-glass,.ssc-btn,.elementor-button,.ssc-chip,.ssc-input,.ssc-select,.ssc-textarea,.ssc-phone-cta,.ssc-fact,.ssc-disclosure,.ssc-adv-label,.page-numbers,.ssc-faq__item,.ssc-hairline),.cky-btn,.cky-consent-bar{border-color:CanvasText;forced-color-adjust:none}/* keep borders visible in high-contrast modes */
.ssc-site :is(.ssc-btn--primary,.elementor-button,.ssc-chip.is-active){background:ButtonFace;color:ButtonText}
.ssc-site :focus-visible{outline:3px solid Highlight}
}
@media print{
body.ssc-site{background:#fff;color:#000;font-size:12pt}
.ssc-site :where(h1,h2,h3,h4),.ssc-site .ssc-h1,.ssc-site .ssc-h2,.ssc-site .ssc-h3,.ssc-site a{color:#000}
.ssc-site .e-con.ssc-header,.ssc-site .ssc-sticky-cta,.ssc-site .ssc-skip-link,.ssc-site .skip-link,.ssc-site .ssc-share,.ssc-site .ssc-cta-band,.ssc-site .ssc-footer__menu,.cky-consent-container,.cky-modal,.cky-btn-revisit-wrapper{display:none!important}
.ssc-site .ssc-glass{border-color:#999;background:none;box-shadow:none}
.ssc-site .ssc-faq__a[hidden]{display:block}
.ssc-site section.ssc-section{padding:24px 0}
.ssc-site .e-con.ssc-hero:first-child,.ssc-site .e-con.ssc-page-intro:first-child{margin-top:0;padding-top:24px;min-height:0}
}
