/* Shared desktop launchers; keep existing mobile presentation. */
@media(min-width:1240px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{font-size:16px}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle svg,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle svg{width:22px;height:22px}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle{border:1px solid #b39769;box-shadow:0 12px 30px rgba(40,35,31,.22),inset 0 1px rgba(255,255,255,.14)}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy{display:block;text-align:center}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy strong{display:block;font-size:16px;font-weight:700}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy small{font-size:11px;line-height:1.35;letter-spacing:.04em}
}
@media(max-width:1239px){body:not(.concept3-home)>.fbc-weather,body:not(.concept3-home)>.fbc-weather__handle,body:not(.concept3-home)>.fbc-weather__overlay{display:none}}

/* Desktop side controls: use only the existing instances; mobile stays in flow. */
@media(min-width:1240px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{position:fixed;left:0;right:auto;top:55vh;bottom:auto;width:22px;min-height:128px;height:128px;margin:0;padding:8px 2px;flex-direction:column;gap:0;border-radius:0 7px 7px 0;transform:none;translate:none}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{position:fixed;left:auto;right:0;top:55vh;bottom:auto;width:22px;margin:0;transform:none}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle{width:100%;min-height:128px;height:128px;padding:8px 2px;flex-direction:column;gap:0;border-radius:7px 0 0 7px;transform:none}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle:after,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle:after{inset:2px;border-radius:5px}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-label,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy strong{writing-mode:vertical-rl;letter-spacing:.08em;line-height:1.2;white-space:nowrap}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy{writing-mode:horizontal-tb}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle svg,body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-chevron,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle svg,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy small{display:none}
}
@media(min-width:1360px) and (max-width:1599px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle,body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{width:clamp(36px,calc((100vw - 1256px)/2 - 16px),140px)}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{left:8px}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{right:8px}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle{padding:8px 5px}
}
@media(min-width:1440px) and (max-width:1599px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle{height:56px;min-height:56px}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-label,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy strong{writing-mode:horizontal-tb;letter-spacing:0;line-height:1.35}
}
@media(min-width:1600px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{left:12px;width:140px;min-height:48px;height:48px;padding:8px 14px;flex-direction:row;gap:8px;border-radius:8px}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{right:12px;width:140px}
 body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle{min-height:48px;height:48px;padding:8px 14px;flex-direction:row;gap:8px;border-radius:8px;justify-content:center}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-label,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy strong{writing-mode:horizontal-tb;letter-spacing:.04em;line-height:1.35;min-width:64px;text-align:center}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle svg,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle svg{display:block;flex-shrink:0}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-chevron,body:is(.home.concept3-home,.concept3-site) .c3-service-consultant__toggle-copy small{display:none}
}

/* Mobile tools use the original body-level instances; desktop rules above stay intact. */
@media(max-width:767px){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{position:fixed;top:auto;bottom:calc(96px + env(safe-area-inset-bottom));width:60px;margin:0;transform:none;translate:none}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{left:calc(7px + env(safe-area-inset-left));right:auto;z-index:971}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant{right:calc(7px + env(safe-area-inset-right));left:auto;z-index:971}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle{box-sizing:border-box;display:flex;width:60px;min-width:60px;height:64px;min-height:64px;padding:7px 3px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid #e2c58f;border-radius:13px;overflow:hidden;isolation:isolate;transform:none;translate:none;transition:background .2s ease}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle{background:#dac18c;color:#30281d;box-shadow:0 4px 12px rgba(68,45,20,.16),inset 0 1px rgba(255,255,255,.5)}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle{background:var(--c3-wine,#861b26);color:#fff8e8;box-shadow:0 5px 15px rgba(94,19,30,.23),inset 0 1px rgba(255,255,255,.16)}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle svg,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle svg{display:block;width:23px;height:23px;flex:0 0 auto;stroke:currentColor;position:relative;z-index:1}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-label,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant .c3-service-consultant__toggle-copy strong{display:block;min-width:0;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0;writing-mode:horizontal-tb;white-space:nowrap;text-align:center}
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant .c3-service-consultant__toggle-copy{display:block;writing-mode:horizontal-tb;text-align:center;position:relative;z-index:1}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-label{position:relative;z-index:1}
 body:is(.home.concept3-home,.concept3-site) .fbc-weather__handle-chevron,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant .c3-service-consultant__toggle-copy small{display:none}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle::after,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle::after{content:"";position:absolute;inset:2px;border:1px solid rgba(255,224,165,.65);border-radius:10px;background:linear-gradient(135deg,rgba(255,227,169,.18),transparent 58%,rgba(236,190,103,.12));opacity:.25;pointer-events:none;animation:fbc-tool-glow 4.6s ease-in-out infinite}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle::before,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle::before{content:"";position:absolute;inset:-20% -70%;background:linear-gradient(110deg,transparent 44%,rgba(255,231,182,.16) 50%,transparent 56%);opacity:0;transform:translateX(-48%);pointer-events:none;animation:fbc-tool-sheen 9s ease-in-out infinite}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather{display:block;position:fixed;left:50%;top:50%;width:min(360px,calc(100vw - 24px));max-width:calc(100vw - 24px);padding:0;transform:translate(-50%,-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;z-index:985}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather.fbc-weather--open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%)}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather .fbc-weather__inner{width:100%;max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid #c8a96b;border-radius:14px}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__overlay:not([hidden]){display:block;z-index:984;background:rgba(26,19,17,.4)}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather .fbc-weather__close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin:-8px 0 0;padding:0;border:0;border-radius:50%;background:transparent;color:#68594a;font:24px/1 sans-serif;cursor:pointer}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather .fbc-weather__heading{gap:6px}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather .fbc-weather__toggle{padding:8px;min-height:44px}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather .fbc-weather__close:focus-visible{outline:2px solid #76551f;outline-offset:1px}
 body>.c3-floating-tools-toggle{display:block;position:fixed;right:calc(7px + env(safe-area-inset-right));bottom:calc(50px + env(safe-area-inset-bottom));z-index:971;min-width:60px;height:44px;padding:0 3px;border:0;border-radius:7px;background:rgba(255,253,249,.9);color:#695a48;font:11px/1.3 var(--c3-sans,sans-serif);cursor:pointer}
 body.fbc-tools-collapsed>.fbc-weather__handle,
 body.fbc-tools-collapsed>.c3-service-consultant,
 body.fbc-tools-suspended>.fbc-weather__handle,
 body.fbc-tools-suspended>.c3-service-consultant,
 body.fbc-tools-suspended>.c3-floating-tools-toggle,
 body.c3-consultation-open>.c3-floating-tools-toggle,
 body.fbc-weather-open>.c3-floating-tools-toggle{visibility:hidden;pointer-events:none}
}
.fbc-weather__close,.c3-floating-tools-toggle{display:none}
@keyframes fbc-tool-glow{0%,100%{opacity:.22}50%{opacity:.62}}
@keyframes fbc-tool-sheen{0%,65%,100%{opacity:0;transform:translateX(-48%)}72%{opacity:.6}88%{opacity:0;transform:translateX(48%)}}
@media(max-width:767px) and (prefers-reduced-motion:reduce){
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle::before,
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle::after,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle::before,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle::after{animation:none}
 body:is(.home.concept3-home,.concept3-site)>.fbc-weather__handle::before,
 body:is(.home.concept3-home,.concept3-site)>.c3-service-consultant>.c3-service-consultant__toggle::before{opacity:0}
}
