.site-body{--shadow-card:0 5px 20px color-mix(in srgb, var(--color-primary-dark) 4.5%, transparent);--shadow-card-hover:0 12px 30px color-mix(in srgb, var(--color-primary-dark) 8.5%, transparent);--contact-dock-height:64px;padding-bottom:calc(var(--contact-dock-height) + 2px + env(safe-area-inset-bottom,0px))}.site-main .section--alt{border-top:1px solid color-mix(in srgb,var(--color-border-strong) 52%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-border-strong) 52%,transparent)}.header{box-shadow:0 1px 0 color-mix(in srgb,var(--color-primary-dark) 5.5%,transparent)}.page-banner{box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--color-accent-light) 14%,transparent)}.section__head{margin-bottom:30px}.section__subtitle{line-height:1.85}.card{border-color:var(--color-border);box-shadow:var(--shadow-card)}.card:hover,a.card:hover{box-shadow:var(--shadow-card-hover)}.article-card__title,.case-card__title,.scenario-card__title{line-height:1.58;text-wrap:balance}.article-card__foot,.case-card__foot{margin-top:18px;padding-top:14px;border-top:1px solid var(--color-border)}.faq-search__input,.form-input,.form-select,.form-textarea{border-color:var(--color-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--color-primary-dark) 2.5%,transparent)}.cta-bar{border-top:1px solid color-mix(in srgb,var(--color-accent-light) 32%,transparent)}.footer__inner{column-gap:40px}.footer__contact-item,.footer__nav-item{line-height:1.75}.footer__bottom-inner{border-top:1px solid color-mix(in srgb,var(--color-text-inverse) 6.5%,transparent)}.contact-dock{position:fixed;right:0;bottom:0;left:0;z-index:400;font-family:var(--font-body)}.contact-dock__desktop{display:none}.contact-dock__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;max-width:1280px;min-height:var(--contact-dock-height);margin:0 auto;padding:11px 32px}.contact-dock__text{min-width:0}.contact-dock__text strong{display:block;margin-bottom:1px;color:var(--color-text-inverse);font-family:var(--font-title);font-size:14px;font-weight:700;letter-spacing:.07em;line-height:1.45}.contact-dock__text span{display:block;overflow:hidden;color:color-mix(in srgb,var(--color-text-inverse) 58%,transparent);font-size:12px;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.contact-dock__actions{display:flex;flex:0 0 auto;align-items:center;gap:12px}.contact-dock__phone{display:inline-flex;align-items:center;gap:7px;min-height:42px;color:var(--color-text-inverse);font-size:14px;font-weight:500;letter-spacing:.04em}.contact-dock__phone:focus-visible,.contact-dock__phone:hover{color:var(--color-accent-light)}.contact-dock__appointment,.contact-dock__trigger{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:0 18px;border:1px solid color-mix(in srgb,var(--color-text-inverse) 24%,transparent);border-radius:4px;background:0 0;color:color-mix(in srgb,var(--color-text-inverse) 88%,transparent);font-size:13px;letter-spacing:.04em;transition:color .18s,background-color .18s,border-color .18s}.contact-dock__trigger:focus-visible,.contact-dock__trigger:hover,.contact-dock__trigger[aria-expanded=true]{border-color:var(--color-accent-light);color:var(--color-accent-light)}.contact-dock__chevron{transition:transform .18s}.contact-dock__trigger[aria-expanded=true] .contact-dock__chevron{transform:rotate(180deg)}.contact-dock__appointment{border-color:var(--color-text-inverse);background:var(--color-text-inverse);color:var(--color-primary-dark)}.contact-dock__appointment:focus-visible,.contact-dock__appointment:hover{border-color:var(--color-accent-light);background:var(--color-accent-light);color:var(--color-primary-dark)}.contact-dock .contact-dock__mobile{position:relative;right:auto;bottom:auto;left:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:calc(var(--contact-dock-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid var(--color-border);background:var(--color-text-inverse);color:var(--color-text);box-shadow:0 -4px 18px color-mix(in srgb,var(--color-primary-dark) 7.5%,transparent)}.contact-dock .contact-dock__mobile-item{min-width:0;min-height:56px;padding:6px 2px 5px;border:0;border-right:1px solid var(--color-bg-alt);background:var(--color-text-inverse);color:var(--color-text-secondary);font-size:11px;line-height:1.35;touch-action:manipulation;transition:color .16s,background-color .16s}.contact-dock .contact-dock__mobile-item:last-child{border-right:0}.contact-dock .contact-dock__mobile-item:focus-visible,.contact-dock .contact-dock__mobile-item:hover,.contact-dock .contact-dock__mobile-item[aria-expanded=true]{background:var(--color-surface-alt);color:var(--color-primary)}.contact-dock .contact-dock__mobile-item .mobile-bar__icon{color:currentColor}.contact-dock .contact-dock__mobile-cta,.contact-dock .contact-dock__mobile-cta:focus-visible,.contact-dock .contact-dock__mobile-cta:hover{background:var(--color-primary);color:var(--color-text-inverse)}.contact-dock__panel{position:absolute;right:12px;bottom:calc(100% + 10px);left:12px;max-height:calc(100vh - 104px);padding:24px 20px 20px;overflow-y:auto;border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:12px;background:var(--color-text-inverse);box-shadow:0 20px 55px color-mix(in srgb,var(--color-primary-dark) 20%,transparent);color:var(--color-text);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px) scale(.99);transform-origin:bottom center;transition:opacity .18s,transform .18s,visibility 0s linear .18s;overscroll-behavior:contain}.contact-dock.is-panel-open .contact-dock__panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition-delay:0s}.contact-dock__close{position:absolute;top:8px;right:9px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:0 0;color:var(--color-text-secondary);font-size:24px;line-height:1}.contact-dock__close:focus-visible,.contact-dock__close:hover{background:var(--color-surface-alt);color:var(--color-primary)}.contact-dock__kicker{margin:0 0 3px;color:var(--color-accent);font-size:10px;font-weight:700;letter-spacing:.18em;line-height:1.5}.contact-dock__title{margin:0 36px 8px 0;font-size:21px;line-height:1.45}.contact-dock__desc{margin:0 0 18px;color:var(--color-text-secondary);font-size:13px;line-height:1.75}.contact-dock__list{margin:0;padding:0;list-style:none;border-top:1px solid var(--color-border)}.contact-dock__list-item{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--color-border);font-size:13px;line-height:1.65}.contact-dock__list-label{color:var(--color-text-secondary)}.contact-dock__list-phone,.contact-dock__list-value{min-width:0;color:var(--color-text);overflow-wrap:anywhere}.contact-dock__list-phone{color:var(--color-primary);font-size:17px;font-weight:700}.contact-dock__panel-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.contact-dock__panel-button{display:inline-flex;flex:1 1 100px;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-text-inverse);color:var(--color-primary);font-size:14px;text-align:center;transition:background-color .16s,border-color .16s,color .16s}.contact-dock__panel-button:focus-visible,.contact-dock__panel-button:hover{border-color:var(--color-primary);background:var(--color-surface-alt)}.contact-dock__panel-button--primary{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-text-inverse)}.contact-dock__panel-button--primary:focus-visible,.contact-dock__panel-button--primary:hover{background:var(--color-primary-light);color:var(--color-text-inverse)}.back-to-top{bottom:calc(var(--contact-dock-height) + env(safe-area-inset-bottom,0px) + 16px)}#message-form{scroll-margin-bottom:calc(var(--contact-dock-height) + 28px)}.article-detail-section{padding-top:40px;padding-bottom:44px}.article-detail{max-width:1120px}.article-detail__head{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--color-border)}.article-detail__title{margin-bottom:14px;font-size:24px;line-height:1.5;overflow-wrap:anywhere}.article-detail__meta{gap:7px 20px;margin-bottom:16px;font-size:13px;line-height:1.65}.article-detail__summary{margin:0;padding:14px 16px;border-left-width:3px;border-radius:0 7px 7px 0;font-size:14px;line-height:1.9}.article-detail__body{margin-bottom:32px;color:var(--color-text);font-size:16px;line-height:1.95;overflow-wrap:break-word}.article-detail__body p{margin:0 0 20px}.article-detail__body p:last-child{margin-bottom:0}.article-detail__body h2{margin:32px 0 15px;font-size:21px;line-height:1.55}.article-detail__body h3{margin:30px 0 14px;font-size:19px;line-height:1.55}.article-detail__body h4{margin:26px 0 12px;font-size:17px;line-height:1.55}.article-detail__body h2:first-child,.article-detail__body h3:first-child,.article-detail__body h4:first-child{margin-top:0}.article-detail__body ol,.article-detail__body ul{margin:0 0 22px;padding-left:1.55em}.article-detail__body li+li{margin-top:7px}.article-detail__body a{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-accent) 60%,transparent);text-underline-offset:3px}.article-detail__body img{height:auto;margin:24px auto;border-radius:8px}.article-detail__body blockquote{margin:26px 0;padding:16px 18px;border-left-width:3px;border-radius:0 8px 8px 0;background:var(--color-text-inverse);line-height:1.85}.article-detail__body table{display:block;max-width:100%;margin:24px 0;overflow-x:auto;font-size:14px;-webkit-overflow-scrolling:touch}.article-detail__body td,.article-detail__body th{min-width:110px;padding:11px 13px;border:1px solid var(--color-border)}.article-detail .author-card{margin-top:32px;padding:18px;border-color:var(--color-border);box-shadow:0 7px 24px color-mix(in srgb,var(--color-primary-dark) 5.5%,transparent)}.article-detail .author-card__avatar{width:76px;height:88px;object-position:center 18%}.article-detail .author-card__name{font-size:20px}.article-detail .author-card__tagline{line-height:1.65}.article-detail .author-card__meta{line-height:1.65}.article-detail .author-card__button{grid-column:1/-1;justify-self:stretch;width:100%}.article-contact{margin:28px 0;padding:24px 20px;border:1px solid color-mix(in srgb,var(--color-accent-light) 16%,transparent);border-radius:10px;background:linear-gradient(135deg,var(--color-primary-dark) 0,var(--color-primary) 100%);box-shadow:0 12px 30px color-mix(in srgb,var(--color-primary-dark) 12%,transparent);color:var(--color-text-inverse)}.article-contact__title{margin:0 0 15px;color:var(--color-accent-light);font-size:20px;line-height:1.5}.article-contact__line{display:flex;align-items:flex-start;gap:8px;margin:0 0 9px;color:color-mix(in srgb,var(--color-text-inverse) 80%,transparent);font-size:14px;line-height:1.75;overflow-wrap:anywhere}.article-contact__line--phone{align-items:center;color:var(--color-text-inverse)}.article-contact__icon{flex:0 0 auto;margin-top:3px;color:var(--color-accent-light)}.article-contact__line--phone .article-contact__icon{margin-top:0}.article-contact__phone{color:var(--color-text-inverse);font-size:19px;font-weight:700;letter-spacing:.025em}.article-contact__phone:focus-visible,.article-contact__phone:hover{color:var(--color-accent-light)}.article-contact__message{display:inline-flex;align-items:center;gap:7px;min-height:40px;margin-top:5px;border-bottom:1px solid color-mix(in srgb,var(--color-accent-light) 65%,transparent);color:var(--color-text-inverse);font-size:14px;font-weight:500;line-height:1.5}.article-contact__message span{transition:transform .16s}.article-contact__message:focus-visible,.article-contact__message:hover{color:var(--color-accent-light)}.article-contact__message:focus-visible span,.article-contact__message:hover span{transform:translateX(3px)}.article-detail__related{margin-top:36px;padding-top:28px;border-top:1px solid var(--color-border)}.article-detail__related .section__title{margin-bottom:22px;font-size:22px}.article-detail__back{margin-top:28px}.article-detail__back .button{width:100%}@media (min-width:768px){.site-body{--contact-dock-height:69px}.section__head{margin-bottom:36px}.contact-dock__desktop{display:block;border-top:1px solid color-mix(in srgb,var(--color-accent-light) 20%,transparent);background:var(--color-primary-dark);box-shadow:0 -4px 18px color-mix(in srgb,var(--color-primary-dark) 16%,transparent);color:var(--color-text-inverse)}.contact-dock .contact-dock__mobile{display:none}.contact-dock__panel{right:max(24px,calc((100vw - 1280px)/ 2 + 32px));bottom:calc(100% + 12px);left:auto;width:390px;max-height:calc(100vh - 112px);padding:26px;transform-origin:bottom right}.back-to-top{bottom:calc(var(--contact-dock-height) + 20px)}.article-detail-section{padding-top:56px;padding-bottom:64px}.article-detail__head{margin-bottom:34px;padding-bottom:28px}.article-detail__title{margin-bottom:16px;font-size:28px;line-height:1.48}.article-detail__summary{padding:16px 18px;font-size:15px}.article-detail__body{margin-bottom:40px;font-size:17px;line-height:1.95}.article-detail__body p{margin-bottom:22px}.article-detail__body h2{margin-top:38px;font-size:23px}.article-detail__body h3{font-size:20px}.article-detail .author-card{margin-top:44px;padding:22px 24px}.article-detail .author-card__avatar{width:96px;height:96px}.article-detail .author-card__name{font-size:22px}.article-detail .author-card__button{grid-column:auto;justify-self:end;width:auto}.article-contact{margin:32px 0;padding:26px 28px}.article-contact__title{font-size:22px}.article-contact__phone{font-size:20px}.article-detail__related{margin-top:44px;padding-top:32px}.article-detail__back{margin-top:32px}.article-detail__back .button{width:auto}}@media (min-width:768px) and (max-width:999px){.contact-dock__inner{gap:16px;padding-right:24px;padding-left:24px}.contact-dock__text span{max-width:330px}.contact-dock__actions{gap:8px}.contact-dock__appointment,.contact-dock__trigger{padding-right:13px;padding-left:13px}}@media (prefers-reduced-motion:reduce){.article-contact__message span,.contact-dock__appointment,.contact-dock__chevron,.contact-dock__mobile-item,.contact-dock__panel,.contact-dock__trigger{transition:none}}
