/* Fresh, editable TORUNNO theme. Use Admin > Appearance for global controls. */
:root{--body:var(--body-font,'DM Sans',Arial,sans-serif);--display:var(--display-font,'Space Grotesk',Arial,sans-serif);--card-radius:10px}
body{font-family:var(--body);color:var(--ink);background:var(--paper)}
.announcement{background:var(--announcement-bg,#dfff45);color:var(--announcement-ink,#171914);border:0;text-transform:none;letter-spacing:.1px}
.wordmark-image{display:block;max-width:168px;max-height:45px;width:auto;height:auto;object-fit:contain}
.btn{border-radius:var(--card-radius);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.btn:not(.btn-dark){color:var(--button-ink,#171914)}
.btn-dark{color:var(--white)}
.product-image-wrap,.detail-image,.summary-card,.form-panel,.contact-note,.simple-category-card,.builder-category-card,.builder-image-text-image,.builder-hero-image{border-radius:var(--card-radius)}
.product-card{animation:card-in .55s both}
.product-card:nth-child(2){animation-delay:.04s}.product-card:nth-child(3){animation-delay:.08s}.product-card:nth-child(4){animation-delay:.12s}
.product-card:hover .product-image-wrap img{transform:scale(1.04)}

.builder-section{position:relative;padding:clamp(42px,6vw,82px) 0;background:var(--section-bg,#fff);color:var(--section-ink,#171914);overflow:hidden}
.builder-container{width:min(var(--max,1200px),calc(100% - 40px));margin:0 auto}
.builder-eyebrow{margin:0 0 12px;color:color-mix(in srgb,var(--section-ink,#171914) 64%,transparent);font-size:11px;line-height:1.5;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}
.builder-title{max-width:800px;margin:0;font-family:var(--display);font-size:clamp(30px,4.3vw,49px);font-weight:600;line-height:1.08;letter-spacing:-1.8px;color:var(--section-ink,#171914)}
.builder-copy{max-width:680px;margin:15px 0 0;color:color-mix(in srgb,var(--section-ink,#171914) 76%,transparent);font-size:15px;line-height:1.85;white-space:normal}
.builder-copy + .btn,.builder-image-text-copy .btn,.builder-banner .btn{margin-top:22px}
.builder-hero{padding:0}
.builder-hero-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(25px,5vw,68px);padding-top:clamp(38px,6vw,78px);padding-bottom:clamp(38px,6vw,78px)}
.builder-copy-block{max-width:560px;padding:10px 0}
.builder-hero-title{max-width:680px;margin:0;font-family:var(--display);font-size:clamp(43px,6.6vw,78px);font-weight:600;line-height:.98;letter-spacing:-3.8px;color:var(--section-ink,#171914)}
.builder-hero-copy{max-width:500px;font-size:clamp(14px,1.5vw,16px)}
.builder-buttons{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:25px}
.builder-buttons .btn{margin:0}
.builder-cod-note{font-size:11px;color:color-mix(in srgb,var(--section-ink,#171914) 65%,transparent)}
.builder-hero-image{height:clamp(300px,41vw,510px);overflow:hidden;background:var(--paper-2);position:relative}
.builder-hero-image:after{content:'';position:absolute;inset:0;border:1px solid #1719140c;border-radius:inherit;pointer-events:none}
.builder-hero-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.3,1)}
.builder-hero-image:hover img{transform:scale(1.03)}
.builder-hero-layout.is-centered{grid-template-columns:1fr;text-align:center;min-height:340px;max-width:1000px}
.builder-hero-layout.is-centered .builder-copy-block{max-width:850px;margin:0 auto}
.builder-hero-layout.is-centered .builder-hero-title,.builder-hero-layout.is-centered .builder-hero-copy{margin-left:auto;margin-right:auto}
.builder-hero-layout.is-centered .builder-buttons{justify-content:center}
.builder-hero-layout.image-left .builder-copy-block{order:2}.builder-hero-layout.image-left .builder-hero-image{order:1}
.builder-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:27px}
.builder-section-heading .builder-copy{margin-top:8px}
.builder-heading-link{flex:0 0 auto;padding-bottom:5px;font-size:12px;font-weight:700;color:var(--section-ink);white-space:nowrap}
.builder-heading-link:hover{text-decoration:underline;text-underline-offset:4px}
.builder-products-section{padding-top:clamp(45px,6vw,75px);padding-bottom:clamp(45px,6vw,75px)}
.builder-product-grid{display:grid;grid-template-columns:repeat(var(--builder-cols,4),minmax(0,1fr));gap:clamp(13px,2vw,24px)}
.builder-product-grid .product-image-wrap{overflow:hidden;aspect-ratio:4/5}
.builder-product-grid .product-meta{gap:12px}
.builder-product-grid .product-name a{color:var(--section-ink,#171914)}
.builder-product-grid .product-price{white-space:nowrap;color:var(--section-ink,#171914)}
.builder-empty-products{display:flex;flex-direction:column;gap:4px;padding:28px;border:1px dashed color-mix(in srgb,var(--section-ink) 24%,transparent);border-radius:var(--card-radius);font-size:12px}
.builder-empty-products span{opacity:.7}
.builder-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:28px}
.builder-category-card{position:relative;display:flex;min-width:0;min-height:220px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:10px;padding:23px;border:1px solid color-mix(in srgb,var(--section-ink,#171914) 15%,transparent);background:color-mix(in srgb,var(--section-bg,#fff) 80%,var(--section-ink,#171914) 2%);color:var(--section-ink,#171914);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.builder-category-card:hover{transform:translateY(-4px);border-color:var(--section-ink,#171914);background:color-mix(in srgb,var(--section-bg,#fff) 92%,var(--section-ink,#171914) 4%)}
.builder-category-count{position:absolute;top:18px;left:20px;color:color-mix(in srgb,var(--section-ink,#171914) 50%,transparent);font-size:10px;font-weight:800;letter-spacing:1px}
.builder-category-card strong{font-family:var(--display);font-size:clamp(20px,2.2vw,29px);font-weight:600;letter-spacing:-.9px;line-height:1.1;overflow-wrap:anywhere}
.builder-category-copy{font-size:11px;line-height:1.65;color:color-mix(in srgb,var(--section-ink,#171914) 70%,transparent)}
.builder-category-card em{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:6px;font-style:normal;font-size:10px;font-weight:800}
.builder-image-text-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(28px,6vw,78px)}
.builder-image-text-layout.image-right .builder-image-text-image{order:2}.builder-image-text-layout.image-right .builder-image-text-copy{order:1}
.builder-image-text-image{height:clamp(280px,38vw,450px);overflow:hidden;background:var(--paper-2)}
.builder-image-text-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s ease}.builder-image-text-image:hover img{transform:scale(1.035)}
.builder-image-text-copy{max-width:560px}.builder-image-text-copy .builder-title{font-size:clamp(31px,4vw,48px)}
.builder-banner{min-height:280px;display:flex;align-items:center;padding:clamp(45px,8vw,105px) 0}
.builder-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.builder-banner:has(.builder-banner-image):before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0009,#0002)}
.builder-banner:has(.builder-banner-image){--section-ink:#ffffff!important}
.builder-banner-inner{position:relative;z-index:2}.builder-banner-inner .builder-title{font-size:clamp(34px,5vw,62px)}.builder-banner-inner .builder-copy{max-width:560px}
.builder-text-section{text-align:center}.builder-text-inner{max-width:850px}.builder-text-inner .builder-eyebrow,.builder-text-inner .builder-copy{margin-left:auto;margin-right:auto}
.builder-cta{padding:30px 0}.builder-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.builder-cta .builder-title{font-size:clamp(25px,3vw,35px)}.builder-cta .builder-copy{max-width:600px;margin-top:6px}.builder-cta .builder-eyebrow{margin-bottom:6px}.builder-cta .btn{flex:0 0 auto}
.builder-section [data-reveal]{will-change:transform,opacity}
@keyframes card-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:960px){.builder-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-hero-title{font-size:clamp(42px,7vw,65px);letter-spacing:-2.8px}.builder-product-grid{grid-template-columns:repeat(min(var(--builder-cols,4),3),minmax(0,1fr))}}
@media(max-width:700px){.builder-container{width:calc(100% - 32px)}.builder-hero-layout{grid-template-columns:1fr;gap:23px;padding-top:32px;padding-bottom:34px}.builder-hero-layout.is-centered{min-height:280px}.builder-hero-title{font-size:clamp(42px,12vw,58px);letter-spacing:-2.2px}.builder-hero-image{height:310px}.builder-section-heading{align-items:flex-start;flex-direction:column;gap:13px}.builder-title{font-size:clamp(29px,8vw,39px);letter-spacing:-1.2px}.builder-copy{font-size:13px;line-height:1.8}.builder-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 12px}.builder-product-grid .product-meta{align-items:flex-start;flex-direction:column;gap:5px}.builder-product-grid .product-price{padding-top:0}.builder-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.builder-category-card{min-height:175px;padding:16px}.builder-category-count{top:13px;left:14px}.builder-category-card strong{font-size:23px}.builder-category-copy{font-size:10px}.builder-image-text-layout{grid-template-columns:1fr;gap:23px}.builder-image-text-layout.image-right .builder-image-text-image,.builder-image-text-layout.image-right .builder-image-text-copy{order:initial}.builder-image-text-image{height:280px}.builder-banner{min-height:260px}.builder-cta-inner{align-items:flex-start;flex-direction:column;gap:16px}.builder-cta .btn{margin-top:0}.builder-buttons{gap:12px}.builder-copy-block{padding:0}}
@media(max-width:380px){.builder-category-grid{grid-template-columns:1fr}.builder-category-card{min-height:150px}.builder-product-grid .product-meta{gap:4px}.builder-product-grid .product-name{font-size:12px}}
@media(prefers-reduced-motion:reduce){.product-card{animation:none}.builder-hero-image img,.builder-image-text-image img,.builder-category-card{transition:none}}
