/* Editorial rhythm and interaction layer. Motion never hides source content. */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-ui:cubic-bezier(.23,1,.32,1)}
.site-header,.search-panel,.mobile-menu{background:#052849}
.shop-category-nav{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:0;margin-bottom:34px;border:0}
.shop-category-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:500;line-height:1.4;text-decoration:none;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,transform 180ms var(--ease-ui)}
.shop-category-nav a[aria-current=page]{background:var(--navy);border-color:var(--navy);color:#fff}
@media(hover:hover) and (pointer:fine){.shop-category-nav a:hover{border-color:#22b9ca;transform:translateY(-1px)}.shop-category-nav a:not([aria-current=page]):hover{background:var(--soft)}}
@media(max-width:767px){.shop-category-nav{gap:8px;margin-bottom:26px}.shop-category-nav a{padding:10px 15px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.shop-category-nav a{transition:none!important}.shop-category-nav a:hover{transform:none!important}}
.gelcoat .category-photo img{object-fit:contain;object-position:center;transform:none;background:transparent;padding:10px}
.home .woocommerce .products.columns-2{max-width:940px;margin-inline:auto}
.woocommerce ul.products li.product img{background:transparent}
.home .woocommerce ul.products li.product img{max-height:430px;object-fit:contain;background:transparent}
.home .woocommerce ul.products li.product .woocommerce-loop-product__title{max-width:380px;line-height:1.35}
@media(hover:hover) and (pointer:fine){.category-card.gelcoat:hover .category-photo img{transform:scale(1.035)}}
/* Prepared only below the viewport. A revealed block is never hidden again. */
.sh-reveal{opacity:0;transform:translateY(24px);transition:opacity 1200ms cubic-bezier(.25,.46,.45,.94) var(--reveal-delay,0ms),transform 1400ms cubic-bezier(.25,.46,.45,.94) var(--reveal-delay,0ms)}
.sh-reveal.sh-revealed{opacity:1;transform:none}
.sh-reveal.sh-reveal-instant{opacity:1;transform:none;transition:none!important}
@media(prefers-reduced-motion:reduce){.sh-reveal{opacity:1!important;transform:none!important;transition:none!important}}
@media print{.sh-reveal{opacity:1!important;transform:none!important;transition:none!important}}
.hero h1,.page-hero h1,.section-heading h2,.restore-copy h2,.about-strip h2,.help-band h2{text-wrap:balance}
.hero-description,.section-heading p,.category-copy p,.restore-copy p,.about-strip p,.help-band p,.lead{text-wrap:pretty}
.hero-copy{max-width:570px}.hero h1{max-width:550px}.hero-description{max-width:430px}
.section-heading{max-width:750px}.section-heading h2{max-width:680px}.section-heading p{max-width:610px}
.benefits-grid{align-items:start}.benefits-grid>div{align-items:center;min-width:0}.benefits p{min-width:0}.benefits strong{line-height:1.35;letter-spacing:-.01em}
.category-copy{padding-right:27px}.category-copy h3{min-height:2.35em;max-width:230px;line-height:1.17;letter-spacing:-.025em;position:relative}.category-copy p{max-width:245px;line-height:1.65;margin-top:11px}
.category-photo{border-radius:4px}.category-photo img{transition:transform 600ms var(--ease-out)}
.category-copy h3:after{content:"";position:absolute;left:0;bottom:-5px;width:34px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease-ui)}
.round-arrow{transition:transform 220ms var(--ease-ui),color 180ms ease}
.restore-grid{gap:clamp(38px,6vw,85px)}.restore-copy h2{max-width:450px;margin-bottom:24px;line-height:1.04}.restore-copy p:not(.eyebrow){max-width:445px;line-height:1.8}.restore-copy p+p{margin-top:18px}.restore-copy .button{margin-top:28px}.development-note{margin-top:13px;line-height:1.5;font-size:12px}
.about-strip{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,90px)}.about-number{gap:22px;min-width:0}.about-number>strong{display:inline-flex;flex-shrink:0;white-space:nowrap;font-variant-numeric:lining-nums;letter-spacing:-.07em;align-items:flex-start}.about-number strong span{line-height:1.1}.about-number>span{max-width:140px;line-height:1.7}.about-strip h2{max-width:530px;line-height:1.12}.about-strip p{max-width:600px;line-height:1.8}.about-strip .text-link{margin-top:17px}
.page-hero{padding-bottom:48px}.page-hero h1{max-width:900px;line-height:1.08}.page-hero .lead{max-width:760px;line-height:1.7}.story-grid>div{min-width:0}.story-grid h2{line-height:1.15;max-width:520px}.story-grid p{line-height:1.8}.help-band .wrap>div{min-width:0;flex:1}.help-band h2{max-width:700px;line-height:1.18}.help-band p{max-width:650px;line-height:1.7}
.button,.woocommerce a.button,.woocommerce button.button,.wpcf7-submit{transition:transform 180ms var(--ease-ui),background-color 180ms ease,border-color 180ms ease,color 180ms ease}
.button>span{display:inline-block;flex-shrink:0;transition:transform 200ms var(--ease-ui)}
.button:active,.wpcf7-submit:active,.icon-button:active{transform:scale(.97)}
.desktop-nav a{position:relative;transition:color 160ms ease}.desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--turquoise);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease-ui)}.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}
.text-link{position:relative;border-bottom:0;padding-bottom:11px;isolation:isolate}.text-link:before,.text-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;pointer-events:none}.text-link:before{opacity:.25}.text-link:after{transform:scaleX(.2);transform-origin:left;transition:transform 240ms var(--ease-ui)}.text-link>span{transition:transform 200ms var(--ease-ui)}
.footer-grid>div:not(.footer-brand)>a{width:fit-content;max-width:100%;position:relative;transition:color 180ms ease,transform 200ms var(--ease-ui)}.icon-button .icon,.cart-link .icon{transition:transform 200ms var(--ease-ui)}
@media(hover:hover) and (pointer:fine){
 .button:hover,.wpcf7-submit:hover{transform:translateY(-2px)}
 .button:hover>span{transform:translate(3px,-3px)}
 .desktop-nav a:hover:after{transform:scaleX(1)}
 .category-card:hover .category-copy h3:after{transform:scaleX(1)}
 .category-card:hover .round-arrow{transform:translate(3px,-3px);color:#0096ab}
 .category-card:hover .category-photo img{transform:scale(1.045)}
 .category-card.gelcoat:hover .category-photo img{transform:scale(1.035)}
 .text-link:hover:after{transform:scaleX(1)}
 .text-link:hover>span{transform:translate(3px,-3px)}
 .footer-grid>div:not(.footer-brand)>a:hover{transform:translateX(3px)}
 .icon-button:hover .icon,.cart-link:hover .icon{transform:translateY(-2px)}
}
.category-card:focus-visible .category-copy h3:after,.text-link:focus-visible:after,.desktop-nav a:focus-visible:after{transform:scaleX(1);transition:none}
@media(max-width:1099px){.category-copy h3{max-width:none;min-height:1.2em}.about-strip{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:45px}.about-number{flex-direction:column;align-items:flex-start;gap:12px}.about-number>span{max-width:210px}.hero h1{max-width:510px}}
@media(max-width:767px){.hero-copy{max-width:390px}.hero h1{max-width:340px;font-size:52px;line-height:1.05}.hero-description{max-width:330px;font-size:16px}.section-heading h2{max-width:360px;font-size:34px;line-height:1.13}.section-heading p{max-width:360px}.benefits strong{font-size:14px}.category-copy{padding-right:20px}.category-copy h3{min-height:2.35em;font-size:20px}.category-copy p{font-size:12px;line-height:1.6}.restore-grid{gap:30px}.restore-copy h2{font-size:44px;max-width:340px;margin-bottom:19px}.restore-copy p:not(.eyebrow){font-size:15px;line-height:1.75}.development-note{font-size:11px}.about-strip{grid-template-columns:1fr;gap:30px}.about-number{flex-direction:row;align-items:center;gap:24px}.about-number>strong{font-size:88px}.about-number strong span{font-size:49px}.about-number>span{max-width:140px;font-size:12px}.about-strip h2{font-size:34px;max-width:370px}.about-strip p{font-size:15px;line-height:1.75}.page-hero{padding-bottom:34px}.page-hero h1{font-size:42px;max-width:560px;line-height:1.1}.page-hero .lead{font-size:17px;line-height:1.65}.help-band h2{font-size:29px;line-height:1.2}.help-band .button{align-self:flex-start}.footer-bottom{gap:12px}.button{gap:22px}}
@media(max-width:390px){.hero h1{font-size:47px;max-width:320px}.hero-description{font-size:15px}.category-copy h3{font-size:18px}.page-hero h1{font-size:38px}.about-number>strong{font-size:80px}.about-strip h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){.button,.button>span,.text-link:after,.text-link>span,.desktop-nav a:after,.category-copy h3:after,.round-arrow,.category-photo img,.footer-grid>div:not(.footer-brand)>a,.icon-button .icon,.cart-link .icon{transition:none!important;animation:none!important}.button:hover,.button:active,.wpcf7-submit:hover,.wpcf7-submit:active,.icon-button:active,.button:hover>span,.text-link:hover>span,.category-card:hover .round-arrow,.footer-grid>div:not(.footer-brand)>a:hover,.icon-button:hover .icon,.cart-link:hover .icon{transform:none!important}.category-card:hover .category-photo img{transform:none}.category-card.gelcoat:hover .category-photo img{transform:scale(1.2)}}
