:root{--ink:#111315;--muted:#686d72;--paper:#f5f5f3;--line:#dedfdd;--accent:#ffcf21;--max:1240px;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.topbar{background:#0c0d0e;color:#c8cbcd;font-size:12px}.topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar a{color:white}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.06)}.nav-row{height:82px;display:flex;align-items:center;justify-content:space-between;transition:.2s}.compact .nav-row{height:68px}.brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.6px}.brand .custom-logo{max-height:48px;width:auto}.brand-mark{width:37px;height:37px;display:grid;place-items:center;background:var(--ink);color:#fff;border-radius:9px}.primary-nav{display:flex;align-items:center;gap:28px}.menu{display:flex;list-style:none;gap:28px;margin:0;padding:0;align-items:center}.menu a{font-weight:600;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:700;font-size:14px;transition:.2s;border:1px solid transparent}.btn:hover{transform:translateY(-1px)}.btn-dark{background:var(--ink);color:white}.btn-accent{background:var(--accent);color:#111}.btn-ghost{border-color:rgba(255,255,255,.45);color:#fff}.btn-light{background:#fff;color:#111}.btn-outline{border-color:#b9bcbe}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:8px}.menu-toggle span{display:block;height:2px;background:#111;margin:6px}.hero{position:relative;min-height:690px;display:flex;align-items:end;background:#222;background-image:var(--hero,linear-gradient(125deg,#17191b 0%,#34383b 45%,#141515 100%));background-position:center;background-size:cover;color:#fff}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.28) 65%,rgba(0,0,0,.15))}.hero-inner{position:relative;z-index:2;padding:130px 0 82px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2.3px;margin:0 0 18px;color:#ecefed}.eyebrow.dark{color:#666b70}.hero h1,.quote-hero h1{font-family:Manrope,sans-serif;font-size:clamp(48px,6vw,82px);line-height:.98;letter-spacing:-3.8px;max-width:950px;margin:0 0 24px}.hero-copy{font-size:19px;color:#e1e3e4;max-width:720px}.hero-actions{display:flex;gap:12px;margin:34px 0 62px}.trustline{display:flex;gap:38px;color:#d5d7d8;font-size:13px;font-weight:600}.trustline span:before{content:"✓";color:var(--accent);margin-right:8px}.section{padding:100px 0}.section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:45px}.section-head h2,.quote-band h2,.experience h2,.final-cta h2{font-family:Manrope,sans-serif;font-size:clamp(36px,4vw,55px);letter-spacing:-2.3px;line-height:1.03;margin:0}.section-head>p{color:var(--muted);font-size:16px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:280px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.2s;background:#fff}.service-card:hover{background:var(--paper);transform:translateY(-3px)}.service-num{font-size:12px;color:#8a8e91}.service-card h3{font-family:Manrope,sans-serif;font-size:24px;letter-spacing:-.8px;margin:58px 0 12px}.service-card p{color:var(--muted);max-width:320px}.service-card .arrow{position:absolute;right:28px;bottom:25px;font-size:26px}.quote-band{padding:90px 0;background:var(--accent)}.quote-band-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:60px;align-items:end}.quote-band .eyebrow{color:#4c4318}.quote-band p{max-width:780px}.quote-band-action{display:flex;align-items:center;flex-direction:column;gap:12px}.quote-band-action span{font-size:12px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.steps>div{background:#fff;padding:38px 30px}.steps span{color:#8d9296;font-size:12px}.steps h3{font-size:20px;margin:65px 0 8px}.steps p{color:var(--muted);font-size:14px}.experience{padding:95px 0;background:#111315;color:#fff}.experience-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.big-stat{font-family:Manrope,sans-serif;font-size:180px;font-weight:800;line-height:.8;letter-spacing:-12px}.big-stat span{color:var(--accent)}.experience p{color:#bfc2c4;max-width:650px}.text-link{font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link.light{color:#fff}.final-cta{text-align:center}.final-cta h2{max-width:880px;margin:0 auto 30px}.final-cta .btn{margin:5px}.site-footer{background:#0b0c0d;color:#c6c8ca;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:45px}.footer-brand{font:800 24px Manrope,sans-serif;color:#fff}.site-footer h3{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:1.4px}.site-footer p{font-size:13px}.site-footer a{color:#fff}.footer-bottom{border-top:1px solid #2a2d2f;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;font-size:11px}.page-hero,.quote-hero{padding:100px 0 70px;background:var(--paper)}.page-hero h1{font:800 clamp(42px,6vw,72px) Manrope,sans-serif;letter-spacing:-3px;margin:0}.quote-hero{background:#111315;color:#fff}.quote-hero p{max-width:720px;color:#c9ccce}.content-narrow{max-width:900px}.content-narrow img{max-width:100%;height:auto}.woo-wrap ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;list-style:none!important;margin:0!important;padding:0!important}.woo-wrap ul.products::before,.woo-wrap ul.products::after{content:none!important;display:none!important}.woo-wrap ul.products li.product,.woocommerce .woo-wrap ul.products li.product,.woocommerce-page .woo-wrap ul.products li.product{float:none!important;clear:none!important;width:auto!important;margin:0!important;padding:18px!important;border:1px solid var(--line);border-radius:14px}.woo-wrap ul.products li.product.first,.woo-wrap ul.products li.product.last{clear:none!important}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--ink)!important;color:#fff!important;border-radius:999px!important}.notice{padding:20px;background:#fff3cd;border-radius:12px}.quote-page{background:#f7f7f5}
@media(max-width:900px){.wrap{width:min(100% - 32px,var(--max))}.topbar-inner span{max-width:70%}.menu-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:24px;box-shadow:0 16px 30px rgba(0,0,0,.12);align-items:stretch;flex-direction:column}.primary-nav.open{display:flex}.menu{flex-direction:column;align-items:flex-start;gap:18px}.nav-quote{width:100%}.hero{min-height:620px}.hero-inner{padding:100px 0 60px}.hero h1,.quote-hero h1{letter-spacing:-2.5px}.trustline{flex-direction:column;gap:9px}.section{padding:70px 0}.section-head,.quote-band-grid,.experience-grid{grid-template-columns:1fr;gap:30px}.service-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.big-stat{font-size:120px}.footer-grid{grid-template-columns:1fr 1fr}.woo-wrap .products{grid-template-columns:1fr 1fr!important}}
@media(max-width:560px){.topbar{display:none}.nav-row{height:70px}.primary-nav{top:70px}.brand{font-size:19px}.hero{min-height:650px}.hero h1{font-size:48px}.hero-actions{flex-direction:column;align-items:stretch}.service-card{min-height:235px}.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.woo-wrap .products{grid-template-columns:1fr!important}}

