/* HODNETT / PERSONAL CONNECTION — native-scroll scene pair and smoked-glass header. */
body .site-header,body .site-header.is-scrolled{height:88px;padding-inline:clamp(24px,3.5vw,64px);background:rgba(10,11,13,.72);color:#fff;border-bottom:1px solid #ffffff20;box-shadow:0 4px 28px #00000012;-webkit-backdrop-filter:blur(22px) saturate(.85);backdrop-filter:blur(22px) saturate(.85);transition:background .45s ease,border-color .45s ease,box-shadow .45s ease}
body.home .site-header:not(.is-scrolled){background:transparent;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.site-header .brand .logo-dark{display:none!important}.site-header .brand .logo-light{display:block!important;width:132px;height:70px;object-fit:contain}
body .site-nav{display:flex;align-items:center;gap:clamp(20px,2.15vw,38px);font-size:13px;letter-spacing:.015em;white-space:nowrap}
.header-phone{font-size:13px;letter-spacing:.035em;white-space:nowrap;padding:14px 0}.header-phone:hover{color:#e2c894}.header-actions{gap:20px}
@media(min-width:1024px){.site-header .menu-trigger{display:none}}
.page-main{padding-top:88px}.footer-col .text-button{align-self:flex-start;text-align:left;color:inherit;font-size:12px;padding-block:0}.footer-col [data-saved-count]{font-size:10px;color:#888;margin-left:8px}
/* The first scene remains pinned inside this document section. The second flows over it. */
.connection-story{position:relative;isolation:isolate;background:#08090b;z-index:1;--connection-scale:1}
.connection-scene{height:100svh;min-height:680px;position:relative;color:#fff}
.connection-sharon{position:sticky;top:0;z-index:1}
.connection-team{margin-top:55svh;z-index:2;background:#08090b;box-shadow:0 -20px 65px #00000024;height:195svh;min-height:calc(680px + 95svh)}
/* The second chapter stays in place for another 95svh of native scrolling. */
.connection-team .connection-viewport{position:sticky;top:0;height:100svh;min-height:680px}
.connection-viewport{position:relative;isolation:isolate;overflow:hidden;height:100%;min-height:inherit;display:flex;align-items:center;justify-content:flex-end;padding-block:112px 72px;background:#13171c}
.connection-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:1;transform:scale(1);transition:opacity 1.05s ease}
.connection-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.connection-photo--sharon{transform:scale(var(--connection-scale));transform-origin:25% 0}
.connection-photo--team{transform:scale(var(--team-scale,1));transform-origin:28% 50%;transition:opacity 1.05s ease;will-change:transform}
.connection-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 0%,#05060808 36%,#05060870 55%,#050608c9 100%)}
.connection-team .connection-shade{background:linear-gradient(90deg,#0000000d 0%,#00000033 35%,#000000aa 65%,#000000d9 100%)}
.connection-copy{position:relative;width:min(44vw,550px);margin-right:var(--gutter);margin-left:auto;color:#fff}
.connection-copy .eyebrow{font-size:11px;font-weight:500;letter-spacing:.19em;color:#e2c894;margin-bottom:27px}
.connection-copy h2{font:400 clamp(40px,4.3vw,66px)/1.09 var(--sans);letter-spacing:-.05em;text-wrap:balance;margin:0 0 30px;max-width:550px;color:#fff}
.connection-copy p{font-size:16px;line-height:1.85;max-width:475px;color:#ffffffe0;margin-bottom:30px}
.connection-copy .line-link{color:#fff;border-color:#ffffff70;font-size:13px;min-height:44px;gap:36px}
.connection-copy .line-link:hover{color:#e2c894}
.connection-reveal{opacity:1;transform:none}
.connection-story.is-enhanced .connection-photo{opacity:0}
.connection-story.is-enhanced .is-entered .connection-photo{opacity:1}
.connection-story.is-enhanced .connection-reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.connection-story.is-enhanced .is-copy-ready .connection-reveal{opacity:1;transform:none}
.connection-copy>.connection-reveal:nth-child(1){transition-delay:.08s}
.connection-copy>.connection-reveal:nth-child(2){transition-delay:.24s}
.connection-copy>.connection-reveal:nth-child(3){transition-delay:.42s}
.connection-copy>.connection-reveal:nth-child(4){transition-delay:.60s}
.connection-story.is-reduced .connection-sharon{position:relative}
.connection-story.is-reduced .connection-team{margin-top:0;height:100svh;min-height:680px}
.connection-story.is-reduced .connection-team .connection-viewport{position:relative;height:100%;min-height:inherit}
.connection-story.is-reduced .connection-photo,.connection-story.is-reduced .connection-reveal{opacity:1!important;transform:none!important;transition:none!important}
.connection-story+.collection-section{position:relative;z-index:2;background:#fff;padding-top:85px}
@media(min-width:1024px) and (max-width:1200px){body .site-nav{gap:20px;font-size:12px}.header-phone{font-size:12px}.site-header .brand .logo-light{width:120px}.header-actions{gap:10px}body .site-header{gap:20px}}
@media(max-width:1023px){body .site-nav{display:none}.site-header .menu-trigger{display:flex}.site-header .menu-label{display:none}body .site-header,body .site-header.is-scrolled{height:76px;padding-inline:24px}.site-header .brand .logo-light{width:112px;height:62px}.header-phone{font-size:12px}.header-actions{gap:18px}.page-main{padding-top:76px}}
@media(max-width:767px){
 .connection-scene{height:100svh;min-height:780px}
 .connection-viewport{padding:0 24px 48px;align-items:flex-end}
 .connection-photo>img{object-position:45% 0}
 .connection-photo--sharon{transform-origin:35% 20%}
 .connection-shade{background:linear-gradient(0deg,#050608f5 0%,#050608d6 30%,#05060842 55%,transparent 73%)}
 .connection-team .connection-shade{background:linear-gradient(0deg,#050608f5 0%,#050608bf 35%,#05060833 75%)}
 .connection-copy{width:100%;max-width:460px;margin:0 0 0 auto}
 .connection-copy .eyebrow{font-size:9px;margin-bottom:20px;letter-spacing:.17em}
 .connection-copy h2{font-size:clamp(33px,8.5vw,45px);line-height:1.1;margin-bottom:22px}
 .connection-copy p{font-size:14px;line-height:1.8;margin-bottom:23px;max-width:380px}
 .connection-copy .line-link{font-size:12px;min-height:42px}
 .connection-team{margin-top:45svh;min-height:calc(780px + 95svh)}
 .connection-team .connection-viewport{min-height:780px}
 .connection-story+.collection-section{padding-top:60px}
 .header-actions{gap:12px}.header-phone{font-size:11px;letter-spacing:.015em}.site-header .menu-trigger{padding-left:4px}
}
@media(max-width:360px){body .site-header,body .site-header.is-scrolled{padding-inline:16px}.site-header .brand .logo-light{width:100px}.header-actions{gap:8px}.header-phone{font-size:10px}.connection-copy h2{font-size:31px}.connection-copy p{font-size:13px;line-height:1.75}.connection-viewport{padding-inline:22px}}
/* Short viewports and reduced motion keep every paragraph and link in a normal flow. */
@media(max-height:700px){.connection-sharon{position:relative}.connection-team{margin-top:0;height:100svh;min-height:680px}.connection-team .connection-viewport{position:relative;height:100%;min-height:inherit}}
@media(max-width:767px) and (max-height:740px){.connection-scene{height:780px}.connection-sharon{position:relative}.connection-team{margin-top:0;height:780px;min-height:780px}.connection-team .connection-viewport{position:relative;height:100%;min-height:780px}}
@media(prefers-reduced-motion:reduce){.connection-sharon{position:relative}.connection-team{margin-top:0;height:100svh;min-height:680px}.connection-team .connection-viewport{position:relative;height:100%;min-height:inherit}.connection-photo,.connection-reveal{opacity:1!important;transform:none!important;transition:none!important}}
.connection-story{scroll-margin-top:-100px}
.connection-story.is-enhanced .connection-team .connection-photo{opacity:1}

.connection-scene{scroll-margin-top:-100px}

/* Direction-aware global header: visible at top and when scrolling upwards. */
body .site-header,body .site-header.is-scrolled{
 transform:translate3d(0,0,0);
 transition:transform .33s cubic-bezier(.25,.75,.25,1),background .45s ease,border-color .45s ease,box-shadow .45s ease;
}
body .site-header.is-hidden,body .site-header.is-hidden.is-scrolled{
 transform:translate3d(0,calc(-100% - 3px),0);
 pointer-events:none;
}
@media(prefers-reduced-motion:reduce){
 body .site-header,body .site-header.is-scrolled{transition:none}
}

/* CATALOG / SCROLL-AWARE FILTERS
   Header returns on upward scroll; the filter bar always stays fully visible.
   Header z-index is 20, so filters remain below it when both are shown. */
@media(min-width:768px){
 body .page-main .catalog-filters{
  position:sticky;
  top:var(--catalog-header-height,88px);
  z-index:19;
  background:rgba(255,255,255,.98);
  border-top:1px solid rgba(0,0,0,.07);
  box-shadow:0 8px 18px rgba(0,0,0,.045);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  transition:top .33s cubic-bezier(.25,.75,.25,1);
 }
 body.has-hidden-header .page-main .catalog-filters{top:0}
 .page-main .catalog-grid{scroll-margin-top:calc(var(--catalog-header-height,88px) + 115px)}
 body.has-hidden-header .page-main .catalog-grid{scroll-margin-top:125px}
}
@media(max-width:767px){
 body .page-main .catalog-filters{position:static;top:auto;z-index:auto}
}
@media(prefers-reduced-motion:reduce){
 body .page-main .catalog-filters{transition:none}
}
