/* 365 Social services page – Gutenberg-native modules. */
.s365-services-page{background:#fff;overflow:hidden}.s365-services-entry>.wp-block-group{margin-block-start:0}.s365-services-hero{padding:4.8rem max(1.5rem,calc((100vw - 1280px)/2));background:linear-gradient(180deg,#fff 0,#f8fbfd 100%)}.s365-services-hero h1{max-width:830px;font-size:clamp(2.6rem,4.5vw,4.8rem);line-height:1.02}.s365-services-lead{max-width:720px;margin-top:1.35rem;color:var(--s365-muted);font-size:1.12rem}.s365-services-overview{margin-top:2.3rem;gap:1rem}.s365-service-overview-card{position:relative;height:100%;min-height:220px;padding:1.55rem;border:1px solid var(--s365-border);border-radius:var(--s365-radius-lg);background:#fff;box-shadow:0 10px 30px rgba(24,51,78,.04);overflow:hidden}.s365-service-overview-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--s365-orange)}.s365-service-overview-card h3{font-size:1.3rem;margin:.15rem 0 .65rem}.s365-service-overview-card p{color:var(--s365-muted)}.s365-service-overview-card p:last-child{margin-top:1.15rem}.s365-service-overview-card p:last-child a{font-weight:800}.s365-service-overview-card__number{color:var(--s365-blue)!important;font-size:.76rem!important;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.s365-services-section{padding:5.5rem max(1.5rem,calc((100vw - 1280px)/2))}.s365-services-section--soft{background:#f6f8fc}.s365-services-section>.wp-block-group.alignwide{max-width:1280px}.s365-services-section h2{font-size:clamp(2.15rem,3.4vw,3.35rem)}.s365-services-subtitle{max-width:760px;margin:1rem auto 2.2rem;font-size:1.08rem;line-height:1.55}.s365-services-question{margin:1.2rem auto 2rem;color:var(--s365-orange);font-size:1.18rem!important;font-weight:500}.s365-service-module-row{gap:1.1rem;margin-block:1.1rem}.s365-service-module{position:relative;height:100%;min-height:210px;padding:1.45rem 1.5rem;border:1px solid #d7e3ec;border-radius:14px;background:#e8f1f8;overflow:hidden}.s365-service-module h3{margin:0 2.3rem 1rem 0;color:var(--s365-orange);font-size:1.08rem;text-transform:uppercase}.s365-service-module__number{position:absolute;right:-.25rem;top:1rem;display:grid;place-items:center;width:2.3rem;height:2rem;border-radius:999px 0 0 999px;background:var(--s365-navy);color:#fff!important;font-size:.78rem;font-weight:900}.s365-checklist,.s365-feature-list{list-style:none!important;margin:0!important;padding:0!important}.s365-checklist li{position:relative;margin:.48rem 0;padding-left:1.25rem}.s365-checklist li::before{content:"□";position:absolute;left:0;color:var(--s365-navy);font-weight:900}
.s365-service-price-panel{margin-top:2rem;padding:2.15rem 2.4rem;border:1px solid #f3cab1;border-radius:18px;background:#ffd7bf}.s365-service-price-panel h3{font-size:2rem;text-transform:uppercase}.s365-service-price-panel__claim{margin:1.1rem 0;color:var(--s365-navy);font-weight:900;text-transform:uppercase;letter-spacing:.02em}.s365-service-phone img{display:block;max-height:250px;width:auto;margin:auto;object-fit:contain}
.s365-pricing-grid{align-items:stretch;gap:2rem;margin-top:2.4rem}.s365-pricing-grid>.wp-block-column{display:flex}.s365-price-card{position:relative;display:flex;flex:1;flex-direction:column;min-height:650px;padding:1.8rem 1.45rem 1.6rem;border-radius:18px;color:#fff;overflow:hidden;box-shadow:0 12px 32px rgba(24,51,78,.06)}.s365-price-card>*{position:relative;z-index:1}.s365-price-card h3{padding:.2rem 0 1.15rem;color:#fff;font-size:1.3rem;letter-spacing:.08em}.s365-price-card.is-basic{background:#5a5a5a}.s365-price-card.is-professional{background:#063b78}.s365-price-card.is-expert{background:#ff6500}.s365-price-card__price{margin:0 -1.45rem 1.4rem;padding:1.5rem 1rem;background:rgba(255,255,255,.12);color:#fff!important;font-size:clamp(2.65rem,4vw,3.9rem)!important;font-weight:900;line-height:1}.s365-price-card__badge{position:absolute;right:0;top:0;margin:0!important;padding:.38rem .75rem;border-radius:0 0 0 10px;background:#27d853;color:#fff!important;font-size:.68rem!important;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.s365-feature-list{flex:1;margin-bottom:1.3rem!important}.s365-feature-list li{margin:.72rem 0;line-height:1.45}.s365-feature-list li::first-letter{color:#64e451}.s365-feature-list li.is-no{opacity:.82}.s365-feature-list li.is-no::first-letter{color:#ff5757}.s365-price-card .wp-block-buttons{margin-top:auto}.s365-price-card .wp-block-button__link{border:0!important;background:#fff!important;color:#1e2b37!important;min-width:190px}.s365-services-section .wp-block-button.is-style-outline .wp-block-button__link{background:#fff!important;color:var(--s365-blue)!important;border:1px solid #afc9dd!important}
.s365-services-contact{padding:5.2rem max(1.5rem,calc((100vw - 1280px)/2));background:#f0f6f9;border-top:4px solid var(--s365-blue)}.s365-services-contact>.wp-block-group{max-width:1280px}.s365-services-contact h2{font-size:clamp(2.2rem,3vw,3.3rem)}.s365-services-contact .wp-block-column:first-child>p{max-width:31rem;color:var(--s365-muted)}.s365-contact-form{padding:1.5rem;border:1px solid var(--s365-border);border-radius:18px;background:#fff}.s365-contact-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.s365-contact-form label{display:block;font-weight:700}.s365-contact-form label>span{display:block;margin-bottom:.35rem;font-size:.86rem}.s365-contact-form label.is-wide{grid-column:1/-1}.s365-contact-form input[type=text],.s365-contact-form input[type=email],.s365-contact-form textarea{width:100%;border:1px solid #cbdbe6;border-radius:12px;background:#fff;padding:.8rem .9rem;outline:none}.s365-contact-form input:focus,.s365-contact-form textarea:focus{border-color:#6caed6;box-shadow:0 0 0 3px rgba(0,112,186,.1)}.s365-contact-form__consent{display:flex!important;gap:.55rem;align-items:flex-start;margin:1rem 0 1.1rem;font-weight:400!important}.s365-contact-form__consent span{margin:0!important;font-size:.82rem!important}.s365-contact-form__hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.s365-contact-form__notice{margin:0 0 1rem;padding:.9rem 1rem;border-radius:12px;background:#e8f5ff;border:1px solid #b7d8ef;font-weight:700}.s365-contact-form__notice.is-error{background:#fff2ef;border-color:#f5c4b8}
.editor-styles-wrapper .s365-services-section,.editor-styles-wrapper .s365-services-hero,.editor-styles-wrapper .s365-services-contact{padding:2rem!important}.editor-styles-wrapper .s365-service-module,.editor-styles-wrapper .s365-service-overview-card,.editor-styles-wrapper .s365-price-card{box-sizing:border-box}
@media(max-width:1000px){.s365-services-overview,.s365-service-module-row,.s365-pricing-grid{flex-wrap:wrap!important}.s365-services-overview>.wp-block-column,.s365-service-module-row>.wp-block-column{flex-basis:calc(50% - .6rem)!important}.s365-pricing-grid>.wp-block-column{flex-basis:100%!important}.s365-price-card{min-height:auto}.s365-service-price-panel .wp-block-columns{flex-wrap:wrap}.s365-service-price-panel .wp-block-column{flex-basis:100%!important}.s365-service-phone img{max-height:180px}}
@media(max-width:680px){.s365-services-hero{padding-block:3.3rem}.s365-services-section,.s365-services-contact{padding-block:3.6rem}.s365-services-overview>.wp-block-column,.s365-service-module-row>.wp-block-column{flex-basis:100%!important}.s365-contact-form__grid{grid-template-columns:1fr}.s365-contact-form label.is-wide{grid-column:auto}.s365-service-price-panel{padding:1.5rem}.s365-service-phone{display:none}.s365-price-card{padding:1.5rem 1.15rem}.s365-price-card__price{margin-inline:-1.15rem}}
/* Block-style aliases exposed in Gutenberg's Styles panel. */
.is-style-s365-service-card{position:relative;padding:1.45rem 1.5rem;border:1px solid #d7e3ec;border-radius:14px;background:#e8f1f8}
.is-style-s365-price-basic,.is-style-s365-price-professional,.is-style-s365-price-expert{padding:1.8rem 1.45rem;border-radius:18px;color:#fff}
.is-style-s365-price-basic{background:#5a5a5a}.is-style-s365-price-professional{background:#063b78}.is-style-s365-price-expert{background:#ff6500}.is-style-s365-price-basic h2,.is-style-s365-price-basic h3,.is-style-s365-price-professional h2,.is-style-s365-price-professional h3,.is-style-s365-price-expert h2,.is-style-s365-price-expert h3{color:#fff}


/* 0.6.8 – wider, calmer Gutenberg service presentation. */
.s365-services-entry .alignwide,
.s365-services-hero>.wp-block-group.alignwide,
.s365-services-section>.wp-block-group.alignwide,
.s365-services-contact>.wp-block-group.alignwide{
  width:min(1360px,calc(100vw - 64px))!important;
  max-width:1360px!important;
  margin-inline:auto!important;
}
.s365-services-hero{padding-inline:max(2rem,calc((100vw - 1360px)/2))}
.s365-services-section,.s365-services-contact{padding-inline:max(2rem,calc((100vw - 1360px)/2))}
.s365-services-hero h1{max-width:1080px}
.s365-services-lead{max-width:860px}
.s365-services-overview{gap:1.35rem}
.s365-service-overview-card{min-height:235px;padding:1.75rem 1.7rem}
.s365-service-module-row{gap:1.35rem;margin-block:1.35rem}
.s365-service-module{min-height:230px;padding:1.6rem 1.7rem}
.s365-pricing-grid{width:min(1120px,100%);margin-inline:auto;gap:1.6rem}
.s365-price-card{min-height:670px;padding:1.9rem 1.65rem 1.7rem}
.s365-price-card__price{margin-inline:-1.65rem;white-space:nowrap;font-family:Arial,Helvetica,sans-serif!important;font-variant-numeric:tabular-nums}
.s365-service-overview-card__number,.s365-service-module__number{font-family:Arial,Helvetica,sans-serif!important;font-variant-numeric:tabular-nums}
.s365-service-price-panel{width:min(1160px,100%);margin-inline:auto;padding:2.35rem 2.7rem}
.s365-contact-section__columns{gap:2.5rem}
.s365-home-contact{margin-top:0}

/* Make editor preview closer to the frontend width without affecting normal posts. */
.editor-styles-wrapper .s365-services-hero>.wp-block-group.alignwide,
.editor-styles-wrapper .s365-services-section>.wp-block-group.alignwide,
.editor-styles-wrapper .s365-services-contact>.wp-block-group.alignwide{max-width:1180px!important;width:100%!important}

@media(max-width:1100px){
  .s365-services-entry .alignwide,.s365-services-hero>.wp-block-group.alignwide,.s365-services-section>.wp-block-group.alignwide,.s365-services-contact>.wp-block-group.alignwide{width:min(100% - 40px,1180px)!important}
  .s365-pricing-grid{width:min(100%,980px)}
}
@media(max-width:680px){
  .s365-services-entry .alignwide,.s365-services-hero>.wp-block-group.alignwide,.s365-services-section>.wp-block-group.alignwide,.s365-services-contact>.wp-block-group.alignwide{width:calc(100% - 28px)!important}
  .s365-services-hero,.s365-services-section,.s365-services-contact{padding-inline:0}
  .s365-contact-section__columns{gap:1.4rem}
}


/* 0.6.9 – remove Gutenberg's nested 760px content constraint on the services page.
 * The wide wrapper was already 1360px, but children of the constrained inner Group
 * still inherited theme.json contentSize (760px). Keep the page Gutenberg-native,
 * while allowing its service modules to use the actual wide canvas. */
.s365-services-hero>.wp-block-group.alignwide,
.s365-services-section>.wp-block-group.alignwide,
.s365-services-contact>.wp-block-group.alignwide{
  --wp--style--global--content-size:100%;
  --wp--style--global--wide-size:100%;
  width:min(1440px,calc(100vw - 64px))!important;
  max-width:1440px!important;
}
.s365-services-hero>.wp-block-group.alignwide>:where(:not(.alignleft):not(.alignright):not(.alignfull)),
.s365-services-section>.wp-block-group.alignwide>:where(:not(.alignleft):not(.alignright):not(.alignfull)),
.s365-services-contact>.wp-block-group.alignwide>:where(:not(.alignleft):not(.alignright):not(.alignfull)){
  width:100%;
  max-width:none!important;
}
/* Text should stay pleasantly readable even though rows/cards become wider. */
.s365-services-hero h1{width:auto;max-width:1120px!important}
.s365-services-lead{width:auto!important;max-width:900px!important}
.s365-services-subtitle{width:auto!important;max-width:820px!important}
.s365-services-contact .wp-block-column:first-child>p{width:auto!important;max-width:34rem!important}
.s365-pricing-grid{width:min(1260px,100%)!important}
.s365-service-price-panel{width:min(1260px,100%)!important}
.s365-contact-section__columns{width:100%!important;max-width:none!important}

@media(max-width:1100px){
  .s365-services-hero>.wp-block-group.alignwide,
  .s365-services-section>.wp-block-group.alignwide,
  .s365-services-contact>.wp-block-group.alignwide{width:calc(100vw - 40px)!important}
}
@media(max-width:680px){
  .s365-services-hero>.wp-block-group.alignwide,
  .s365-services-section>.wp-block-group.alignwide,
  .s365-services-contact>.wp-block-group.alignwide{width:calc(100vw - 28px)!important}
}


/* 0.6.11 – the contact shortcode is used outside Gutenberg content on the home page.
 * Make its two-column structure independent of WordPress block-library CSS so the
 * home page renders exactly like the services page. */
.s365-contact-section__columns{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:flex-start!important;
  gap:2.75rem!important;
  width:100%!important;
}
.s365-contact-section__columns>.wp-block-column{min-width:0}
.s365-contact-section__columns>.wp-block-column:first-child{flex:0 0 36%!important}
.s365-contact-section__columns>.wp-block-column:last-child{flex:1 1 64%!important}
.s365-home-contact .s365-contact-form{width:100%}
@media(max-width:900px){
  .s365-contact-section__columns{flex-direction:column!important;gap:1.6rem!important}
  .s365-contact-section__columns>.wp-block-column:first-child,
  .s365-contact-section__columns>.wp-block-column:last-child{flex:1 1 auto!important;width:100%!important}
}
