/* Shoco Site Essentials 0.2.7: content blocks (sections module). Colors: --sse-ink, --sse-muted, --sse-line, --sse-surface, --sse-head, --sse-dark */
.sse-sections{direction:rtl;text-align:right;color:var(--sse-ink);font-family:var(--sse-font, inherit);font-size:clamp(16px,1.2vw,19px);line-height:1.6;background:#fff}
.sse-sections *,.sse-sections *::before,.sse-sections *::after{box-sizing:border-box}
.sse-sections .sse-wrap{margin:0 auto;padding:0 16px}
.sse-block{padding:clamp(40px,4.5vw,68px) 0;position:relative}
.sse-block--alt{background:var(--sse-surface)}
.sse-block--facts,.sse-block--press{padding:clamp(28px,3vw,42px) 0}
.sse-sections h1.sse-h1{font-size:clamp(28px,2.9vw,42px);font-weight:400;color:var(--sse-head,var(--sse-ink));line-height:1.25;margin:0 0 .5em}
.sse-sections h2.sse-h2{font-size:clamp(24px,2.2vw,31px);font-weight:400;color:var(--sse-head,var(--sse-ink));line-height:1.3;margin:0 0 .9em}
.sse-sections h2.sse-h2--small{font-size:clamp(18px,1.5vw,22px);margin-bottom:.6em}
.sse-sections h3{font-size:clamp(18px,1.45vw,21px);font-weight:700;color:var(--sse-head,var(--sse-ink));margin:0 0 .4em;line-height:1.3}
.sse-sections p{margin:0 0 .8em}
.sse-block--intro p{font-size:clamp(17px,1.35vw,20px);max-width:760px}
.sse-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.2em}
.sse-btn{display:inline-block;border:1px solid var(--sse-dark,var(--sse-ink));padding:.55em 1.2em;font-size:clamp(16px,1.15vw,18px);line-height:1.2;color:var(--sse-dark,var(--sse-ink));background:#fff;text-decoration:none;transition:background .2s,color .2s}
.sse-btn:hover,.sse-btn:focus-visible{background:var(--sse-dark,var(--sse-ink));color:#fff}
.sse-btn--solid{background:var(--sse-dark,var(--sse-ink));color:#fff}
.sse-btn--solid:hover,.sse-btn--solid:focus-visible{background:#fff;color:var(--sse-dark,var(--sse-ink))}
.sse-btn--ghost{border-color:var(--sse-line);color:var(--sse-head,var(--sse-ink))}
.sse-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sse-fact{border-top:2px solid var(--sse-dark,var(--sse-ink));padding-top:12px}
.sse-fact b{display:block;font-size:clamp(22px,2.1vw,30px);font-weight:700;color:var(--sse-ink);line-height:1.15}
.sse-fact span{display:block;color:var(--sse-muted);font-size:clamp(14px,1.05vw,16px);margin-top:6px}
.sse-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sse-tile{background:#fff;border:1px solid var(--sse-line);padding:24px 22px;display:flex;flex-direction:column}
.sse-tile p{color:var(--sse-ink);font-size:clamp(15px,1.1vw,17px);flex:1}
.sse-more{color:var(--sse-head,var(--sse-ink));font-weight:700;font-size:clamp(14px,1.05vw,16px);border-bottom:1px solid currentColor;text-decoration:none;align-self:flex-start}
.sse-more:hover,.sse-more:focus-visible{color:var(--sse-ink)}
.sse-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sse-card{display:block;background:#fff;border:1px solid var(--sse-line);text-decoration:none;color:inherit}
.sse-card figure{margin:0}
.sse-card__img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.sse-card__img--gray{filter:grayscale(1)}
.sse-card figcaption{padding:12px 14px;font-size:clamp(15px,1.15vw,17px);color:var(--sse-head,var(--sse-ink))}
.sse-card figcaption small{display:block;color:var(--sse-muted);font-size:clamp(13px,.95vw,14px);margin-top:2px}
.sse-center{text-align:center;margin-top:28px}
.sse-about{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}
.sse-about__side p{font-size:clamp(15px,1.1vw,17px)}
.sse-quote{border-right:3px solid var(--sse-dark,var(--sse-ink));padding:6px 18px 6px 0;font-size:clamp(18px,1.5vw,22px);font-weight:200;color:var(--sse-head,var(--sse-ink));line-height:1.5}
.sse-press{display:flex;flex-wrap:wrap;gap:12px 34px;align-items:center;font-size:clamp(18px,1.5vw,22px);color:var(--sse-muted);font-weight:200}
.sse-press span{white-space:nowrap}
.sse-press .sse-press__he{font-weight:400}
.sse-press .sse-more{font-size:clamp(14px,1.05vw,16px)}
.sse-faq{max-width:820px;margin:0}
.sse-faq dt{font-weight:700;font-size:clamp(17px,1.35vw,20px);color:var(--sse-head,var(--sse-ink));margin:1.1em 0 .3em}
.sse-faq dt:first-child{margin-top:0}
.sse-faq dd{margin:0;font-size:clamp(15px,1.15vw,17px)}
.sse-block--cta{background:var(--sse-dark,var(--sse-ink));color:#fff;text-align:center}
.sse-block--cta h2.sse-h2{color:#fff}
.sse-cta__line{font-size:clamp(16px,1.25vw,19px);opacity:.9}
.sse-block--cta .sse-ctas{justify-content:center}
.sse-block--cta .sse-btn{border-color:#fff;color:#fff;background:transparent}
.sse-block--cta .sse-btn--solid{background:#fff;color:var(--sse-dark,var(--sse-ink))}
.sse-block--cta .sse-btn:hover,.sse-block--cta .sse-btn:focus-visible{background:#fff;color:var(--sse-dark,var(--sse-ink))}
@media (max-width:900px){.sse-facts{grid-template-columns:repeat(2,1fr)}.sse-tiles,.sse-cards{grid-template-columns:repeat(2,1fr)}.sse-about{grid-template-columns:1fr}}
@media (max-width:640px){.sse-tiles,.sse-cards{grid-template-columns:1fr}.sse-block{padding:40px 0}.sse-press{gap:8px 22px}}
/* notice bar of a draft / preview page */
.sse-draftbar{position:relative;z-index:5;scroll-margin-top:120px;background:#fef3c7;border-bottom:1px solid #facc15;color:#78350f;font-size:15px;line-height:1.5;direction:rtl;text-align:right;font-family:var(--sse-font, inherit)}
.sse-draftbar__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;padding:9px 16px;text-align:center}
.sse-draftbar__in b{color:#92400e}
.sse-draftbar__toggle{border:1px solid #d97706;background:#fff;color:#92400e;font:inherit;font-size:14px;padding:4px 12px;border-radius:4px;cursor:pointer}
.sse-draftbar__seo{padding:10px 16px 16px;border-top:1px solid #fde68a;background:#fffbeb}
.sse-draftbar__seo[hidden]{display:none}
.sse-serp{max-width:600px;margin:0 auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px;font-family:Arial,sans-serif;text-align:right}
.sse-serp__site{font-size:12px;color:#202124;margin-bottom:2px}
.sse-serp__title{font-size:20px;color:#1a0dab;line-height:1.3;margin-bottom:3px}
.sse-serp__desc{font-size:14px;color:#4d5156;line-height:1.5}
.sse-serp__meta{max-width:600px;margin:8px auto 0;font-size:13px;color:#92400e;text-align:center}
@media print{.sse-draftbar{display:none}}
.sse-draftbadge{position:fixed;bottom:90px;left:14px;z-index:99999;background:#fef3c7;border:1px solid #facc15;color:#92400e;font-size:13px;line-height:1.2;padding:5px 10px;border-radius:4px;text-decoration:none;box-shadow:0 2px 6px rgba(0,0,0,.15);font-family:var(--sse-font, inherit)}
@media print{.sse-draftbadge{display:none}}

/* scroll cue over the bottom of a full-screen slider (sections.scroll_hint). 0.2.5: every visual value comes from the
   settings as a CSS variable on the element (offset, font_size, padding, background, border, color, and *_mobile). */
.sse-scrollhint{position:absolute;top:calc(100vh - var(--sse-hint-off,122px));left:50%;transform:translateX(-50%);z-index:40;display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--sse-hint-pad,12px 27px 14px);border-radius:999px;background:var(--sse-hint-bg,rgba(20,20,20,.5));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:var(--sse-hint-border,2px solid rgba(255,255,255,.85));color:var(--sse-hint-color,#fff);text-decoration:none;font-size:var(--sse-hint-fs,18px);font-weight:600;line-height:1.2;text-align:center;text-shadow:var(--sse-hint-shadow,none);white-space:nowrap;font-family:var(--sse-font, inherit);transition:filter .2s,transform .2s}
.sse-scrollhint:hover,.sse-scrollhint:focus-visible{color:var(--sse-hint-color,#fff);filter:brightness(1.15);transform:translateX(-50%) translateY(-2px)}
.sse-scrollhint span{display:block;width:13px;height:13px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-2px;animation:sse-bounce 1.8s ease-in-out infinite}
@keyframes sse-bounce{0%,100%{transform:translateY(0) rotate(45deg)}50%{transform:translateY(5px) rotate(45deg)}}
@media (prefers-reduced-motion:reduce){.sse-scrollhint span{animation:none}}
/* 0.2.7: sections.scroll_hint.wave = colour of a soft elliptical ripple that spreads from the centre of the cue to its edges */
.sse-scrollhint--wave{overflow:hidden;isolation:isolate}
.sse-scrollhint--wave::after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;border-radius:999px;pointer-events:none;background:radial-gradient(50% 50% at 50% 50%,transparent 38%,var(--sse-hint-wave,rgba(38,39,36,.18)) 52%,transparent 66%);transform:scale(.1);opacity:0;animation:sse-wave var(--sse-hint-wave-dur,3.2s) ease-out infinite}
@keyframes sse-wave{0%{transform:scale(.1);opacity:0}8%{opacity:1}60%{transform:scale(2.1);opacity:0}100%{transform:scale(2.1);opacity:0}}
@media (prefers-reduced-motion:reduce){.sse-scrollhint--wave::after{animation:none;display:none}}
@media (max-width:640px){.sse-scrollhint{top:calc(100vh - var(--sse-hint-off-m,var(--sse-hint-off,122px)));font-size:var(--sse-hint-fs-m,16px);padding:var(--sse-hint-pad-m,11px 22px 13px)}}
.sse-block[id]{scroll-margin-top:90px}
