/* =========================================================
   M.Star Electric – site styles
   ========================================================= */
:root{
	--ms-navy:var(--wp--preset--color--navy,#062149);
	--ms-navy2:var(--wp--preset--color--navy-2,#13274D);
	--ms-orange:var(--wp--preset--color--orange,#FE6804);
	--ms-orange-d:#DD5700;
	--ms-amber:var(--wp--preset--color--amber,#FEA81B);
	--ms-text:var(--wp--preset--color--text,#3D4655);
	--ms-muted:var(--wp--preset--color--muted,#5F6876);
	--ms-soft:var(--wp--preset--color--soft,#EEF2F7);
	--ms-cream:var(--wp--preset--color--cream,#FAF6EE);
	--ms-paper:var(--wp--preset--color--paper,#FEFDFB);
	--ms-line:rgba(6,33,73,.13);
	--ms-line-d:rgba(255,255,255,.14);
	--ms-r:22px;
	--ms-r-lg:30px;
	--ms-ease:cubic-bezier(.22,1,.36,1);
	--ms-shadow:0 22px 50px -18px rgba(6,33,73,.22);
	--ms-shadow-lg:0 34px 80px -28px rgba(6,33,73,.38);
	--ms-header-h:84px;
	--ms-sec:clamp(64px,8vw,124px);
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{overflow-x:clip;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
::selection{background:var(--ms-orange);color:#fff}
img{max-width:100%;height:auto}
:where(a){text-underline-offset:.2em}
:focus-visible{outline:3px solid var(--ms-amber);outline-offset:3px;border-radius:6px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;top:12px;right:12px;z-index:9999;background:#fff;color:var(--ms-navy);padding:12px 18px;border-radius:12px;clip:auto;width:auto;height:auto}

/* ---------- layout ---------- */
.ms-main{margin:0}
.ms-content>*{margin-block:0!important}
.ms-content>.alignfull{margin-inline:calc(var(--wp--style--root--padding-right,0px)*-1) calc(var(--wp--style--root--padding-left,0px)*-1)}
.ms-sec{padding-block:var(--ms-sec);position:relative}
.ms-sec--tight{padding-block:clamp(48px,6vw,84px)}
.ms-bg-soft{background:var(--ms-soft)}
.ms-bg-cream{background:var(--ms-cream)}
.ms-bg-white{background:#fff}
.ms-bg-navy{background:var(--ms-navy);color:rgba(255,255,255,.82)}
.ms-bg-navy :where(h1,h2,h3,h4){color:#fff}
.ms-wide{max-width:var(--wp--style--global--wide-size,1440px);margin-inline:auto!important;width:100%}

/* ---------- typography helpers ---------- */
.ms-eyebrow{display:inline-flex!important;align-items:center;gap:8px;width:fit-content;margin:0 0 14px!important;padding:7px 16px;border:1px solid rgba(254,104,4,.32);background:rgba(254,104,4,.07);color:var(--ms-orange-d);border-radius:999px;font-size:14px!important;font-weight:800;letter-spacing:.02em;line-height:1.2}
.ms-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.ms-bg-navy .ms-eyebrow,.ms-hero .ms-eyebrow{color:var(--ms-amber);border-color:rgba(254,168,27,.38);background:rgba(254,168,27,.08)}
h1 em,h2 em,h3 em,.ms-hl{font-style:normal;color:var(--ms-orange)}
.ms-bg-navy :is(h1,h2,h3) em,.ms-bg-navy .ms-hl,.ms-hero .ms-hl,.ms-hero em,.ms-footer .ms-hl{color:var(--ms-amber)}
.ms-head{max-width:860px;margin-bottom:clamp(32px,4vw,56px)!important}
.ms-head>*{margin-block:0}
.ms-head>*+*{margin-top:16px}
.ms-head h2{margin-top:0}
.ms-head--c{margin-inline:auto!important;text-align:center}
.ms-head--c .ms-eyebrow{margin-inline:auto!important}
.ms-lead{font-size:var(--wp--preset--font-size--large)!important;line-height:1.65;max-width:64ch;color:var(--ms-text)}
.ms-head--c .ms-lead{margin-inline:auto}
.ms-bg-navy .ms-lead{color:rgba(255,255,255,.78)}
.ms-small{font-size:15px;color:var(--ms-muted)}

/* ---------- buttons ---------- */
.wp-block-buttons{gap:12px}
.wp-element-button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center;text-decoration:none!important;border:2px solid transparent;transition:transform .35s var(--ms-ease),background-color .25s,color .25s,border-color .25s,box-shadow .35s var(--ms-ease);box-shadow:0 10px 24px -10px rgba(254,104,4,.55);min-height:54px}
.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link,
.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link:visited{background:var(--ms-orange);color:#fff;border-color:var(--ms-orange)}
.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-orange-d);border-color:var(--ms-orange-d);color:#fff;transform:translateY(-3px);box-shadow:0 18px 34px -12px rgba(254,104,4,.6)}
.ms-btn-ghost .wp-block-button__link,.ms-btn-ghost .wp-block-button__link:visited{background:transparent;color:var(--ms-navy);border-color:rgba(6,33,73,.28);box-shadow:none}
.ms-btn-ghost .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-navy);color:#fff;border-color:var(--ms-navy);transform:translateY(-3px)}
:is(.ms-hero,.ms-bg-navy,.ms-footer,.ms-final) .ms-btn-ghost .wp-block-button__link,:is(.ms-hero,.ms-bg-navy,.ms-footer,.ms-final) .ms-btn-ghost .wp-block-button__link:visited{color:#fff;border-color:rgba(255,255,255,.42)}
:is(.ms-hero,.ms-bg-navy,.ms-footer,.ms-final) .ms-btn-ghost .wp-block-button__link:is(:hover,:focus-visible,:active){background:#fff;color:var(--ms-navy);border-color:#fff}
.ms-btn-navy .wp-block-button__link,.ms-btn-navy .wp-block-button__link:visited{background:var(--ms-navy);color:#fff;border-color:var(--ms-navy);box-shadow:0 12px 26px -12px rgba(6,33,73,.6)}
.ms-btn-navy .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-orange);border-color:var(--ms-orange);color:#fff;transform:translateY(-3px)}
.ms-btn-white .wp-block-button__link,.ms-btn-white .wp-block-button__link:visited{background:#fff;color:var(--ms-navy);border-color:#fff;box-shadow:none}
.ms-btn-white .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-amber);border-color:var(--ms-amber);color:var(--ms-navy);transform:translateY(-3px)}
.wp-block-button__link .ms-arrow{transition:transform .35s var(--ms-ease)}
.wp-block-button__link:hover .ms-arrow{transform:translateX(-5px)}
@media (max-width:767px){
	.ms-ctas{flex-direction:column;align-items:stretch!important;width:100%}
	.ms-ctas .wp-block-button,.ms-ctas .wp-block-button__link{width:100%}
}

/* =========================================================
   HEADER
   ========================================================= */
.ms-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:box-shadow .35s var(--ms-ease),border-color .35s}
.admin-bar .ms-header{top:var(--wp-admin--admin-bar--height,32px)}
@media (max-width:600px){.admin-bar .ms-header{top:0}}
.ms-scrolled .ms-header{border-bottom-color:var(--ms-line);box-shadow:0 12px 30px -20px rgba(6,33,73,.35)}
.ms-header__in{min-height:var(--ms-header-h);gap:clamp(12px,2vw,32px);transition:min-height .35s var(--ms-ease)}
.ms-scrolled .ms-header__in{min-height:70px}
.ms-header .wp-block-site-logo{flex:0 0 auto;transition:transform .55s var(--ms-ease)}
.ms-header .wp-block-site-logo img{width:clamp(150px,13vw,190px)!important;height:auto;transition:width .35s var(--ms-ease)}
.ms-scrolled .ms-header .wp-block-site-logo img{width:clamp(130px,11vw,166px)!important}
.ms-nav{flex:1 1 auto}
.ms-nav .wp-block-navigation__container{gap:clamp(14px,2vw,34px)}
.ms-nav .wp-block-navigation-item__content{color:var(--ms-navy)!important;font-weight:600;font-size:16.5px;padding:8px 2px;position:relative;transition:color .2s}
.ms-nav .wp-block-navigation-item__content::after{content:"";position:absolute;inset-inline:0;bottom:2px;height:2px;border-radius:2px;background:var(--ms-orange);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ms-ease)}
.ms-nav .wp-block-navigation-item__content:is(:hover,:focus-visible){color:var(--ms-orange)!important}
.ms-nav .wp-block-navigation-item__content:is(:hover,:focus-visible)::after,.ms-nav .current-menu-item>.wp-block-navigation-item__content::after,.ms-nav [aria-current=page]::after{transform:scaleX(1)}
.ms-nav [aria-current=page]{color:var(--ms-orange)!important}
.ms-header__cta{flex:0 0 auto;margin:0!important}
.ms-header__cta .wp-block-button__link{min-height:48px;padding:12px 22px;font-size:16px}
/* burger + overlay */
.ms-nav .wp-block-navigation__responsive-container-open,.ms-nav .wp-block-navigation__responsive-container-close{color:var(--ms-navy);background:transparent!important;border:0!important;border-radius:12px;width:46px;height:46px;align-items:center;justify-content:center}
@media (min-width:1101px){.ms-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:none!important}.ms-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:flex!important;position:relative;background:transparent!important}}
.ms-nav .wp-block-navigation__responsive-container-close{display:flex}
.ms-nav .wp-block-navigation__responsive-container-open:is(:hover,:focus,:active),.ms-nav .wp-block-navigation__responsive-container-close:is(:hover,:focus,:active){background:var(--ms-soft)!important;color:var(--ms-navy)!important;border:0!important}
.ms-nav .wp-block-navigation__responsive-container-open svg{width:30px;height:30px}
.ms-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--ms-navy)!important;padding:clamp(20px,5vw,40px)!important}
.ms-nav .is-menu-open .wp-block-navigation__responsive-container-close{color:#fff;top:18px;left:18px;right:auto}
.ms-nav .is-menu-open .wp-block-navigation__responsive-container-close:is(:hover,:focus,:active){background:rgba(255,255,255,.1)!important;color:#fff!important}
.ms-nav .is-menu-open .wp-block-navigation__responsive-container-content{align-items:center!important;justify-content:center;padding-top:70px!important}
.ms-nav .is-menu-open .wp-block-navigation__container{align-items:center!important;gap:6px!important}
.ms-nav .is-menu-open .wp-block-navigation-item__content{color:#fff!important;font-size:clamp(26px,7vw,36px)!important;font-weight:800;padding:8px 0!important}
.ms-nav .is-menu-open .wp-block-navigation-item__content::after{bottom:4px;height:3px;background:var(--ms-amber)}
.ms-nav .is-menu-open [aria-current=page]{color:var(--ms-amber)!important}
@media (max-width:1100px){
	.ms-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
	.ms-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none!important}
	.ms-nav{flex:0 0 auto;order:3}
	.ms-header .wp-block-site-logo{order:1}
	.ms-header__cta{order:2;margin-inline-start:auto!important}
}
@media (max-width:1024px){
	:root{--ms-header-h:72px}
	.ms-header .wp-block-site-logo{transform:translateX(var(--ms-logo-shift,0px))}
	.ms-scrolled .ms-header .wp-block-site-logo{transform:none}
	.ms-header__cta{opacity:0;visibility:hidden;transform:translateY(-10px) scale(.96);transition:opacity .45s var(--ms-ease),transform .55s var(--ms-ease),visibility 0s .45s}
	.ms-scrolled .ms-header__cta{opacity:1;visibility:visible;transform:none;transition-delay:.08s,.08s,0s}
	.ms-header .wp-block-site-logo img{width:150px!important}
	.ms-scrolled .ms-header .wp-block-site-logo img{width:118px!important}
	.ms-header__cta .wp-block-button__link{min-height:42px;padding:9px 14px;font-size:14.5px;white-space:nowrap}
}
@media (max-width:360px){
	.ms-scrolled .ms-header .wp-block-site-logo img{width:100px!important}
	.ms-header__cta .wp-block-button__link{padding:8px 11px;font-size:13.5px}
}

/* =========================================================
   HERO
   ========================================================= */
.ms-hero{position:relative;color:#fff;background-color:var(--ms-navy);overflow:hidden}
.ms-hero.wp-block-cover{min-height:0!important;padding:clamp(52px,7vw,104px) var(--wp--style--root--padding-left,24px) clamp(56px,7vw,110px)!important;align-items:stretch}
.ms-hero .wp-block-cover__image-background{object-position:center 30%}
.ms-hero .wp-block-cover__inner-container{max-width:var(--wp--style--global--wide-size,1440px);margin-inline:auto;width:100%;color:#fff}
.ms-hero::after{content:"";position:absolute;inset:auto -10% -40% auto;width:60vw;height:60vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(closest-side,rgba(254,104,4,.22),transparent 70%);pointer-events:none;z-index:1}
.ms-hero__cols{gap:clamp(28px,5vw,80px)!important;align-items:center!important;margin:0!important}
.ms-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--ms-amber);font-weight:700;font-size:clamp(14px,1.1vw,17px)!important;letter-spacing:.01em;margin:0 0 18px!important}
.ms-kicker::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ms-orange);box-shadow:0 0 0 6px rgba(254,104,4,.18)}
.ms-hero__title{color:#fff!important;font-size:clamp(40px,6.1vw,88px)!important;line-height:1.02!important;font-weight:900!important;letter-spacing:-.025em;margin:0!important}
.ms-hero__title .ms-hl{position:relative;color:var(--ms-amber)}
.ms-hero__text{color:rgba(255,255,255,.84);font-size:clamp(17px,1.35vw,21px)!important;line-height:1.7;max-width:56ch;margin:22px 0 0!important}
.ms-hero__text strong{color:#fff}
.ms-hero .ms-ctas{margin-top:32px!important}
.ms-hero__points{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0!important;margin:28px 0 0!important;color:rgba(255,255,255,.8);font-size:15.5px}
.ms-hero__points li{display:flex;align-items:center;gap:8px;margin:0}
.ms-hero__points li::before{content:"✓";display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(254,168,27,.16);color:var(--ms-amber);font-size:12px;font-weight:900}
.ms-hero__media{position:relative;margin:0!important}
.ms-hero__media .wp-block-image{margin:0}
.ms-hero__media .wp-block-image img{width:100%;aspect-ratio:4/4.6;object-fit:cover;border-radius:var(--ms-r-lg);border:1px solid rgba(255,255,255,.16);box-shadow:var(--ms-shadow-lg)}
.ms-float{position:absolute;z-index:3;margin:0!important;display:flex;flex-direction:column;gap:2px;padding:16px 20px;border-radius:18px;background:#fff;color:var(--ms-muted);font-size:14px;line-height:1.3;box-shadow:0 24px 50px -20px rgba(0,0,0,.45);border:1px solid var(--ms-line)}
.ms-float strong{color:var(--ms-navy);font-size:26px;font-weight:900;line-height:1}
.ms-float--a{inset-inline-start:-34px;bottom:12%}
.ms-float--b{inset-inline-end:-26px;top:9%}
.ms-float--b strong{color:var(--ms-orange)}
@media (prefers-reduced-motion:no-preference){
	.ms-float--a{animation:ms-bob 6s ease-in-out infinite}
	.ms-float--b{animation:ms-bob 7s ease-in-out -2s infinite}
}
@keyframes ms-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media (max-width:1024px){
	.ms-hero__cols{flex-direction:column!important}
	.ms-hero__cols>.wp-block-column{flex-basis:100%!important;width:100%}
	.ms-hero__content{text-align:center}
	.ms-hero__content .ms-kicker{justify-content:center}
	.ms-hero__text{margin-inline:auto!important}
	.ms-hero .ms-ctas,.ms-hero__points{justify-content:center!important}
	.ms-hero__media{max-width:520px;margin-inline:auto!important;width:100%}
	.ms-float--a{inset-inline-start:-8px}
	.ms-float--b{inset-inline-end:-8px}
}
@media (max-width:767px){
	.ms-hero__media .wp-block-image img{aspect-ratio:1/1}
	.ms-float{padding:11px 14px;font-size:12.5px}
	.ms-float strong{font-size:20px}
}
/* inner page hero */
.ms-hero--page.wp-block-cover{padding-block:clamp(56px,7vw,100px) clamp(60px,7vw,104px)!important}
.ms-hero--page .ms-hero__title{font-size:clamp(38px,5.4vw,78px)!important}
.ms-hero--page .ms-hero__content{max-width:860px}
.ms-hero--center .ms-hero__content{margin-inline:auto;text-align:center}
.ms-hero--center .ms-kicker,.ms-hero--center .ms-ctas{justify-content:center!important}
.ms-hero--center .ms-hero__text{margin-inline:auto!important}
/* legal / simple hero (group) */
.ms-hero--legal{padding-block:clamp(48px,6vw,88px) clamp(48px,6vw,84px);background:radial-gradient(120% 140% at 0% 0%,rgba(254,104,4,.18),transparent 55%),var(--ms-navy)}
.ms-hero--legal .ms-hero__title{font-size:clamp(34px,4.6vw,62px)!important}
.ms-hero--legal .ms-hero__in{position:relative;z-index:2}

/* =========================================================
   CARDS & GRIDS
   ========================================================= */
.ms-grid{display:grid!important;gap:clamp(16px,2vw,26px)!important;grid-template-columns:repeat(var(--ms-cols,3),minmax(0,1fr))}
.ms-grid--2{--ms-cols:2}.ms-grid--3{--ms-cols:3}.ms-grid--4{--ms-cols:4}
@media (max-width:1024px){.ms-grid--3,.ms-grid--4{--ms-cols:2}}
@media (max-width:640px){.ms-grid,.ms-grid--2{--ms-cols:1}}
.ms-card{position:relative;display:flex!important;flex-direction:column;gap:12px;margin:0!important;padding:clamp(24px,2.4vw,34px)!important;background:#fff;border:1px solid var(--ms-line);border-radius:var(--ms-r);box-shadow:var(--ms-shadow);transition:transform .5s var(--ms-ease),box-shadow .5s var(--ms-ease),border-color .4s}
.ms-card>*{margin:0!important}
.ms-card h3{font-size:clamp(19px,1.5vw,22px)!important;line-height:1.3;margin:0!important}
.ms-card p{color:var(--ms-text);line-height:1.65}
.ms-card .wp-block-buttons{margin-top:auto!important;padding-top:10px}
.ms-card:hover{transform:translateY(-6px);border-color:rgba(254,104,4,.45);box-shadow:var(--ms-shadow-lg)}
.ms-bg-navy .ms-card{background:rgba(255,255,255,.04);border-color:var(--ms-line-d);box-shadow:none}
.ms-bg-navy .ms-card p{color:rgba(255,255,255,.76)}
.ms-ic{display:grid!important;place-items:center;width:52px;height:52px;border-radius:15px;background:var(--ms-navy);color:var(--ms-amber);font-size:22px!important;font-weight:900;line-height:1;transition:transform .5s var(--ms-ease),background-color .3s,color .3s}
.ms-card:hover .ms-ic{background:var(--ms-orange);color:#fff;transform:rotate(-8deg) scale(1.06)}
.ms-num{font-size:15px!important;font-weight:900;color:var(--ms-orange);letter-spacing:.08em;font-variant-numeric:tabular-nums}
.ms-num--big{font-size:clamp(44px,4vw,60px)!important;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--ms-orange);letter-spacing:0}
.ms-card:hover .ms-num--big{color:var(--ms-orange)}

/* pains list */
.ms-pains{list-style:none;padding:0!important;margin:0!important;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.ms-pains li{display:flex;align-items:center;gap:14px;margin:0;padding:20px 22px;background:#fff;border:1px solid var(--ms-line);border-radius:18px;font-weight:600;color:var(--ms-navy);line-height:1.45;transition:transform .45s var(--ms-ease),border-color .3s}
.ms-pains li::before{content:"";flex:0 0 34px;height:34px;border-radius:50%;background:rgba(254,104,4,.1) linear-gradient(var(--ms-orange),var(--ms-orange)) center/14px 3px no-repeat}
.ms-pains li:hover{transform:translateX(-6px);border-color:rgba(254,104,4,.45)}
@media (max-width:767px){.ms-pains{grid-template-columns:1fr}}
.ms-split{gap:clamp(28px,5vw,80px)!important;align-items:center!important}
@media (max-width:1024px){.ms-split{flex-wrap:wrap!important}.ms-split>.wp-block-column{flex-basis:100%!important}}

/* strip / promise */
.ms-strip{grid-column:1/-1;display:flex!important;align-items:center;justify-content:center;gap:14px;margin:0!important;padding:22px 28px;border-radius:var(--ms-r);background:var(--ms-navy);color:#fff;font-size:clamp(20px,2vw,28px)!important;font-weight:900;text-align:center;line-height:1.25;box-shadow:var(--ms-shadow)}
.ms-strip::before{content:"✓";flex:0 0 44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--ms-orange);font-size:20px}

/* images */
.ms-media img{border-radius:var(--ms-r-lg);width:100%;object-fit:cover;box-shadow:var(--ms-shadow)}
.ms-banner{margin-top:clamp(28px,4vw,52px)!important}
.ms-banner img{aspect-ratio:21/8;object-fit:cover;width:100%;border-radius:var(--ms-r-lg)}
@media (max-width:767px){.ms-banner img{aspect-ratio:4/3}}
.ms-media--tall img{aspect-ratio:4/5}

/* plan card */
.ms-plan{max-width:540px;margin-inline:auto!important;position:relative;display:flex!important;flex-direction:column;gap:14px;padding:clamp(28px,3.4vw,46px)!important;border-radius:var(--ms-r-lg);background:var(--ms-navy);color:rgba(255,255,255,.82);border:1px solid var(--ms-navy);box-shadow:var(--ms-shadow-lg);overflow:hidden;isolation:isolate}
.ms-plan::before{content:"";position:absolute;inset:-40% -30% auto auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(closest-side,rgba(254,104,4,.35),transparent);z-index:-1}
.ms-plan>*{margin:0!important}
.ms-plan__tag{display:inline-flex!important;width:fit-content;padding:7px 15px;border-radius:999px;background:rgba(254,168,27,.14);color:var(--ms-amber);font-size:14px!important;font-weight:800}
.ms-plan__price{color:#fff;font-size:clamp(64px,7vw,96px)!important;font-weight:900;line-height:1;letter-spacing:-.03em;display:flex;align-items:baseline;gap:8px}
.ms-plan__price small{font-size:18px;font-weight:600;color:rgba(255,255,255,.7);letter-spacing:0}
.ms-plan__price sup{font-size:.35em;color:var(--ms-amber)}
.ms-plan .ms-checks li{color:rgba(255,255,255,.9)}
.ms-plan .wp-block-buttons{margin-top:8px!important}
.ms-plan .wp-block-button,.ms-plan .wp-block-button__link{width:100%}
.ms-note{font-size:14.5px!important;color:var(--ms-muted);text-align:center;margin-top:16px!important}
.ms-plan .ms-note{color:rgba(255,255,255,.62);text-align:start;margin:0!important}
.ms-help{max-width:760px;margin:clamp(28px,4vw,48px) auto 0!important;display:flex!important;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:20px 26px!important;border-radius:var(--ms-r);border:1px solid var(--ms-line);background:#fff}
.ms-help>*{margin:0!important}
.ms-help h3{font-size:19px!important}
@media (max-width:640px){.ms-help{justify-content:center;text-align:center}.ms-help .wp-block-buttons{width:100%}.ms-help .wp-block-button,.ms-help .wp-block-button__link{width:100%}}

/* check list */
.ms-checks{list-style:none;padding:0!important;margin:0!important;display:grid;gap:12px}
.ms-checks li{position:relative;padding-inline-start:36px;margin:0;font-weight:600;line-height:1.5}
.ms-checks li::before{content:"✓";position:absolute;inset-inline-start:0;top:0;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--ms-orange);color:#fff;font-size:12px;font-weight:900}

/* comparison table */
.ms-compare.wp-block-table{margin:0 auto!important;max-width:1100px;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--ms-r);border:1px solid var(--ms-line);background:#fff;box-shadow:var(--ms-shadow)}
.ms-compare table{min-width:620px;border-collapse:separate;border-spacing:0;width:100%}
.ms-compare :is(td,th){border:0!important;border-bottom:1px solid var(--ms-line)!important;padding:20px 24px!important;text-align:start;vertical-align:middle;font-size:16.5px}
.ms-compare tr:last-child td{border-bottom:0!important}
.ms-compare thead th{background:var(--ms-navy);color:#fff;font-weight:800;font-size:16px}
.ms-compare thead th:nth-child(2){background:var(--ms-orange)}
.ms-compare tbody td:first-child{font-weight:800;color:var(--ms-navy);width:24%}
.ms-compare tbody td:nth-child(2){background:rgba(254,104,4,.06);color:var(--ms-navy);font-weight:700}
.ms-compare tbody td:nth-child(2)::before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;margin-inline-end:10px;border-radius:50%;background:var(--ms-orange);color:#fff;font-size:11px;font-weight:900;vertical-align:-3px}
.ms-compare tbody td:nth-child(3){color:var(--ms-muted)}
.ms-compare figcaption{display:none}
.ms-hint{display:none;text-align:center;font-size:14px;color:var(--ms-muted);margin:0 0 12px!important}
@media (max-width:700px){.ms-hint{display:block}}

/* about / quote / stats */
.ms-quote{margin:24px 0 0!important;padding:22px 24px 22px 26px!important;border:1px solid var(--ms-line);border-radius:18px;background:var(--ms-cream);color:var(--ms-navy);font-weight:700;font-size:clamp(17px,1.4vw,20px)!important;line-height:1.55;position:relative}
.ms-quote::before{content:"”";position:absolute;top:-22px;inset-inline-start:18px;font-size:72px;line-height:1;color:var(--ms-orange);font-weight:900}
.ms-bg-cream .ms-quote{background:#fff}
.ms-stats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px!important;margin-top:26px!important}
.ms-stat{margin:0!important;padding:18px 16px!important;border-radius:18px;border:1px solid var(--ms-line);background:#fff;text-align:center;display:flex!important;flex-direction:column;gap:4px}
.ms-stat>*{margin:0!important}
.ms-stat__n{font-size:clamp(26px,2.4vw,34px)!important;font-weight:900;color:var(--ms-navy);line-height:1.1}
.ms-stat__l{font-size:14px!important;color:var(--ms-muted)}
.ms-bg-navy .ms-stat{background:rgba(255,255,255,.04);border-color:var(--ms-line-d)}
.ms-bg-navy .ms-stat__n{color:#fff}
.ms-bg-navy .ms-stat__l{color:rgba(255,255,255,.66)}
@media (max-width:420px){.ms-stats{grid-template-columns:1fr}}

/* reviews */
.ms-shots.wp-block-gallery{display:block!important;columns:3 260px;column-gap:20px}
.ms-shots.wp-block-gallery>.wp-block-image{width:100%!important;margin:0 0 20px!important;break-inside:avoid;display:block}
.ms-shots .wp-block-image img{width:100%!important;height:auto!important;border-radius:20px;border:1px solid var(--ms-line);box-shadow:var(--ms-shadow);background:#fff;transition:transform .5s var(--ms-ease),box-shadow .5s var(--ms-ease)}
.ms-shots .wp-block-image:hover img{transform:translateY(-6px) rotate(-.6deg);box-shadow:var(--ms-shadow-lg)}
.ms-shots .wp-block-image figcaption{position:static!important;background:none!important;color:var(--ms-navy)!important;font-weight:700;font-size:15px!important;padding:10px 4px 0!important;text-align:start;margin:0!important;max-height:none!important;overflow:visible!important}
.ms-shots .wp-block-image figcaption::before{content:"★★★★★";display:block;color:var(--ms-amber);letter-spacing:2px;font-size:13px;margin-bottom:2px}
.ms-shots--wall.wp-block-gallery{columns:4 230px}
.ms-shots--home.wp-block-gallery{columns:3 240px}
@media (max-width:640px){.ms-shots.wp-block-gallery{columns:2 140px;column-gap:12px}.ms-shots.wp-block-gallery>.wp-block-image{margin-bottom:14px!important}.ms-shots .wp-block-image figcaption{font-size:13px!important}}
.wp-lightbox-overlay .scrim{background-color:rgba(6,33,73,.92)!important}
.ms-marquee-wrap{overflow:hidden;padding-block:20px;background:var(--ms-orange);color:#fff;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ms-marquee{display:flex!important;flex-wrap:nowrap;gap:0;list-style:none;padding:0!important;margin:0!important;width:max-content}
.ms-marquee li{display:flex;align-items:center;gap:22px;padding-inline:22px 0;margin:0;font-weight:800;font-size:clamp(17px,1.6vw,22px);white-space:nowrap}
.ms-marquee li::after{content:"✦";color:var(--ms-navy);font-size:.8em}
@media (prefers-reduced-motion:no-preference){.ms-marquee.is-running{animation:ms-marquee var(--ms-mq-dur,38s) linear infinite}.ms-marquee-wrap:hover .ms-marquee{animation-play-state:paused}}
@keyframes ms-marquee{to{transform:translateX(50%)}}

/* FAQ */
.ms-faq{display:grid;gap:12px}
.ms-faq .wp-block-details,.wp-block-details.ms-q{margin:0!important;border:1px solid var(--ms-line);border-radius:18px;background:#fff;transition:border-color .3s,box-shadow .4s var(--ms-ease)}
.ms-faq .wp-block-details[open],.wp-block-details.ms-q[open]{border-color:rgba(254,104,4,.45);box-shadow:var(--ms-shadow)}
.ms-faq summary,.ms-q summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-weight:800;color:var(--ms-navy);font-size:clamp(16.5px,1.3vw,18.5px);line-height:1.4}
.ms-faq summary::-webkit-details-marker,.ms-q summary::-webkit-details-marker{display:none}
.ms-faq summary::after,.ms-q summary::after{content:"";flex:0 0 34px;height:34px;border-radius:50%;background:var(--ms-soft) linear-gradient(var(--ms-navy),var(--ms-navy)) center/12px 2px no-repeat,var(--ms-soft) linear-gradient(var(--ms-navy),var(--ms-navy)) center/2px 12px no-repeat;transition:transform .45s var(--ms-ease),background-color .3s}
.ms-faq details[open] summary::after,.ms-q[open] summary::after{transform:rotate(135deg);background-color:rgba(254,104,4,.12)}
.ms-faq summary:hover,.ms-q summary:hover{color:var(--ms-orange)}
.ms-faq details>:not(summary),.ms-q>:not(summary){padding:0 24px 22px!important;margin:0!important;color:var(--ms-text);line-height:1.7}
.ms-faq-cat{margin-top:clamp(36px,4vw,56px)!important}
.ms-faq-cat:first-child{margin-top:0!important}
.ms-faq-cat h2{font-size:clamp(24px,2.2vw,32px)!important;margin:0 0 18px!important;display:flex;align-items:center;gap:12px}
.ms-faq-side{position:sticky;top:calc(var(--ms-header-h) + 32px);display:flex!important;flex-direction:column;gap:16px}
.ms-faq-side>*{margin:0!important}
@media (max-width:1024px){.ms-faq-side{position:static}}

/* final CTA */
.ms-final{position:relative;overflow:hidden;isolation:isolate;max-width:var(--wp--style--global--wide-size,1440px);margin-inline:auto!important;padding:clamp(36px,5vw,72px)!important;border-radius:clamp(24px,3vw,36px);background:var(--ms-navy);color:rgba(255,255,255,.8);display:flex!important;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;box-shadow:var(--ms-shadow-lg)}
.ms-final::before{content:"";position:absolute;inset:auto auto -60% -10%;width:620px;height:620px;border-radius:50%;background:radial-gradient(closest-side,rgba(254,104,4,.32),transparent);z-index:-1}
.ms-final>*{margin:0!important}
.ms-final__text{max-width:720px}
.ms-final__text>*{margin:0!important}
.ms-final__text>*+*{margin-top:14px!important}
.ms-final h2{color:#fff;font-size:clamp(28px,3.4vw,48px)!important}
.ms-final p{color:rgba(255,255,255,.78)}
@media (max-width:767px){.ms-final{text-align:center;justify-content:center}.ms-final .ms-eyebrow{margin-inline:auto!important}}

/* steps */
.ms-step .ms-num--big{margin-bottom:6px!important}
.ms-steps{counter-reset:s}

/* device chips */
.ms-chips{list-style:none;padding:0!important;margin:0 auto!important;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:980px}
.ms-chips li{margin:0;padding:13px 22px;border-radius:999px;background:#fff;border:1px solid var(--ms-line);color:var(--ms-navy);font-weight:700;font-size:16.5px;transition:background-color .3s,color .3s,transform .45s var(--ms-ease),border-color .3s}
.ms-chips li:hover{background:var(--ms-navy);color:#fff;border-color:var(--ms-navy);transform:translateY(-4px)}

/* contact */
.ms-contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px!important}
@media (max-width:520px){.ms-contact-cards{grid-template-columns:1fr}}
.ms-ccard{margin:0!important;padding:18px 20px!important;border-radius:18px;border:1px solid var(--ms-line);background:#fff;display:flex!important;flex-direction:column;gap:2px;transition:transform .45s var(--ms-ease),border-color .3s,box-shadow .45s var(--ms-ease)}
.ms-ccard>*{margin:0!important}
.ms-ccard:hover{transform:translateY(-4px);border-color:rgba(254,104,4,.45);box-shadow:var(--ms-shadow)}
.ms-ccard__l{font-size:14px!important;color:var(--ms-muted);font-weight:600}
.ms-ccard__v{font-size:18px!important;font-weight:800;color:var(--ms-navy);word-break:break-word}
.ms-ccard__v a{color:inherit;text-decoration:none}
.ms-ccard__v a::after{content:"";position:absolute;inset:0}
.ms-ccard{position:relative}
.ms-ccard__v a:hover{color:var(--ms-orange)}
.ms-formcard{margin:0!important;padding:clamp(24px,3vw,40px)!important;border-radius:var(--ms-r-lg);background:#fff;border:1px solid var(--ms-line);box-shadow:var(--ms-shadow-lg)}
.ms-formcard>h2,.ms-formcard>h3{font-size:clamp(22px,2vw,28px)!important;margin:0 0 6px!important}
.ms-formcard>p{margin:0 0 18px!important;color:var(--ms-muted)}
/* Contact Form 7 */
.wpcf7 form{display:grid;gap:16px}
.wpcf7 form>p{margin:0}
.ms-f-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.ms-f-row{grid-template-columns:1fr}}
.wpcf7 label{display:block;font-weight:700;color:var(--ms-navy);font-size:15px;margin-bottom:7px}
.wpcf7 .wpcf7-form-control-wrap{display:block}
.wpcf7 :is(input[type=text],input[type=tel],input[type=email],textarea,select){width:100%;min-height:56px;padding:14px 18px;border-radius:14px;border:1.5px solid var(--ms-line);background:var(--ms-soft);font:inherit;font-size:16.5px;color:var(--ms-navy);transition:border-color .2s,box-shadow .25s,background-color .2s}
.wpcf7 textarea{min-height:130px;resize:vertical}
.wpcf7 :is(input,textarea)::placeholder{color:#7c8592}
.wpcf7 :is(input,textarea,select):focus{outline:0;border-color:var(--ms-orange);background:#fff;box-shadow:0 0 0 4px rgba(254,104,4,.16)}
.wpcf7 .wpcf7-acceptance .wpcf7-list-item{margin:0}
.wpcf7 .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:10px;font-weight:500;font-size:15px;color:var(--ms-text);cursor:pointer}
.wpcf7 .wpcf7-acceptance input{flex:0 0 22px;width:22px;height:22px;margin:1px 0 0;accent-color:var(--ms-orange)}
.wpcf7 .wpcf7-acceptance a{color:var(--ms-navy);font-weight:700}
.wpcf7 input[type=submit]{width:100%;min-height:58px;border:0;border-radius:14px;background:var(--ms-orange);color:#fff;font:inherit;font-weight:800;font-size:18px;cursor:pointer;box-shadow:0 14px 30px -12px rgba(254,104,4,.6);transition:transform .35s var(--ms-ease),background-color .25s,box-shadow .35s}
.wpcf7 input[type=submit]:is(:hover,:focus-visible){background:var(--ms-orange-d);transform:translateY(-3px)}
.wpcf7 input[type=submit]:disabled{opacity:.6;cursor:not-allowed;transform:none}
.wpcf7 .wpcf7-spinner{position:absolute;margin:18px}
.wpcf7-not-valid-tip{color:#B42318;font-size:14px;margin-top:6px;font-weight:600}
.wpcf7 form .wpcf7-response-output{margin:4px 0 0;padding:14px 16px;border-radius:14px;border:1.5px solid var(--ms-line);font-weight:600}
.wpcf7 form.sent .wpcf7-response-output{border-color:#12A150;background:#ECFDF3;color:#05603A}
.wpcf7 form:is(.invalid,.failed,.spam,.aborted) .wpcf7-response-output{border-color:#F04438;background:#FEF3F2;color:#B42318}
.ms-hp{position:absolute!important;inset-inline-start:-9999px!important}

/* legal pages */
.ms-legal{padding-block:clamp(44px,6vw,90px)}
.ms-legal>*{max-width:860px}
.ms-legal h2{font-size:clamp(22px,2vw,28px)!important;margin-top:clamp(32px,4vw,48px)!important;margin-bottom:12px!important}
.ms-legal h3{font-size:19px!important;margin-top:24px!important}
.ms-legal :is(p,li){line-height:1.8}
.ms-legal ul{padding-inline-start:22px}
.ms-legal li{margin-bottom:6px}
.ms-legal .ms-updated{color:var(--ms-muted);font-size:15px}
.ms-legal .ms-box{padding:22px 24px!important;border-radius:18px;border:1px solid var(--ms-line);background:var(--ms-cream)}
.ms-legal a{color:var(--ms-orange-d);font-weight:600}

/* =========================================================
   FOOTER
   ========================================================= */
.ms-footer{background:var(--ms-navy);color:rgba(255,255,255,.74);padding-block:clamp(40px,5vw,72px) 0;position:relative;overflow:hidden}
.ms-footer a{color:rgba(255,255,255,.86);text-decoration:none;transition:color .2s}
.ms-footer a:is(:hover,:focus-visible){color:var(--ms-amber)}
.ms-footer__cta{padding:clamp(26px,3.4vw,44px)!important;border-radius:var(--ms-r-lg);border:1px solid var(--ms-line-d);background:linear-gradient(120deg,rgba(254,104,4,.16),rgba(255,255,255,.03) 55%);gap:22px}
.ms-footer__cta-title{color:#fff!important;font-size:clamp(24px,2.8vw,40px)!important;margin:0!important;max-width:760px}
.ms-footer__grid{margin-top:clamp(40px,5vw,64px)!important;gap:clamp(28px,3vw,48px)!important;grid-template-columns:1.35fr 1fr 1.15fr 1.2fr!important}
@media (max-width:1100px){.ms-footer__grid{grid-template-columns:1fr 1fr!important}}
@media (max-width:640px){.ms-footer__grid{grid-template-columns:1fr!important}}
.ms-footer__grid>*{margin:0!important}
.ms-footer__logo{margin:0 0 18px!important}
.ms-footer__logo img{width:200px!important;height:auto}
.ms-footer__brand p{line-height:1.7;max-width:42ch}
.ms-footer__badges{list-style:none;padding:0!important;margin:18px 0 0!important;display:flex;flex-wrap:wrap;gap:8px}
.ms-footer__badges li{margin:0;padding:8px 13px;border-radius:12px;border:1px solid var(--ms-line-d);font-size:13.5px;color:rgba(255,255,255,.7)}
.ms-footer__badges strong{color:#fff;font-weight:900;margin-inline-end:3px}
.ms-footer__h{color:#fff!important;font-size:17px!important;margin:0 0 16px!important;font-weight:800}
.ms-footer__links,.ms-footer__contact{list-style:none;padding:0!important;margin:0!important;display:grid;gap:11px}
.ms-footer__links li,.ms-footer__contact li{margin:0}
.ms-footer__links a{display:inline-flex;align-items:center;gap:8px}
.ms-footer__links a::before{content:"←";font-size:13px;color:var(--ms-amber);opacity:0;transform:translateX(6px);transition:opacity .25s,transform .35s var(--ms-ease);order:2}
.ms-footer__links a:hover::before{opacity:1;transform:none}
.ms-footer__contact li{display:flex;align-items:center;gap:12px}
.ms-footer .ms-ic{width:36px;height:36px;border-radius:11px;font-size:15px!important;background:rgba(255,255,255,.07);color:var(--ms-amber);flex:0 0 36px;display:inline-grid!important}
.ms-footer__plan{padding:24px!important;border-radius:var(--ms-r);border:1px solid var(--ms-line-d);background:rgba(255,255,255,.04);display:flex!important;flex-direction:column;gap:8px}
.ms-footer__plan>*{margin:0!important}
.ms-footer__plan-tag{color:var(--ms-amber);font-weight:800;font-size:14px!important}
.ms-footer__price{color:#fff;font-size:44px!important;font-weight:900;line-height:1}
.ms-footer__price small{font-size:16px;font-weight:600;color:rgba(255,255,255,.66)}
.ms-footer__note{font-size:13.5px!important;color:rgba(255,255,255,.55)}
.ms-footer__plan .wp-block-buttons{margin-top:6px!important}
.ms-footer__bottom{margin-top:clamp(36px,4vw,56px)!important;padding-block:22px calc(22px + var(--ms-mbar-space,0px));border-top:1px solid var(--ms-line-d);gap:12px 28px;font-size:14px}
.ms-footer__bottom>*{margin:0!important}
.ms-footer__legal{display:flex;flex-wrap:wrap;gap:6px 22px}

/* =========================================================
   MOBILE STICKY BAR
   ========================================================= */
.ms-mbar{display:none}
@media (max-width:767px){
	:root{--ms-mbar-space:76px}
	.ms-mbar{position:fixed;z-index:70;inset:auto 0 0 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--ms-line);box-shadow:0 -14px 30px -18px rgba(6,33,73,.4);transform:translateY(110%);transition:transform .5s var(--ms-ease);visibility:hidden}
	.ms-mbar.is-on{transform:none;visibility:visible}
	.ms-mbar__btn,.ms-mbar__btn:visited{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border-radius:13px;font-weight:800;font-size:16px;text-decoration:none;color:#fff;background:var(--ms-orange)}
	.ms-mbar__btn--form,.ms-mbar__btn--form:visited,.ms-mbar__btn--wa,.ms-mbar__btn--wa:visited{background:var(--ms-navy);color:#fff}
	.ms-mbar__btn:is(:hover,:focus,:active){color:#fff;filter:brightness(1.06)}
}

/* =========================================================
   ACCESSIBILITY WIDGET
   ========================================================= */
.ms-a11y{position:fixed;z-index:80;inset-inline-end:18px;bottom:18px;direction:rtl;font-family:inherit}
@media (max-width:767px){.ms-a11y{bottom:18px;transition:bottom .5s var(--ms-ease)}.ms-mbar-on .ms-a11y{bottom:88px}}
.ms-a11y__toggle,.ms-a11y__toggle:is(:hover,:focus,:active){width:54px;height:54px;border-radius:17px;border:2px solid #fff!important;background:var(--ms-navy)!important;color:#fff!important;display:grid;place-items:center;cursor:pointer;box-shadow:0 14px 30px -12px rgba(6,33,73,.6);padding:0;transition:transform .35s var(--ms-ease)}
.ms-a11y__toggle:hover{transform:scale(1.06) rotate(-4deg)}
.ms-a11y__toggle svg{width:30px;height:30px}
.ms-a11y__panel{position:absolute;bottom:66px;inset-inline-end:0;width:min(330px,calc(100vw - 36px));padding:18px;border-radius:22px;background:#fff;color:var(--ms-navy);border:1px solid var(--ms-line);box-shadow:var(--ms-shadow-lg)}
.ms-a11y__panel[hidden]{display:none}
.ms-a11y__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ms-a11y__title{margin:0;font-weight:900;font-size:18px}
.ms-a11y__close,.ms-a11y__close:is(:hover,:focus,:active){width:38px;height:38px;border-radius:12px;border:0!important;background:var(--ms-soft)!important;color:var(--ms-navy)!important;font-size:22px;cursor:pointer;line-height:1;padding:0}
.ms-a11y__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ms-a11y__grid button,.ms-a11y__foot button,.ms-a11y__grid button:is(:hover,:focus,:active),.ms-a11y__foot button:is(:hover,:focus,:active){min-height:52px;padding:8px 10px;border-radius:13px;border:1.5px solid var(--ms-line)!important;background:#fff!important;color:var(--ms-navy)!important;font:inherit;font-weight:700;font-size:14.5px;cursor:pointer;line-height:1.25}
.ms-a11y__grid button:hover,.ms-a11y__foot button:hover{border-color:var(--ms-navy)!important}
.ms-a11y__grid button[aria-pressed=true],.ms-a11y__grid button[aria-pressed=true]:is(:hover,:focus,:active){background:var(--ms-navy)!important;color:#fff!important;border-color:var(--ms-navy)!important}
.ms-a11y__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.ms-a11y__foot button{min-height:44px;padding-inline:18px}
.ms-a11y__foot a{color:var(--ms-navy);font-weight:700;font-size:14.5px}
/* a11y modes */
html.ms-contrast{--wp--preset--color--navy:#000;--wp--preset--color--text:#000;--wp--preset--color--muted:#111;--wp--preset--color--orange:#A33F00;--ms-orange:#A33F00;--ms-orange-d:#7A2F00;--ms-amber:#FFD54A;--ms-muted:#111;--ms-text:#000;--ms-navy:#000;--ms-line:rgba(0,0,0,.6)}
html.ms-contrast body{background:#fff}
html.ms-contrast .ms-hero .wp-block-cover__image-background{opacity:0!important}
html.ms-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;outline:2px dashed var(--ms-amber);outline-offset:2px}
html.ms-readable body,html.ms-readable body *:not(.ms-a11y *){font-family:Arial,Helvetica,sans-serif!important;letter-spacing:.015em!important;word-spacing:.08em}
html.ms-nomotion *,html.ms-nomotion *::before,html.ms-nomotion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.ms-main,.ms-footer{zoom:var(--ms-zoom,1)}

/* =========================================================
   MOTION (content is always visible without JS)
   ========================================================= */
.ms-js .ms-hero__title .ms-line{display:block;overflow:clip;padding-bottom:.06em;margin-bottom:-.06em}
@media (prefers-reduced-motion:no-preference){
	.ms-card .ms-ic{will-change:transform}
}

/* ---------- extra layout helpers ---------- */
.ms-split--top{align-items:flex-start!important}
.ms-sticky-col{position:sticky;top:calc(var(--ms-header-h) + 28px)}
@media (max-width:1024px){.ms-sticky-col{position:static}}
.ms-strip--solo{margin-top:clamp(24px,3vw,40px)!important}
.ms-strip--sm{font-size:clamp(17px,1.5vw,21px)!important;padding:16px 20px;margin-top:22px!important;justify-content:flex-start;text-align:start}
.ms-strip--sm::before{flex-basis:36px;height:36px;font-size:16px}
.ms-center-btn{margin-top:clamp(20px,3vw,36px)!important}
.ms-about-cta{margin-top:26px!important}
.ms-stack{flex-direction:column;align-items:stretch!important}
.ms-stack .wp-block-button,.ms-stack .wp-block-button__link{width:100%}
.ms-stats--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ms-faq-side .ms-card:hover{transform:none}
.ms-split>.wp-block-column>*+*{margin-top:0}
.ms-split .ms-head{margin-bottom:24px!important}
.ms-split .ms-pains{margin-top:8px!important}
section.ms-sec[id]{scroll-margin-top:calc(var(--ms-header-h) + 10px)}
#form{scroll-margin-top:calc(var(--ms-header-h) + 20px)}


/* ---------- fixes after live review ---------- */
button,input,select,textarea,summary,.lightbox-trigger{font-family:inherit}
.ms-media,.ms-banner{overflow:hidden;border-radius:var(--ms-r-lg);box-shadow:var(--ms-shadow)}
.ms-media img,.ms-banner img{box-shadow:none}

.wp-site-blocks>header.wp-block-template-part{position:sticky;top:0;z-index:60}
.admin-bar .wp-site-blocks>header.wp-block-template-part{top:var(--wp-admin--admin-bar--height,32px)}
@media (max-width:600px){.admin-bar .wp-site-blocks>header.wp-block-template-part{top:0}}
.ms-header{position:relative!important;top:auto!important}
.ms-ic{font-size:26px!important;width:56px;height:56px}
.ms-footer .ms-ic{font-size:16px!important}

/* CF7 layout safety */
.wpcf7 .hidden-fields-container{display:none!important;border:0;padding:0;margin:0}
.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}
.wpcf7 form>*,.ms-f-row>*{min-width:0}
.wpcf7 :is(input,textarea,select){box-sizing:border-box;max-width:100%;min-width:0}
.wpcf7 .screen-reader-response{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.wpcf7 form>p:empty{display:none}

/* ---------- line icons ---------- */
.ms-ic .ms-svg{width:26px;height:26px;display:block}
.ms-card .ms-ic,.ms-card .ms-ic:is(p){color:var(--ms-amber)!important}
.ms-card:hover .ms-ic{color:#fff!important}
.ms-footer .ms-ic .ms-svg{width:17px;height:17px}
.ms-ic .ms-svg path,.ms-ic .ms-svg circle,.ms-ic .ms-svg rect{vector-effect:non-scaling-stroke}
@media (prefers-reduced-motion:no-preference){.ms-card:hover .ms-ic .ms-svg{animation:ms-ic-pop .6s var(--ms-ease)}}
@keyframes ms-ic-pop{0%{transform:scale(1)}40%{transform:scale(1.18) rotate(6deg)}100%{transform:scale(1)}}

/* ---------- form: phone/email typed LTR but aligned right ---------- */
.wpcf7 :is(input[type=tel],input[type=email]){direction:ltr;text-align:right}
.wpcf7 :is(input[type=tel],input[type=email])::placeholder{text-align:right}

/* ---------- cookie notice ---------- */
.ms-cookie{position:fixed;z-index:75;inset-inline-start:18px;bottom:18px;max-width:min(440px,calc(100vw - 108px));display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:20px;background:var(--ms-navy);color:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.14);box-shadow:var(--ms-shadow-lg);font-size:14.5px;line-height:1.5;transform:translateY(20px);opacity:0;transition:transform .6s var(--ms-ease),opacity .4s}
.ms-cookie.is-on{transform:none;opacity:1}
.ms-cookie[hidden]{display:none}
.ms-cookie__ic{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(254,168,27,.14);color:var(--ms-amber)}
.ms-cookie__ic svg{width:22px;height:22px}
.ms-cookie__txt{margin:0}
.ms-cookie__txt a,.ms-cookie__txt a:visited{color:var(--ms-amber);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.ms-cookie__ok,.ms-cookie__ok:is(:hover,:focus,:active,:visited){flex:0 0 auto;min-height:44px;padding:10px 16px;border-radius:12px;border:0!important;background:var(--ms-orange)!important;color:#fff!important;font:inherit;font-weight:800;font-size:14.5px;cursor:pointer;white-space:nowrap}
.ms-cookie__ok:hover{filter:brightness(1.07)}
@media (max-width:767px){
	.ms-cookie{inset-inline:12px;bottom:12px;max-width:none;flex-wrap:wrap;padding:14px}
	.ms-cookie__txt{flex:1 1 calc(100% - 60px)}
	.ms-cookie__ok{flex:1 1 100%}
	.ms-mbar-on .ms-cookie{bottom:84px}
}

/* ---------- no orphan words ---------- */
h1,h2,h3,h4,.ms-hero__title,.ms-footer__cta-title,.ms-strip,.ms-quote,.ms-plan__tag{text-wrap:balance}
p,li,summary,figcaption,.ms-lead{text-wrap:pretty}

.ms-shots--home.wp-block-gallery{columns:4 210px}
.ms-shots--wall.wp-block-gallery{columns:4 210px}

/* keep the fixed a11y button off the footer links */
.ms-footer__bottom{padding-inline-end:88px!important}
@media (max-width:767px){.ms-footer__bottom{padding-inline-end:0!important;padding-bottom:calc(22px + var(--ms-mbar-space,0px) + 74px)!important}}

.wpcf7 .ms-f-note{margin:0;font-size:14px;color:var(--ms-muted);line-height:1.6}


/* =========================================================
   Design-agent fixes (round 1)
   ========================================================= */
:root{--ms-orange-btn:#C04A00;--ms-orange-btn-d:#A33F00}
/* 1. header: blur on a pseudo layer so the mobile menu overlay is not trapped */
.ms-header{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;isolation:isolate}
.ms-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px)}
.wp-site-blocks>header.wp-block-template-part:has(.is-menu-open){z-index:100}
html.has-modal-open :is(.ms-mbar,.ms-a11y,.ms-cookie){visibility:hidden}
/* 2. header never clips at 320/280 */
@media (max-width:1024px){.ms-header__in{position:relative}body:not(.ms-scrolled) .ms-header__cta{position:absolute;inset-inline-end:60px}}
@media (max-width:340px){.ms-header__in{gap:8px!important}.ms-scrolled .ms-header .wp-block-site-logo img{width:84px!important}.ms-header .wp-block-site-logo img{width:120px!important}.ms-header__cta .wp-block-button__link{font-size:12.5px;padding:7px 9px;min-height:44px}.ms-nav .wp-block-navigation__responsive-container-open{width:44px}}
/* 3+4. form layout without CF7 auto-paragraphs */
.wpcf7 label{margin:0}
.wpcf7 .wpcf7-form-control-wrap{margin-top:7px}
.wpcf7-not-valid-tip{display:block}
.wpcf7 form.submitting input[type=submit]{opacity:.7;cursor:progress}
/* 5. FAQ plus/minus */
.ms-faq summary::after,.ms-q summary::after{background:linear-gradient(var(--ms-navy),var(--ms-navy)) center/12px 2px no-repeat,linear-gradient(var(--ms-navy),var(--ms-navy)) center/2px 12px no-repeat,var(--ms-soft)}
.ms-faq details[open] summary::after,.ms-q[open] summary::after{background:linear-gradient(var(--ms-orange-btn),var(--ms-orange-btn)) center/12px 2px no-repeat,linear-gradient(var(--ms-orange-btn),var(--ms-orange-btn)) center/2px 12px no-repeat,rgba(254,104,4,.12)}
/* 6. gallery captions: no core blur/shadow */
.ms-shots .wp-block-image::before{content:none!important}
.ms-shots .wp-block-image figcaption{text-shadow:none!important;text-align:start!important}
/* 8. contrast: white text sits on a deeper orange */
.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link,.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link:visited{background:var(--ms-orange-btn);border-color:var(--ms-orange-btn)}
.wp-block-button:not(.ms-btn-ghost):not(.ms-btn-navy):not(.ms-btn-white) .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-orange-btn-d);border-color:var(--ms-orange-btn-d)}
.ms-btn-navy .wp-block-button__link:is(:hover,:focus-visible,:active){background:var(--ms-orange-btn);border-color:var(--ms-orange-btn)}
.ms-mbar__btn--call,.ms-mbar__btn--call:visited{background:var(--ms-orange-btn)}
.ms-compare thead th:nth-child(2){background:var(--ms-orange-btn)}
.ms-marquee-wrap{background:var(--ms-orange-btn)}
.wpcf7 input[type=submit]{background:var(--ms-orange-btn)}
.wpcf7 input[type=submit]:is(:hover,:focus-visible){background:var(--ms-orange-btn-d)}
.ms-cookie__ok,.ms-cookie__ok:is(:hover,:focus,:active,:visited){background:var(--ms-orange-btn)!important}
.ms-strip::before,.ms-checks li::before,.ms-compare tbody td:nth-child(2)::before{background:var(--ms-orange-btn)}
/* 9. orange text on light backgrounds */
:is(h1,h2,h3) em,.ms-hl{color:var(--ms-orange-d)}
.ms-eyebrow{color:#A84300}
/* 10. focus ring */
:focus-visible{outline:3px solid var(--ms-navy);box-shadow:0 0 0 6px #fff}
:is(.ms-hero,.ms-bg-navy,.ms-footer,.ms-final,.ms-plan,.is-menu-open,.ms-cookie,.ms-strip) :focus-visible{outline-color:var(--ms-amber);box-shadow:none}
/* 11. visible field borders */
.wpcf7 :is(input[type=text],input[type=tel],input[type=email],textarea,select){border-color:#8A93A3}
.wpcf7 :is(input,textarea)::placeholder{color:#6B7480}
/* 12. sticky FAQ side column */
@media (min-width:1025px){.ms-split--top>.wp-block-column:has(>.ms-faq-side){position:sticky;top:calc(var(--ms-header-h) + 32px)}.ms-faq-side{position:static}}
/* 13. hero glow behind content */
.ms-hero .wp-block-cover__inner-container{z-index:2;position:relative}
/* 15. tablet: strip goes last so cards pair up */
@media (max-width:1024px){.ms-grid .ms-strip{order:1}}
/* 16. legal / 404 hero centered on mobile */
@media (max-width:1024px){.ms-hero--legal .ms-hero__in{text-align:center}.ms-hero--legal .ms-kicker{justify-content:center}.ms-hero--legal .ms-ctas{justify-content:center!important}}
/* 17. long e-mail */
.ms-ccard__v{font-size:clamp(15px,1.25vw,18px)!important;word-break:normal;overflow-wrap:anywhere}
/* 18. plan price at 280px */
.ms-plan__price{flex-wrap:wrap;font-size:clamp(48px,7vw + 28px,96px)!important}
/* 19. no gap above the footer */
.wp-site-blocks>footer,.wp-site-blocks>footer.wp-block-template-part{margin-block-start:0!important}
/* 20. hero image height on laptops */
@media (min-width:1025px){.ms-hero__media .wp-block-image img{max-height:min(620px,70vh)}}
/* 23. a11y panel fits landscape phones */
.ms-a11y__panel{max-height:calc(100dvh - 120px);overflow:auto}
/* 24. comfortable line length */
.ms-legal>*{max-width:68ch}
.ms-faq details>p{max-width:68ch}
/* 25. no fake hover on non-clickable items */
.ms-ccard:not(:has(a)):hover{transform:none;box-shadow:none;border-color:var(--ms-line)}
.ms-chips li:hover{transform:none}
