@import "https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap";:root{--ink:#161513;--ink-soft:#3a3834;--muted:#6b6760;--paper:#f0eee8;--paper-deep:#e4e0d6;--steel:#9a958c;--line:#cdc8bc;--accent:#b4532a;--accent-deep:#8f3f1d;--surface:#faf9f6;--shadow-soft:0 12px 32px #16151314;--content:1120px;--content-narrow:760px;--page-pad:clamp(1.25rem, 5vw, 4rem);--header-offset:5.5rem;--font-display:"Oswald", "Arial Narrow", sans-serif;--font-body:"Source Sans 3", "Segoe UI", sans-serif;color:var(--ink-soft);background:var(--paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.55}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset)}#ajanlat,#kapcsolat,#katalogus{scroll-margin-top:var(--header-offset)}body{background:radial-gradient(ellipse 80% 50% at 10% -10%, #b4532a14, transparent), radial-gradient(ellipse 60% 40% at 100% 0%, #1615130f, transparent), linear-gradient(180deg, #ebe7de 0%, var(--paper) 28%, #e8e4da 100%);background-attachment:fixed;min-width:320px;margin:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3{color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;margin:0;font-weight:600;line-height:1.15}p{margin:0}#root{min-height:100svh}.app-shell{flex-direction:column;min-height:100svh;display:flex}.site-header{z-index:20;padding:.7rem max(var(--page-pad), calc((100% - var(--content)) / 2));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf9f6eb;border-bottom:1px solid #cdc8bcb3;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.brand{align-items:center;transition:opacity .2s;display:inline-flex}.brand:hover{opacity:.8}.brand-logo{width:auto;height:52px}.site-nav{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:1.1rem;font-size:.92rem;font-weight:600;display:flex}.site-nav a{transition:color .2s}.site-nav a:hover{color:var(--accent)}.hero{isolation:isolate;padding:clamp(2.75rem, 7vw, 5.5rem) max(var(--page-pad), calc((100% - var(--content)) / 2));border-bottom:1px solid var(--line);background:linear-gradient(100deg,#f7f5eff0 0%,#f7f5efd1 46%,#f7f5ef59 100%),url(/forgacsolo-szerszamok/md/valtolapkas-forgacsolo-szerszamok-12.jpg) 50%/cover no-repeat;position:relative;overflow:hidden}.hero-inner{z-index:1;max-width:var(--content);animation:.8s both rise-in;position:relative}.hero-row{align-items:center;gap:clamp(1.25rem,4vw,2.5rem);display:flex}.hero-logo{flex-shrink:0;width:min(168px,38vw);height:auto}.hero-copy{gap:.85rem;min-width:0;display:grid}.hero-title{letter-spacing:.03em;text-transform:uppercase;color:var(--ink);max-width:16ch;font-size:clamp(1.55rem,3.6vw,2.55rem);font-weight:600}.hero-lead{max-width:38rem;color:var(--ink-soft);font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.6}.hero-cta{background:var(--ink);color:#f5f2eb;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;border-radius:2px;justify-self:start;align-items:center;margin-top:.35rem;padding:.85rem 1.45rem;font-size:.98rem;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.hero-cta:hover{background:var(--accent);transform:translateY(-1px)}.offer{padding:clamp(2.5rem, 5vw, 3.75rem) max(var(--page-pad), calc((100% - var(--content)) / 2))}.offer-inner,.contact-inner{max-width:var(--content-narrow);gap:1rem;display:grid}.offer-inner h2,.contact-inner h2{text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem;font-size:clamp(1.45rem,3vw,1.85rem)}.offer-lead{color:var(--ink);font-size:1.12rem;font-weight:600}.offer-list{border-top:1px solid var(--line);gap:1rem;margin:.5rem 0 0;padding:1.15rem 0 0;list-style:none;display:grid}.offer-item{border-left:3px solid var(--accent);gap:.25rem;padding-left:1rem;display:grid}.offer-item-title{font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase;color:var(--ink);font-size:1.12rem}.offer-item-details{color:var(--muted);font-size:.98rem;line-height:1.5}.offer-closing{color:var(--ink);margin-top:.5rem;font-size:1.12rem}.offer-inner .hero-cta{margin-top:.35rem}.contact{padding:clamp(2rem, 4vw, 3rem) max(var(--page-pad), calc((100% - var(--content)) / 2));border-block:1px solid var(--line);background:#faf9f6b3}.contact-inner p{font-size:1.05rem}.email-link{color:var(--accent-deep);text-underline-offset:3px;font-weight:700;text-decoration:underline;transition:color .2s}.email-link:hover{color:var(--accent)}.contact-fields{background:var(--surface);border:1px solid var(--line);margin-top:.5rem;padding:1.15rem 1.25rem}.contact-fields-label{color:var(--ink);font-weight:700;margin-bottom:.55rem!important}.contact-fields ul{color:var(--ink-soft);gap:.35rem;margin:0;padding-left:1.2rem;display:grid}.catalog{padding:clamp(2.25rem, 5vw, 3.5rem) max(var(--page-pad), calc((100% - var(--content)) / 2)) clamp(3rem, 7vw, 5rem);flex:1}.catalog-head{flex-direction:column;gap:1.25rem;margin-bottom:1.75rem;display:flex}.catalog-head h2{text-transform:uppercase;letter-spacing:.06em;font-size:clamp(1.6rem,3vw,2rem)}.category-filter{flex-wrap:wrap;gap:.55rem;display:flex}.filter-btn{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.02em;background:#faf9f6b3;border-radius:2px;padding:.55rem .95rem;font-size:.92rem;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .2s}.filter-btn:hover{border-color:var(--steel);transform:translateY(-1px)}.filter-btn.is-active{background:var(--ink);border-color:var(--ink);color:#f5f2eb}.product-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.35rem;display:grid}.product-card{color:inherit;flex-direction:column;gap:.85rem;animation:.55s both rise-in;display:flex}.product-card-image{aspect-ratio:4/3;background:var(--paper-deep);border:1px solid var(--line);overflow:hidden}.product-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .55s}.product-card:hover .product-card-image img{transform:scale(1.05)}.product-card-title{letter-spacing:.03em;text-transform:uppercase;font-size:1.15rem;font-weight:500;transition:color .2s}.product-card:hover .product-card-title{color:var(--accent)}.empty-state{color:var(--muted);padding:2rem 0}.product-page{padding:1.5rem max(var(--page-pad), calc((100% - var(--content)) / 2)) 3.5rem;flex:1}.product-nav{margin-bottom:1.5rem}.text-link{color:var(--muted);letter-spacing:.02em;font-size:.95rem;font-weight:600;transition:color .2s}.text-link:hover{color:var(--accent)}.product-layout{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(1.5rem,4vw,3rem);display:grid}.product-gallery{gap:.85rem;display:grid}.product-stage{position:relative}.product-main-image{aspect-ratio:4/3;border:1px solid var(--line);background:var(--paper-deep);cursor:zoom-in;width:100%;padding:0;display:block;overflow:hidden}.product-main-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.product-main-image:hover img{transform:scale(1.03)}.gallery-nav{z-index:2;color:#f5f2eb;background:#1615139e;border:1px solid #f5f2eb59;border-radius:2px;place-items:center;width:2.5rem;height:2.5rem;font-size:1.6rem;line-height:1;transition:background .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav:hover{background:#161513e0}.gallery-nav-prev{left:.75rem}.gallery-nav-next{right:.75rem}.gallery-counter{z-index:2;color:#f5f2eb;letter-spacing:.04em;background:#1615139e;border-radius:2px;margin:0;padding:.25rem .55rem;font-size:.82rem;font-weight:600;position:absolute;bottom:.75rem;right:.75rem}.product-thumbs{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.65rem;display:grid}.product-thumb{border:1px solid var(--line);background:var(--paper-deep);aspect-ratio:4/3;opacity:.72;padding:0;transition:opacity .2s,border-color .2s;overflow:hidden}.product-thumb img{object-fit:cover;width:100%;height:100%}.product-thumb:hover,.product-thumb.is-active{opacity:1;border-color:var(--ink)}.product-info{gap:1rem;padding-top:.25rem;display:grid}.product-category{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:600}.product-name{text-transform:uppercase;letter-spacing:.04em;font-size:clamp(1.8rem,3.5vw,2.55rem)}.product-description{max-width:38rem;color:var(--ink-soft);font-size:1.05rem}.interest-btn{background:var(--accent);color:#fff;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;border:none;border-radius:2px;justify-self:start;align-items:center;margin-top:.5rem;padding:.85rem 1.6rem;font-size:1rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.interest-btn:hover{background:var(--accent-deep);transform:translateY(-1px)}.product-missing{gap:.85rem;max-width:420px;padding:3rem 0;display:grid}.product-missing h1{text-transform:uppercase;font-size:2rem}.image-modal{z-index:1000;box-sizing:border-box;cursor:zoom-out;background:#161513e6;justify-content:center;align-items:center;padding:3.5rem 4.5rem 1.5rem;animation:.2s both modal-fade;display:flex;position:fixed;inset:0;overflow:hidden}.image-modal-frame{cursor:default;justify-content:center;align-items:center;max-width:min(1100px,100vw - 9rem);max-height:calc(100svh - 5rem);animation:.25s both modal-zoom;display:flex;position:relative}.image-modal-image{object-fit:contain;border:1px solid #f5f2eb2e;width:auto;max-width:min(1100px,100vw - 9rem);height:auto;max-height:calc(100svh - 5rem);display:block}.image-modal-counter{color:#f5f2eb;letter-spacing:.04em;background:#161513b3;border-radius:2px;margin:0;padding:.3rem .65rem;font-size:.85rem;font-weight:600;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.image-modal-nav{z-index:1001;color:#f5f2eb;cursor:pointer;background:#161513b3;border:1px solid #f5f2eb59;border-radius:2px;place-items:center;width:3rem;height:3rem;font-size:1.9rem;line-height:1;transition:background .2s;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.image-modal-nav:hover{background:#161513f2}.image-modal-nav-prev{left:1rem}.image-modal-nav-next{right:1rem}.image-modal-close{z-index:1001;color:#f5f2eb;cursor:pointer;background:#161513b3;border:1px solid #f5f2eb59;border-radius:2px;width:2.75rem;height:2.75rem;font-size:1.75rem;line-height:1;transition:background .2s;position:fixed;top:1rem;right:1rem}.image-modal-close:hover{background:#161513f2}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-zoom{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.site-footer{padding:1.4rem max(var(--page-pad), calc((100% - var(--content)) / 2));border-top:1px solid var(--line);color:var(--muted);margin-top:auto;font-size:.9rem}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=860px){.product-layout{grid-template-columns:1fr}.image-modal{padding:3.5rem 3.25rem 1.25rem}.image-modal-frame,.image-modal-image{max-width:calc(100vw - 6.5rem)}.image-modal-nav{width:2.5rem;height:2.5rem;font-size:1.6rem}.image-modal-nav-prev{left:.5rem}.image-modal-nav-next{right:.5rem}}@media (width<=560px){:root{--header-offset:7.5rem}.site-header{flex-direction:column;align-items:flex-start;gap:.65rem}.brand-logo{height:44px}.site-nav{gap:.85rem;font-size:.82rem}.hero-row{flex-direction:column;align-items:flex-start}.hero-title{max-width:none}.product-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
