/* Home-page navigation stays in place without changing the header's geometry. */
/* Align section boundaries with the bottom of the sticky header at every size. */
html:has(body.home-page){scroll-padding-top:var(--sdw-header-height,90px)}
/* Leave enough page below the last anchor for Contact to reach that same line. */
.home-page #contact{min-height:calc(100svh - var(--sdw-header-height,90px) - var(--sdw-footer-height,0px))}
.home-page .header-band{position:sticky;top:0;z-index:20}
.home-page .header-band:focus-within{z-index:21}
/* The workflow header is lifted 25px inside 36px section padding. Limit the
   landing offset so its upper rule stays beneath the complete sticky header. */
@media(min-width:1061px){.home-page #method{scroll-margin-top:max(-10px,calc((100svh - var(--sdw-header-height,90px) - var(--sdw-workflow-height,calc(100svh - 90px))) / 2))}}
:is(.home-page,.project-detail-page) .back-to-top{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:18;display:flex;align-items:center;gap:12px;min-width:52px;min-height:52px;padding:12px 17px;border:1px solid var(--hero-rule,#bd9b60);border-radius:999px;background:var(--forest);color:var(--on-dark);box-shadow:0 4px 18px #14251d24;font:600 11px/1.2 var(--body);letter-spacing:.045em;text-transform:uppercase;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,background-color .18s ease,box-shadow .18s ease}
:is(.home-page,.project-detail-page) .back-to-top.is-visible{opacity:1;transform:none;pointer-events:auto}
:is(.home-page,.project-detail-page) .back-to-top[hidden]{display:none}
:is(.home-page,.project-detail-page) .back-to-top:hover{background:var(--ink);box-shadow:0 6px 22px #14251d35}
:is(.home-page,.project-detail-page) .back-to-top:focus-visible{outline:3px solid var(--hero-rule,#bd9b60);outline-offset:4px}
:is(.home-page,.project-detail-page) .back-to-top svg{width:19px;height:19px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:560px){:is(.home-page,.project-detail-page) .back-to-top{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));padding:13px;min-width:48px;min-height:48px}:is(.home-page,.project-detail-page) .back-to-top span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(prefers-reduced-motion:reduce){html:has(body.home-page){scroll-behavior:auto}:is(.home-page,.project-detail-page) .back-to-top{transition:none}}
@media(forced-colors:active){:is(.home-page,.project-detail-page) .back-to-top{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}:is(.home-page,.project-detail-page) .back-to-top:focus-visible{outline-color:Highlight}}
