/* Page-specific layout. Shared design rules live in theme.css. */
body{padding-bottom:40px}

.skip-link{position:fixed;top:-100px;background:var(--gymio-background);padding:10px;z-index:100}
.skip-link:focus{top:0}
.gymio-ui .hero-link{position:absolute;right:0;bottom:15%;border-radius:40px 0 0 40px;padding:15px 25px;background:var(--gymio-dark);color:var(--gymio-on-dark)}
.featured{padding-block:40px}
.product-tabs{display:flex;gap:25px;margin-bottom:30px;border-bottom:1px solid var(--gymio-border);overflow-x:auto}
.product-tabs button{border:0;background:none;padding:14px 5px;white-space:nowrap;font-size:20px}
.product-tabs [aria-selected=true]{color:var(--gymio-primary-hover);border-bottom:3px solid var(--gymio-primary)}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.product-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:0 6px 16px;text-align:center}
.featured .product-card{border-radius:0;isolation:isolate}
.featured .product-card img{transition:transform .2s ease}
.featured .product-card:focus-within img{transform:scale(1.025)}
@media(hover:hover){.featured .product-card:hover img{transform:scale(1.025)}}
@media(prefers-reduced-motion:reduce){.featured .product-card img,.gymio-ui .featured .product-card>.g-button{transition:none}.featured .product-card:is(:hover,:focus-within) img{transform:none}}
.product-card img{width:100%;aspect-ratio:1;object-fit:contain}
.product-card h2{font-size:30px;line-height:1.1;font-weight:400;margin:10px 0 0}
.product-badge{position:absolute;z-index:1;top:12px;left:12px;background:var(--product-badge-color,var(--gymio-primary));color:var(--gymio-on-dark);border-radius:20px;padding:5px 12px;font-size:13px}
.product-price{margin:0}
.product-price del{color:#999;margin-right:8px}
.product-price strong{color:var(--gymio-primary);font-size:22px}
.product-card small{font-size:12px;color:var(--gymio-muted)}
.gymio-ui .hero-link:hover{background:var(--gymio-primary);color:var(--gymio-on-dark)}
.product-card>.g-button{margin-top:auto}

.fitness{padding-block:40px;background:radial-gradient(ellipse farthest-corner,#4c4c4c00,#fff),url('/assets/original/09304116e5b1d29a7a31d0fd.jpg') center/cover;color:#0f0f0f;text-align:right}
.fitness h1{max-width:800px;margin:0 0 25px auto}
.fitness p{max-width:800px;margin:0 0 25px auto}
.journal{padding-block:45px}
.contact{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;padding-block:65px 80px}
.contact-intro>.g-link{display:inline-block;font-size:22px}.contact-intro>.g-muted{margin:28px 0 4px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start}
.contact-fields label{display:block;min-width:0}.contact-fields label>span{display:block;margin-bottom:8px;font-size:14px;font-weight:600}
.contact-fields .contact-message,.contact-fields p{grid-column:1/-1}
.contact-fields input,.contact-fields textarea{display:block;width:100%;border:0;border-radius:12px;padding:15px 18px;background:var(--gymio-surface);color:var(--gymio-text);box-shadow:none}
.contact-fields textarea{resize:vertical;min-height:140px}
.gymio-ui .contact-fields :is(input,textarea):focus{outline:none;border:0;box-shadow:none;background:var(--gymio-field-active)}
.contact-fields label:focus-within>span{color:var(--gymio-primary-hover)}
.contact-fields p{font-size:13px;margin:0}.contact-fields .g-button{justify-self:start}.contact-fields #contact-status:empty{display:none}
.contact-actions{grid-column:1/-1;display:flex;align-items:center;gap:24px}
.contact-consent{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;font-size:12px;line-height:1.5}
.contact-consent label{display:inline;cursor:pointer}
.contact-fields .contact-consent input{flex:0 0 16px;width:16px;height:16px;padding:0;margin:2px 0 0;accent-color:var(--gymio-primary)}
.contact-actions .g-button{flex-shrink:0;margin-left:auto;white-space:nowrap}
@media(max-width:400px){.contact-actions{gap:12px}.contact-actions .g-button{padding:10px 15px}}
@media(forced-colors:active){.gymio-ui .contact-fields :is(input,textarea):focus{outline:2px solid Highlight}}
.preview-status{position:fixed;bottom:0;width:100%;text-align:center;background:#303030;color:var(--gymio-on-dark);font-size:12px;padding:10px;z-index:50}

@media(max-width:1000px){
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){
.gymio-ui .hero-link{padding:6px 12px;font-size:13px}
.featured{padding-block:25px}
.product-tabs{gap:15px}
.product-tabs button{font-size:17px}
.product-grid{grid-template-columns:1fr}
.fitness{text-align:left}
.contact{grid-template-columns:1fr;gap:30px;padding-block:35px 55px}.contact-fields{grid-template-columns:1fr}.contact-intro>.g-link{font-size:20px}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}
}