/* v1.0.2 dedicated editable service pages */
.service-hero{position:relative;min-height:560px;display:flex;align-items:end;background:#202326;background-image:var(--service-image,linear-gradient(125deg,#17191b,#34383b));background-size:cover;background-position:center;color:#fff}.service-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.30) 68%,rgba(0,0,0,.13))}.service-hero-inner{position:relative;z-index:2;padding:125px 0 72px}.service-hero h1{font:800 clamp(48px,6vw,78px)/1 Manrope,sans-serif;letter-spacing:-3.4px;margin:0 0 22px;max-width:900px}.service-lead{max-width:720px;font-size:19px;color:#e4e6e7}.service-options{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-option{min-height:105px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;font:700 16px Manrope,sans-serif;display:flex;align-items:center;gap:12px}.service-option span{color:#1d6cff;font-weight:800}.service-media-section{padding:90px 0 100px;background:var(--paper)}.service-media-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:38px}.service-media-heading h2{font:800 clamp(34px,4vw,52px)/1.05 Manrope,sans-serif;letter-spacing:-2px;margin:0}.editor-note{color:var(--muted);max-width:560px}.service-editor-content img{max-width:100%;height:auto;border-radius:12px}.service-editor-content .wp-block-gallery{gap:18px}.service-placeholder{border:1px dashed #b8babc;background:#fff;padding:54px;border-radius:14px;color:#656a6f;text-align:center}.service-quote-band{margin:0}
@media(max-width:900px){.service-options{grid-template-columns:1fr 1fr}.service-media-heading{grid-template-columns:1fr}.service-hero{min-height:500px}}
@media(max-width:560px){.service-options{grid-template-columns:1fr}.service-hero h1{font-size:46px}}


/* v1.0.3 — responsive YouTube/video embeds for Safari, iPhone and desktop */
.wp-block-embed-youtube,
.wp-block-embed.is-provider-youtube,
figure.wp-block-embed-youtube,
figure.wp-block-embed.is-provider-youtube {
  width:100%;
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
}
.wp-block-embed-youtube .wp-block-embed__wrapper,
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper,
.service-editor-content .wp-block-embed__wrapper {
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#111;
}
.wp-block-embed-youtube .wp-block-embed__wrapper iframe,
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper iframe,
.service-editor-content iframe[src*="youtube.com"],
.service-editor-content iframe[src*="youtube-nocookie.com"],
.entry-content iframe[src*="youtube.com"],
.entry-content iframe[src*="youtube-nocookie.com"],
.content-narrow iframe[src*="youtube.com"],
.content-narrow iframe[src*="youtube-nocookie.com"] {
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:16 / 9!important;
  border:0!important;
}
.wp-block-embed-youtube .wp-block-embed__wrapper iframe,
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper iframe {
  position:absolute;
  inset:0;
  width:100%!important;
  height:100%!important;
}
@supports not (aspect-ratio: 16 / 9) {
  .wp-block-embed-youtube .wp-block-embed__wrapper,
  .wp-block-embed.is-provider-youtube .wp-block-embed__wrapper,
  .service-editor-content .wp-block-embed__wrapper {
    height:0;
    padding-top:56.25%;
  }
}


/* v1.0.6 — iPhone/iPad server-side YouTube fallback */
.sd2-ios-youtube{
  position:relative;display:block;width:100%;max-width:100%;aspect-ratio:16/9;
  overflow:hidden;background:#17191b;color:#fff!important;border-radius:0;text-decoration:none!important;
}
.sd2-ios-youtube img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;margin:0!important;border-radius:0!important}
.sd2-ios-youtube-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.58),rgba(0,0,0,.12))}
.sd2-ios-youtube-play{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:#fff;color:#111;font-size:29px;padding-left:5px;box-shadow:0 7px 28px rgba(0,0,0,.28)}
.sd2-ios-youtube-label{position:absolute;left:0;right:0;bottom:42px;text-align:center;font:800 18px Manrope,Inter,sans-serif;color:#fff}
.sd2-ios-youtube-note{position:absolute;left:0;right:0;bottom:20px;text-align:center;font:500 12px Inter,sans-serif;color:rgba(255,255,255,.78)}
@supports not (aspect-ratio:16/9){.sd2-ios-youtube{height:0;padding-top:56.25%}}

/* v1.1.0 — English / Korean bilingual UI */
.sd2-lang-ko{font-family:"Noto Sans KR",Inter,Arial,sans-serif;word-break:keep-all}.sd2-lang-ko h1,.sd2-lang-ko h2,.sd2-lang-ko h3,.sd2-lang-ko .brand,.sd2-lang-ko .footer-brand{font-family:"Noto Sans KR",Manrope,Inter,sans-serif}.lang-switch{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:#9a9da0;white-space:nowrap}.lang-switch a{padding:7px 4px}.lang-switch a.active{color:#111;border-bottom:2px solid var(--accent)}.sd2-lang-ko .hero h1{letter-spacing:-3px;line-height:1.08}.sd2-lang-ko .section-head h2,.sd2-lang-ko .quote-band h2,.sd2-lang-ko .experience h2,.sd2-lang-ko .final-cta h2{letter-spacing:-1.8px;line-height:1.13}.sd2-lang-ko .service-card h3{letter-spacing:-.6px}.page-lead{max-width:780px;color:var(--muted);font-size:18px}.contact-grid-ko{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card-ko{padding:44px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.contact-card-ko h2{font-size:30px;margin:0 0 22px}.contact-card-ko p{color:var(--muted);font-size:16px}.contact-card-ko a:not(.btn){font-weight:700;color:var(--ink)}
@media(max-width:1050px){.primary-nav{gap:18px}.menu{gap:20px}.lang-switch{margin-left:auto}}
@media(max-width:900px){.lang-switch{margin:8px 0 0 0;justify-content:flex-start}.contact-grid-ko{grid-template-columns:1fr}.sd2-lang-ko .hero h1{font-size:clamp(44px,10vw,66px);letter-spacing:-2px}}
@media(max-width:560px){.sd2-lang-ko .hero h1{font-size:42px}.sd2-lang-ko .hero-copy{font-size:17px}.contact-card-ko{padding:30px 24px}}


/* v1.1.1 — always-visible mobile language selector */
.mobile-header-actions{display:flex;align-items:center;gap:8px}
.mobile-lang-switch{display:none;align-items:center;gap:5px;font-size:12px;font-weight:800;white-space:nowrap}
.mobile-lang-switch a{display:inline-flex;align-items:center;min-height:36px;padding:0 5px;color:#7c8084}
.mobile-lang-switch a.active{color:#111;border-bottom:2px solid var(--accent)}
.mobile-lang-switch span{color:#b1b4b7}
@media(max-width:900px){
  .mobile-lang-switch{display:flex}
  .primary-nav .lang-switch{display:none}
  .mobile-header-actions{margin-left:auto}
  .brand{min-width:0}
  .brand .custom-logo{max-width:min(210px,48vw);height:auto}
}
@media(max-width:560px){
  .mobile-header-actions{gap:3px}
  .mobile-lang-switch{font-size:11px;gap:3px}
  .mobile-lang-switch a{padding:0 3px}
  .menu-toggle{width:40px;height:40px;padding:7px}
  .brand .custom-logo{max-width:min(180px,46vw)}
}


/* v1.1.4 — native Signs Depot header, replacing retired Elementor Header #590 */
.sd2-custom-topbar{background:#fff;border-bottom:1px solid #eef0f2;color:#17244f}
.sd2-custom-topbar .topbar-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:28px;font-size:16px}
.sd2-custom-topbar .topbar-actions{display:flex;align-items:center;gap:24px;margin-left:auto}
.sd2-custom-topbar a{color:#17244f;text-decoration:none}
.sd2-custom-topbar .topbar-phone,.sd2-custom-topbar .topbar-inquiry{display:inline-flex;align-items:center;gap:8px}
.sd2-native-header{background:#fff;border-bottom:1px solid #eef0f2;box-shadow:0 8px 24px rgba(17,24,39,.04)}
.sd2-native-header .nav-row{min-height:92px}
.sd2-native-header .brand .custom-logo{max-width:235px;height:auto}
.sd2-native-nav{gap:24px}
.sd2-native-nav .menu{gap:28px}
.sd2-native-nav .menu>li>a{font-weight:600;color:#1c294f}
.sd2-native-nav .nav-quote-inline{font-weight:700}
.sd2-desktop-lang{margin-left:2px}
.sd2-desktop-lang a{font-weight:700;color:#1c294f}
.sd2-desktop-lang a.active{color:var(--accent)}
@media(max-width:900px){
  .sd2-custom-topbar .topbar-inner{min-height:72px;display:block;text-align:center;padding-top:10px;padding-bottom:10px;font-size:14px}
  .sd2-custom-topbar .topbar-address{display:block;line-height:1.35;margin-bottom:6px}
  .sd2-custom-topbar .topbar-actions{justify-content:center;gap:20px}
  .sd2-mobile-language-strip{display:flex!important}
  .sd2-native-header .nav-row{min-height:76px}
  .sd2-native-header .brand .custom-logo{max-width:min(220px,56vw)}
  .sd2-desktop-lang{display:none!important}
}
@media(min-width:901px){.sd2-mobile-language-strip{display:none!important}}


/* v1.1.5 — desktop native header hard fix after Elementor Header #590 retirement */
@media(min-width:901px){
  .sd2-custom-topbar .wrap,
  .sd2-native-header .wrap{
    width:min(1240px,calc(100% - 64px))!important;
    max-width:1240px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .sd2-custom-topbar .topbar-inner{
    height:58px!important;
    min-height:58px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:0!important;
  }

  .sd2-native-header{
    position:sticky!important;
    top:0!important;
    z-index:999!important;
    overflow:visible!important;
    background:#fff!important;
  }

  .sd2-native-header .nav-row{
    height:88px!important;
    min-height:88px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:42px!important;
    overflow:visible!important;
  }

  .sd2-native-header .brand{
    display:flex!important;
    align-items:center!important;
    flex:0 0 235px!important;
    width:235px!important;
    max-width:235px!important;
    min-width:235px!important;
    height:64px!important;
    overflow:hidden!important;
  }

  .sd2-native-header .brand .custom-logo-link{
    display:flex!important;
    align-items:center!important;
    width:235px!important;
    max-width:235px!important;
    height:64px!important;
    max-height:64px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .sd2-native-header .brand img,
  .sd2-native-header .brand .custom-logo,
  .sd2-native-header .custom-logo-link img{
    display:block!important;
    width:235px!important;
    max-width:235px!important;
    min-width:0!important;
    height:64px!important;
    max-height:64px!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  .sd2-native-nav{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:24px!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .sd2-native-nav .sd2-fixed-menu{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:30px!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }

  .sd2-native-nav .sd2-fixed-menu>li{
    display:block!important;
    float:none!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
  }

  .sd2-native-nav .sd2-fixed-menu>li>a{
    display:inline-flex!important;
    align-items:center!important;
    min-height:44px!important;
    width:auto!important;
    padding:0!important;
    margin:0!important;
    white-space:nowrap!important;
    color:#1c294f!important;
    font:600 15px/1.2 Inter,Arial,sans-serif!important;
    text-decoration:none!important;
  }

  .sd2-native-nav .sd2-fixed-menu>li>a:hover,
  .sd2-native-nav .sd2-fixed-menu>li>a:focus{
    color:#3f7cff!important;
  }

  .sd2-native-nav .nav-quote-inline{
    padding:11px 16px!important;
    border:1px solid #d9dee7!important;
    border-radius:999px!important;
  }

  .sd2-desktop-lang{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    gap:6px!important;
    margin:0!important;
    white-space:nowrap!important;
  }

  .sd2-native-header .menu-toggle,
  .sd2-mobile-language-strip{
    display:none!important;
  }
}

/* Keep the native mobile header compact and independent of old global logo rules */
@media(max-width:900px){
  .sd2-native-header .nav-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
  }
  .sd2-native-header .brand{
    display:flex!important;
    flex:0 1 220px!important;
    width:auto!important;
    max-width:56vw!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .sd2-native-header .brand .custom-logo-link{
    display:flex!important;
    width:100%!important;
    height:54px!important;
    align-items:center!important;
    overflow:hidden!important;
  }
  .sd2-native-header .brand img,
  .sd2-native-header .brand .custom-logo,
  .sd2-native-header .custom-logo-link img{
    width:100%!important;
    max-width:220px!important;
    height:54px!important;
    max-height:54px!important;
    object-fit:contain!important;
    object-position:left center!important;
    transform:none!important;
  }
  .sd2-native-header .menu-toggle{
    display:block!important;
    flex:0 0 42px!important;
  }
  .sd2-native-nav{
    right:24px!important;
    left:24px!important;
    width:auto!important;
  }
}




/* v1.1.9 — cleaned mobile header: one centering system only */
@media(max-width:900px){
  .sd2-native-header .nav-row{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:82px!important;
    height:82px!important;
    padding:0 72px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  .sd2-native-header .brand{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 1 auto!important;
    width:auto!important;
    max-width:220px!important;
    min-width:0!important;
    height:60px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    overflow:visible!important;
  }

  .sd2-native-header .brand .custom-logo-link{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    max-width:220px!important;
    height:58px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  .sd2-native-header .brand img,
  .sd2-native-header .brand .custom-logo,
  .sd2-native-header .custom-logo-link img{
    display:block!important;
    width:auto!important;
    max-width:220px!important;
    height:52px!important;
    max-height:52px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    transform:none!important;
    position:static!important;
  }

  .sd2-native-header .mobile-header-actions{
    position:absolute!important;
    right:24px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    z-index:4!important;
  }

  .sd2-native-header .menu-toggle{
    display:block!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    padding:7px!important;
    position:static!important;
    transform:none!important;
  }
}

@media(max-width:560px){
  .sd2-native-header .nav-row{
    min-height:78px!important;
    height:78px!important;
    padding:0 64px!important;
  }

  .sd2-native-header .brand,
  .sd2-native-header .brand .custom-logo-link{
    max-width:200px!important;
  }

  .sd2-native-header .brand img,
  .sd2-native-header .brand .custom-logo,
  .sd2-native-header .custom-logo-link img{
    max-width:200px!important;
    height:48px!important;
    max-height:48px!important;
  }

  .sd2-native-header .mobile-header-actions{
    right:20px!important;
    width:40px!important;
    height:40px!important;
  }

  .sd2-native-header .menu-toggle{
    width:40px!important;
    height:40px!important;
  }
}


/* v1.1.10 — desktop + mobile dropdown submenus */
.sd2-native-nav .menu>li{position:relative}
.sd2-native-nav .submenu-toggle{display:none}
.sd2-native-nav .sub-menu{
  position:absolute;left:0;top:calc(100% + 12px);z-index:1000;
  min-width:260px;margin:0;padding:10px;background:#fff;
  border:1px solid #e7e7e7;border-radius:12px;
  box-shadow:0 14px 35px rgba(0,0,0,.14);
  list-style:none;opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.sd2-native-nav .sub-menu:before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.sd2-native-nav .sub-menu li{margin:0;padding:0}
.sd2-native-nav .sub-menu a{
  display:block!important;padding:11px 13px!important;border-radius:8px;
  color:#151922!important;font-size:14px!important;font-weight:650!important;
  line-height:1.3!important;white-space:nowrap;text-decoration:none!important;
}
.sd2-native-nav .sub-menu a:hover{background:#f4f6f8;color:#3578ff!important}
.sd2-native-nav .menu>li:hover>.sub-menu,
.sd2-native-nav .menu>li:focus-within>.sub-menu{
  opacity:1;visibility:visible;transform:translateY(0)
}

@media(max-width:900px){
  .sd2-native-nav .menu>li.menu-item-has-children{
    display:grid!important;grid-template-columns:1fr 46px!important;
    align-items:center!important;
  }
  .sd2-native-nav .menu>li.menu-item-has-children>a{grid-column:1;grid-row:1}
  .sd2-native-nav .submenu-toggle{
    display:flex!important;grid-column:2;grid-row:1;align-items:center;justify-content:center;
    width:42px;height:42px;margin:0;border:0;background:transparent;color:inherit;
    font-size:23px;line-height:1;cursor:pointer;transition:transform .18s ease;
  }
  .sd2-native-nav .menu>li.submenu-open>.submenu-toggle{transform:rotate(180deg)}
  .sd2-native-nav .sub-menu{
    grid-column:1/-1;grid-row:2;position:static!important;min-width:0;width:100%;
    margin:0!important;padding:0 0 8px 14px!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;background:transparent!important;
    opacity:1!important;visibility:visible!important;transform:none!important;
    display:none!important;
  }
  .sd2-native-nav .menu>li.submenu-open>.sub-menu{display:block!important}
  .sd2-native-nav .sub-menu a{
    padding:10px 12px!important;font-size:14px!important;font-weight:600!important;
    white-space:normal!important;opacity:.82;
  }
}


/* v1.1.11 — photo overlay service category cards */
.service-card-photo{
 position:relative!important;
 isolation:isolate;
 overflow:hidden!important;
 min-height:280px;
 background:#f6f7f8;
}
.service-card-photo .service-card-bg{
 position:absolute;inset:0;z-index:-2;
 background-image:var(--service-image,none);
 background-size:cover;background-position:center;
 opacity:.48;transform:scale(1.01);
 transition:opacity .35s ease,transform .45s ease;
}
.service-card-photo .service-card-overlay{
 position:absolute;inset:0;z-index:-1;
 background:linear-gradient(180deg,rgba(255,255,255,.44) 0%,rgba(255,255,255,.68) 58%,rgba(255,255,255,.93) 100%);
 transition:background .35s ease;
}
.service-card-photo:hover .service-card-bg,
.service-card-photo:focus .service-card-bg{
 opacity:.64;transform:scale(1.055);
}
.service-card-photo:hover .service-card-overlay,
.service-card-photo:focus .service-card-overlay{
 background:linear-gradient(180deg,rgba(255,255,255,.30) 0%,rgba(255,255,255,.58) 58%,rgba(255,255,255,.90) 100%);
}
.service-card-photo .service-num,
.service-card-photo h3,
.service-card-photo p,
.service-card-photo .arrow{position:relative;z-index:1}
@media(max-width:900px){.service-card-photo{min-height:240px}}


/* v1.1.14 — Facebook Reels homepage section */
.social-reels-section{background:#f5f6f7}
.social-reels-head{margin-bottom:28px}
.fb-reels-grid{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:22px;
 max-width:760px;
 margin:0 auto;
}
.fb-reel-card{
 background:#fff;
 border:1px solid #e3e5e8;
 border-radius:18px;
 overflow:hidden;
 box-shadow:0 10px 30px rgba(0,0,0,.06);
}
.fb-reel-frame{
 position:relative;
 width:100%;
 aspect-ratio:9/16;
 background:#111;
 overflow:hidden;
}
.fb-reel-frame iframe{
 position:absolute;
 inset:0;
 width:100%!important;
 height:100%!important;
 display:block;
}
.fb-reel-fallback{
 display:flex;
 align-items:center;
 justify-content:center;
 min-height:48px;
 padding:10px 14px;
 text-decoration:none!important;
 font-weight:700;
 font-size:14px;
 color:#2f67d8!important;
 background:#fff;
 border-top:1px solid #eceef1;
}
.fb-reel-fallback:hover{background:#f7f9fc}
.social-reels-action{
 display:flex;
 justify-content:center;
 margin-top:26px;
}
.btn-outline-dark{
 border:1px solid #1d2430;
 color:#1d2430!important;
 background:transparent;
}
@media(max-width:700px){
 .fb-reels-grid{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  gap:14px;
  padding:0 22px 10px;
  margin:0 -22px;
  scrollbar-width:none;
 }
 .fb-reels-grid::-webkit-scrollbar{display:none}
 .fb-reel-card{
  flex:0 0 min(78vw,330px);
  scroll-snap-align:center;
 }
 .social-reels-head{
  display:block!important;
 }
 .social-reels-head>p{
  margin-top:12px!important;
 }
}


/* v1.1.15 — seven permanent Facebook Reels in compact horizontal carousel */
.fb-reels-grid{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  overscroll-behavior-x:contain;
  max-width:none!important;
  margin:0!important;
  padding:4px 4px 16px!important;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.fb-reel-card{
  flex:0 0 min(29vw,320px)!important;
  scroll-snap-align:start!important;
}
@media(max-width:1000px){
  .fb-reel-card{flex-basis:min(42vw,310px)!important}
}
@media(max-width:700px){
  .fb-reels-grid{
    margin:0 -22px!important;
    padding:4px 22px 14px!important;
    gap:14px!important;
    scrollbar-width:none;
  }
  .fb-reels-grid::-webkit-scrollbar{display:none}
  .fb-reel-card{
    flex:0 0 min(78vw,330px)!important;
    scroll-snap-align:center!important;
  }
}


/* v1.1.16 — show all 7 Facebook Reels without desktop horizontal scrolling */
@media(min-width:1001px){
  .fb-reels-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
    overflow:visible!important;
    max-width:1180px!important;
    margin:0 auto!important;
    padding:4px 0 12px!important;
  }

  .fb-reel-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
    scroll-snap-align:none!important;
  }

  /* Center the final row of three cards under the first row of four */
  .fb-reel-card:nth-child(5){
    grid-column:1 / 2;
    transform:translateX(52%);
  }
  .fb-reel-card:nth-child(6){
    grid-column:2 / 3;
    transform:translateX(52%);
  }
  .fb-reel-card:nth-child(7){
    grid-column:3 / 4;
    transform:translateX(52%);
  }

  .fb-reel-frame{
    aspect-ratio:9/16!important;
  }

  .fb-reel-fallback{
    min-height:44px!important;
    font-size:13px!important;
  }
}

@media(min-width:701px) and (max-width:1000px){
  .fb-reels-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    overflow:visible!important;
    max-width:860px!important;
    margin:0 auto!important;
    padding:4px 0 12px!important;
  }
  .fb-reel-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
    transform:none!important;
  }
}

/* Keep the proven swipe layout on phones */
@media(max-width:700px){
  .fb-reels-grid{
    display:flex!important;
    overflow-x:auto!important;
  }
  .fb-reel-card{
    transform:none!important;
  }
}

/* v1.2.0 SEO content — intentionally quiet so the existing visual system stays intact. */
.local-seo-section{background:#f5f5f3}
.local-seo-grid,.service-seo-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:54px;align-items:start}
.local-seo-grid h2,.service-seo-grid h2{max-width:760px}
.local-seo-grid p,.service-seo-grid p{max-width:820px;line-height:1.75}
.local-links,.service-area-card{background:#fff;border:1px solid rgba(0,0,0,.1);padding:28px;border-radius:12px}
.local-links h3,.service-area-card h3{margin-top:0}
.local-links a{display:block;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08);font-weight:700;text-decoration:none;color:inherit}
.local-links a:last-child{border-bottom:0}
.service-seo-copy{background:#f7f7f5}
.service-area-card p{margin-bottom:18px}
.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.faq-item{border:1px solid rgba(0,0,0,.12);border-radius:10px;background:#fff;padding:0 20px}
.faq-item summary{cursor:pointer;font-weight:800;padding:20px 28px 20px 0;position:relative;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:'+';position:absolute;right:0;top:19px;font-size:22px;line-height:1}
.faq-item[open] summary:after{content:'–'}
.faq-item p{margin:0 0 20px;line-height:1.65}
@media(max-width:800px){.local-seo-grid,.service-seo-grid{grid-template-columns:1fr;gap:28px}.faq-grid{grid-template-columns:1fr}.local-links,.service-area-card{padding:22px}}
