:root{--bg:#080b0d;--bg2:#0d1114;--card:#11161a;--line:#232a2f;--steel:#d9dee1;--muted:#8f989e;--orange:#ff7200;--orange2:#ff3d00;--ice:#bfeaff;--shell:1240px;--radius:22px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f4f6f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}body.menu-open{overflow:hidden}::selection{background:var(--orange);color:#111}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,textarea,select{font:inherit}.shell{width:min(calc(100% - 48px),var(--shell));margin-inline:auto}.noise{position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,96,0,.09),transparent 67%);pointer-events:none;transform:translate(-50%,-50%);z-index:0;will-change:left,top}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px max(24px,calc((100vw - var(--shell))/2));transition:.35s var(--ease);border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(8,11,13,.82);border-color:rgba(255,255,255,.08);backdrop-filter:blur(18px)}.brand{width:190px;display:block}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700;letter-spacing:.03em}.main-nav a{position:relative;color:#c8cdd0;transition:.2s}.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:.25s}.main-nav>a:hover:after{transform:scaleX(1);transform-origin:left}.main-nav a:hover{color:#fff}.nav-cta{border:1px solid #3a4248;padding:11px 18px;border-radius:999px}.nav-cta:hover{border-color:var(--orange)!important}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:27px;height:2px;background:#fff;margin:6px;transition:.25s}.hero{position:relative;min-height:100svh;display:flex;align-items:center;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line)}.weld-scene{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-backdrop{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,7,9,.96) 0%,rgba(5,7,9,.82) 38%,rgba(5,7,9,.18) 75%,rgba(5,7,9,.52) 100%),radial-gradient(circle at 68% 42%,rgba(255,91,0,.11),transparent 27%)}.hero-content{padding-top:110px;padding-bottom:70px}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:.2em;color:#a5adb2}.eyebrow span{color:var(--orange);padding:0 8px}.hero h1{font-size:clamp(64px,9.5vw,142px);line-height:.77;letter-spacing:-.065em;margin:28px 0 34px;max-width:900px;text-transform:uppercase}.hero h1 em,.coverage h2 em,.quote-copy h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1.4px rgba(244,246,247,.6)}.hero-lead{max-width:690px;font-size:clamp(17px,1.5vw,22px);color:#aeb5ba;margin:0 0 32px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:800;font-size:14px;cursor:pointer;transition:.25s var(--ease)}.button-primary{background:linear-gradient(135deg,#ff8400,var(--orange2));color:#080b0d;box-shadow:0 10px 34px rgba(255,86,0,.18)}.button-primary:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(255,86,0,.27)}.button-ghost{border-color:#384046;background:rgba(8,11,13,.35);color:#f6f7f8}.button-ghost:hover{border-color:#7c858b;background:#141a1e}.hero-facts{display:flex;gap:0;margin-top:62px;border-top:1px solid rgba(255,255,255,.14);max-width:760px}.hero-facts div{padding:20px 34px 0 0;margin-right:34px;border-right:1px solid rgba(255,255,255,.12)}.hero-facts div:last-child{border:0}.hero-facts strong{display:block;font-size:15px}.hero-facts span{display:block;color:#788188;font-size:12px;margin-top:2px}.scroll-hint{position:absolute;right:26px;bottom:44px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.25em;color:#778087;display:flex;align-items:center;gap:12px}.scroll-hint span{width:1px;height:55px;background:linear-gradient(var(--orange),transparent)}.marquee{overflow:hidden;border-bottom:1px solid var(--line);background:#0b0f11}.marquee-track{width:max-content;display:flex;align-items:center;gap:34px;padding:15px 0;animation:marquee 30s linear infinite}.marquee span{font-size:12px;font-weight:900;letter-spacing:.18em;color:#7d868c}.marquee i{color:var(--orange);font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:120px 0}.section-head{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;margin-bottom:52px}.section-head h2,.workshop-copy h2,.coverage h2,.quote-copy h2,.contact-band h2{font-size:clamp(42px,5vw,74px);line-height:.95;letter-spacing:-.045em;margin:14px 0 0}.section-head p{margin:0;color:#8c959b;max-width:470px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:300px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden;transition:.35s var(--ease);background:linear-gradient(160deg,rgba(255,255,255,.016),transparent)}.service-card:before{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,var(--orange),transparent);transform:scaleX(0);transform-origin:left;transition:.35s}.service-card:hover{background:#0d1215;transform:translateY(-4px)}.service-card:hover:before{transform:scaleX(1)}.service-no{font-size:10px;color:#5c656b;letter-spacing:.16em}.service-icon{font-family:Georgia,serif;font-size:43px;color:var(--orange);margin:44px 0 30px;text-shadow:0 0 24px rgba(255,102,0,.22)}.service-card h3{font-size:22px;margin:0 0 10px}.service-card p{font-size:14px;color:#879096;margin:0;max-width:330px}.service-card a{display:inline-block;margin-top:24px;color:var(--orange);font-weight:800;font-size:13px}.service-card-accent{background:radial-gradient(circle at 100% 0,rgba(255,105,0,.14),transparent 50%),#0e1316}.section-work{background:#0a0e10;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:285px;gap:12px}.gallery-item{position:relative;border:0;padding:0;background:#111;overflow:hidden;cursor:zoom-in;border-radius:4px;text-align:left}.gallery-wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease);filter:saturate(.8) contrast(1.05)}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.85));transition:.3s}.gallery-item:hover img{transform:scale(1.045);filter:saturate(1)}.gallery-item span{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#a6afb4;font-size:12px}.gallery-item b{display:block;color:#fff;font-size:16px;margin-bottom:1px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:62px}.video-card{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:28px;border-top:1px solid #2a3136;padding-top:18px}.video-frame{aspect-ratio:9/16;background:#000;overflow:hidden;border-radius:12px}.video-frame video{width:100%;height:100%;object-fit:cover}.video-card span{font-size:10px;color:var(--orange);letter-spacing:.16em;font-weight:800}.video-card h3{font-size:25px;line-height:1.1;margin:12px 0}.workshop{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.workshop-photo{position:relative}.workshop-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.72) contrast(1.08)}.workshop-photo:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);pointer-events:none}.photo-stamp{position:absolute;right:-18px;bottom:34px;background:var(--orange);color:#101010;padding:20px 25px;transform:rotate(-3deg);box-shadow:0 15px 50px rgba(0,0,0,.35)}.photo-stamp span{display:block;font-size:10px;font-weight:900;letter-spacing:.24em}.photo-stamp strong{font-size:27px;line-height:1}.workshop-copy>p{color:#969fa5;font-size:17px;max-width:570px;margin:28px 0 40px}.principles{border-top:1px solid var(--line)}.principles>div{display:grid;grid-template-columns:48px 1fr;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}.principles b{color:var(--orange);font-size:11px}.principles span{color:#818a90;font-size:13px}.principles strong{display:block;color:#fff;font-size:15px;margin-bottom:2px}.coverage{padding:95px 0;background:linear-gradient(120deg,#10161a,#070a0c);border-block:1px solid var(--line);overflow:hidden}.coverage-inner{display:grid;grid-template-columns:.28fr .95fr .77fr;align-items:center;gap:40px}.coverage h2{margin:0;font-size:clamp(48px,6vw,86px)}.coverage p{color:#889197;max-width:550px}.radar{width:min(390px,90vw);aspect-ratio:1;position:relative;margin-left:auto;border:1px solid #293137;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 23%,rgba(255,255,255,.04) 24% 24.5%,transparent 25% 48%),linear-gradient(90deg,transparent 49.8%,#20272c 50%,transparent 50.2%),linear-gradient(transparent 49.8%,#20272c 50%,transparent 50.2%)}.radar i{position:absolute;inset:8%;border:1px solid rgba(255,255,255,.07);border-radius:50%}.radar i:nth-child(2){inset:27%}.radar i:nth-child(3){inset:44%}.radar b{position:absolute;width:8px;height:8px;left:49%;top:49%;border-radius:50%;background:var(--orange);box-shadow:0 0 0 8px rgba(255,114,0,.13),0 0 30px var(--orange)}.radar:after{content:"";position:absolute;inset:50% 50% 0 50%;transform-origin:top left;background:conic-gradient(from -14deg,rgba(255,114,0,.26),transparent 18deg);animation:sweep 4.5s linear infinite}.radar span,.radar small{position:absolute;font-size:10px;letter-spacing:.16em;font-weight:800}.radar span{left:52%;top:44%;color:#fff}.radar small{right:8%;bottom:30%;color:#9ba3a8}.radar small:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#afb7bc;margin-right:6px}@keyframes sweep{to{transform:rotate(360deg)}}.quote-section{background:radial-gradient(circle at 20% 40%,rgba(255,94,0,.09),transparent 32%),#080b0d}.quote-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.quote-copy h2{font-size:clamp(52px,6.2vw,88px);margin:15px 0 24px}.quote-copy>p{color:#8e979d;max-width:470px}.direct-phone{display:inline-flex;flex-direction:column;margin-top:32px;padding:18px 22px;border:1px solid #333c42;border-radius:14px}.direct-phone span{font-size:10px;color:#767f85;letter-spacing:.17em}.direct-phone strong{font-size:21px;margin-top:2px}.quote-form{border:1px solid #262e33;background:linear-gradient(160deg,rgba(255,255,255,.025),rgba(255,255,255,.005));padding:32px;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.24)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;margin-bottom:16px}label>span{display:block;font-size:10px;color:#929ba0;letter-spacing:.1em;font-weight:800;text-transform:uppercase;margin:0 0 8px}input,textarea,select{width:100%;background:#0b0f12;border:1px solid #293137;border-radius:10px;color:#f4f6f7;padding:14px 15px;outline:none;transition:.2s}textarea{resize:vertical}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#879096 50%),linear-gradient(135deg,#879096 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat}input:focus,textarea:focus,select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,114,0,.08)}.button-full{width:100%;border:0}.form-note{font-size:11px;color:#656e74;margin:12px 4px 0}.quote-result{margin-top:20px;border-top:1px solid #293137;padding-top:20px}.quote-result p{white-space:pre-wrap;color:#aeb6bb;background:#080b0d;border-radius:10px;padding:16px;font-size:13px}.result-actions{display:flex;gap:9px;flex-wrap:wrap}.result-actions .button{min-height:43px;padding:0 15px;font-size:12px}.contact-band{padding:95px 0;background:var(--orange);color:#0a0b0c}.contact-band .kicker{color:rgba(0,0,0,.55)}.contact-band-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.contact-band h2{font-size:clamp(50px,6.5vw,92px);margin:12px 0 0}.contact-links{border-top:1px solid rgba(0,0,0,.35)}.contact-links a{display:grid;grid-template-columns:110px 1fr 30px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(0,0,0,.35);transition:.25s}.contact-links a:hover{padding-left:10px}.contact-links small{font-size:9px;font-weight:900;letter-spacing:.16em}.contact-links span{font-size:20px;font-weight:800}.contact-links b{font-size:22px}.site-footer{padding:70px 0 25px;background:#050708}.footer-inner{display:grid;grid-template-columns:240px 1fr auto;gap:50px;align-items:center}.footer-inner img{width:200px}.footer-inner p{color:#737d83}.footer-inner>a{font-size:12px;color:#aeb6bb}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #1c2226;padding-top:20px;margin-top:48px;color:#596168;font-size:11px;letter-spacing:.08em}.lightbox{width:min(94vw,1200px);height:min(92vh,850px);border:1px solid #333;background:#060809;padding:0;overflow:hidden}.lightbox::backdrop{background:rgba(0,0,0,.9);backdrop-filter:blur(8px)}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{position:absolute;right:12px;top:12px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid #4d555b;background:#0d1114;color:#fff;font-size:25px;cursor:pointer}.mobile-cta{display:none}.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.in{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}
@media (max-width:980px){.shell{width:min(calc(100% - 34px),var(--shell))}.main-nav{position:fixed;inset:0;background:rgba(7,9,11,.97);backdrop-filter:blur(18px);flex-direction:column;justify-content:center;gap:28px;transform:translateX(100%);transition:.35s var(--ease);font-size:20px}.main-nav.open{transform:none}.menu-toggle{display:block;position:relative;z-index:3}.menu-toggle.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero h1{font-size:clamp(61px,15vw,108px)}.hero-backdrop{background:linear-gradient(90deg,rgba(5,7,9,.96),rgba(5,7,9,.6))}.section{padding:90px 0}.section-head{grid-template-columns:1fr;gap:22px}.service-grid{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}.workshop{grid-template-columns:1fr;gap:50px}.workshop-photo{max-width:700px}.coverage-inner{grid-template-columns:1fr 1.4fr}.coverage-inner>.kicker{grid-column:1/-1}.radar{grid-column:2;grid-row:1/3;opacity:.7}.quote-layout{grid-template-columns:1fr;gap:55px}.contact-band-inner{grid-template-columns:1fr;gap:50px}.footer-inner{grid-template-columns:200px 1fr}.footer-inner>a{grid-column:1/-1}.video-card{grid-template-columns:170px 1fr}}
@media (max-width:640px){body{padding-bottom:64px}.shell{width:calc(100% - 28px)}.site-header{padding:8px 14px}.brand{width:150px}.hero{min-height:880px;align-items:flex-start}.hero-content{padding-top:155px}.hero h1{font-size:clamp(60px,20vw,89px);line-height:.79;margin-top:24px}.hero-lead{font-size:16px;max-width:94%}.hero-actions .button{flex:1;min-width:150px}.hero-facts{display:grid;grid-template-columns:1fr 1fr;margin-top:44px}.hero-facts div{padding:15px 20px 0 0;margin:0;border-right:0}.hero-facts div:nth-child(3){grid-column:1/-1}.scroll-hint{display:none}.cursor-glow{display:none}.section{padding:76px 0}.section-head h2,.workshop-copy h2{font-size:44px}.service-grid{grid-template-columns:1fr}.service-card{min-height:245px}.service-icon{margin:28px 0 20px}.gallery{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-wide{grid-column:auto}.video-grid{grid-template-columns:1fr;gap:46px}.video-card{grid-template-columns:120px 1fr;gap:18px}.video-card h3{font-size:20px}.photo-stamp{right:-7px}.coverage{padding:70px 0}.coverage-inner{display:block}.coverage h2{margin-top:15px}.radar{margin:40px auto 0;width:90%}.quote-form{padding:20px 15px}.field-row{grid-template-columns:1fr;gap:0}.quote-copy h2{font-size:55px}.contact-band{padding:72px 0}.contact-band h2{font-size:55px}.contact-links a{grid-template-columns:78px 1fr 24px;gap:10px}.contact-links span{font-size:16px;overflow-wrap:anywhere}.footer-inner{display:block}.footer-inner p{margin:26px 0}.footer-bottom{display:block}.footer-bottom span{display:block;margin:6px 0}.mobile-cta{position:fixed;z-index:45;bottom:0;left:0;right:0;height:64px;background:rgba(8,11,13,.94);backdrop-filter:blur(16px);border-top:1px solid #283036;display:grid;grid-template-columns:1fr 1fr;padding:8px;gap:8px}.mobile-cta a{display:flex;align-items:center;justify-content:center;border:1px solid #323b41;border-radius:10px;font-size:13px;font-weight:800}.mobile-cta a:last-child{background:var(--orange);border-color:var(--orange);color:#090a0b}.result-actions{display:grid;grid-template-columns:1fr}.result-actions .button{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee-track,.radar:after{animation:none}.weld-scene{display:none}.hero-backdrop{background:linear-gradient(90deg,rgba(5,7,9,.95),rgba(5,7,9,.73)),url('assets/images/dsc00797.webp') center/cover}}


/* MOBILE-PRO-V2 — dedicated phone/tablet experience */
@media (max-width:760px){
  :root{--radius:18px}
  html{scroll-padding-top:78px}
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .shell{width:min(calc(100% - 28px),620px)}

  .site-header{
    min-height:68px;
    padding:calc(8px + env(safe-area-inset-top)) 14px 8px;
    background:linear-gradient(180deg,rgba(8,11,13,.9),rgba(8,11,13,.35),transparent);
  }
  .site-header.scrolled{background:rgba(8,11,13,.94)}
  .brand{width:142px;position:relative;z-index:4}
  .menu-toggle{
    width:48px;height:48px;margin-left:auto;padding:0;
    display:grid;place-content:center;position:relative;z-index:4;
    border:1px solid rgba(255,255,255,.12);border-radius:14px;
    background:rgba(9,12,14,.58);backdrop-filter:blur(12px)
  }
  .menu-toggle span{width:24px;margin:4px}
  .main-nav{
    padding:calc(92px + env(safe-area-inset-top)) 22px calc(92px + env(safe-area-inset-bottom));
    justify-content:flex-start;align-items:stretch;gap:0;overflow-y:auto;
    background:
      radial-gradient(circle at 82% 15%,rgba(255,114,0,.14),transparent 28%),
      rgba(7,9,11,.985);
  }
  .main-nav>a{
    display:flex;align-items:center;min-height:64px;padding:12px 4px;
    border-bottom:1px solid rgba(255,255,255,.08);
    font-size:clamp(22px,7vw,30px);line-height:1.05;letter-spacing:-.02em;color:#f4f6f7
  }
  .main-nav>a:not(.nav-cta):after{display:none}
  .main-nav .nav-cta{
    justify-content:center;min-height:58px;margin-top:22px;padding:0 20px;
    border:0;border-radius:14px;background:linear-gradient(135deg,#ff8400,var(--orange2));
    color:#080b0d;font-size:17px
  }

  .hero{
    min-height:max(760px,100svh);align-items:flex-start;
    border-bottom-color:rgba(255,255,255,.08)
  }
  .hero-content{
    position:relative;z-index:2;
    padding-top:calc(116px + env(safe-area-inset-top));
    padding-bottom:112px
  }
  .hero-backdrop{
    background:
      linear-gradient(180deg,rgba(5,7,9,.48) 0%,rgba(5,7,9,.82) 50%,rgba(5,7,9,.98) 92%),
      linear-gradient(90deg,rgba(5,7,9,.9),rgba(5,7,9,.28));
  }
  .weld-scene{opacity:.68;transform:translateX(8%)}
  .eyebrow{font-size:10px;letter-spacing:.16em}
  .hero h1{
    max-width:100%;margin:22px 0 26px;
    font-size:clamp(52px,16.8vw,78px);line-height:.83;letter-spacing:-.055em
  }
  .hero-lead{max-width:100%;font-size:15px;line-height:1.55;margin-bottom:24px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .button{width:100%;min-width:0;min-height:56px;border-radius:14px;font-size:14px}
  .hero-facts{
    display:grid;grid-template-columns:1fr;margin-top:34px;
    border-top:1px solid rgba(255,255,255,.13)
  }
  .hero-facts div,.hero-facts div:nth-child(3){
    grid-column:auto;margin:0;padding:13px 0;
    border-right:0;border-bottom:1px solid rgba(255,255,255,.08)
  }
  .hero-facts strong{font-size:14px}
  .hero-facts span{font-size:11px}
  .marquee-track{font-size:11px;gap:18px;padding:11px 0}

  .section{padding:64px 0}
  .section-head{gap:15px;margin-bottom:34px}
  .section-head h2,.workshop-copy h2{
    font-size:clamp(38px,11vw,50px);line-height:.98;letter-spacing:-.045em
  }
  .section-head p,.workshop-copy>p{font-size:14px;line-height:1.65}
  .kicker{font-size:10px;letter-spacing:.16em}

  .service-grid{grid-template-columns:1fr;gap:12px}
  .service-card{
    min-height:0;padding:22px;border-radius:18px;
    background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012))
  }
  .service-card h3{font-size:22px}
  .service-card p{font-size:14px}
  .service-icon{margin:22px 0 16px}

  .gallery{grid-template-columns:1fr;grid-auto-rows:unset;gap:12px}
  .gallery-item,.gallery-wide{
    grid-column:auto;height:auto;aspect-ratio:4/3;border-radius:14px
  }
  .gallery-item span{left:16px;right:16px;bottom:14px}
  .gallery-item b{font-size:15px}

  .video-grid{grid-template-columns:1fr;gap:34px;margin-top:46px}
  .video-card{display:block;padding-top:16px}
  .video-frame{width:min(100%,330px);margin:0 auto 16px;border-radius:16px}
  .video-card h3{font-size:20px;margin:8px 0}
  .video-card span{font-size:9px}

  .workshop{grid-template-columns:1fr;gap:34px}
  .workshop-photo img{aspect-ratio:4/4.7}
  .photo-stamp{right:-4px;bottom:20px;padding:14px 18px}
  .photo-stamp strong{font-size:22px}
  .principles>div{grid-template-columns:36px 1fr;gap:10px;padding:15px 0}

  .coverage{padding:64px 0}
  .coverage h2{font-size:clamp(42px,12vw,58px);line-height:.94}
  .coverage p{font-size:14px}
  .radar{width:min(310px,84vw);margin:34px auto 0}

  .quote-layout{grid-template-columns:1fr;gap:34px}
  .quote-copy h2{font-size:clamp(44px,12vw,58px);line-height:.96}
  .quote-copy>p{font-size:14px}
  .direct-phone{width:100%;align-items:center;text-align:center;border-radius:14px}
  .quote-form{padding:18px;border-radius:16px}
  .field-row{grid-template-columns:1fr;gap:0}
  label{margin-bottom:14px}
  input,textarea,select{font-size:16px;min-height:52px;padding:14px;border-radius:12px}
  textarea{min-height:145px}
  .quote-form .button{min-height:56px;border-radius:14px}
  .form-note{font-size:10px;line-height:1.5}
  .quote-result p{font-size:12px;overflow-wrap:anywhere}

  .contact-band{padding:64px 0}
  .contact-band-inner{grid-template-columns:1fr;gap:34px}
  .contact-band h2{font-size:clamp(44px,12vw,60px);line-height:.96}
  .contact-links a{
    grid-template-columns:72px minmax(0,1fr) 24px;gap:10px;
    min-height:72px;padding:16px 0
  }
  .contact-links span{font-size:15px;overflow-wrap:anywhere}
  .contact-links a:hover{padding-left:0}

  .site-footer{padding:54px 0 24px}
  .footer-inner{display:block}
  .footer-inner img{width:170px}
  .footer-inner p{font-size:13px;margin:24px 0}
  .footer-bottom{display:block;margin-top:34px}
  .footer-bottom span{display:block;margin:6px 0}

  .lightbox{
    width:100vw;max-width:none;height:100dvh;max-height:none;
    border:0;margin:0;border-radius:0
  }
  .lightbox button{
    right:14px;top:calc(14px + env(safe-area-inset-top));
    width:46px;height:46px
  }

  .mobile-cta{
    min-height:70px;height:auto;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    grid-template-columns:.8fr 1.2fr;gap:8px
  }
  .mobile-cta a{min-height:50px;border-radius:14px;font-size:13px}
}

@media (max-width:390px){
  .shell{width:calc(100% - 24px)}
  .brand{width:132px}
  .hero-content{padding-top:calc(108px + env(safe-area-inset-top))}
  .hero h1{font-size:clamp(48px,16.2vw,64px)}
  .section-head h2,.workshop-copy h2{font-size:36px}
  .quote-copy h2,.contact-band h2{font-size:42px}
  .service-card{padding:20px}
}

@media (hover:none) and (pointer:coarse){
  .button:hover,.service-card:hover,.gallery-item:hover img,.contact-links a:hover{transform:none}
  .gallery-item:hover img{filter:saturate(.8) contrast(1.05)}
}


.hero-copy-card{display:contents}

/* MOBILE-PRO-V3 — stronger 3D visibility and clearer phone hierarchy */
@media (max-width:760px){
  .hero{
    min-height:max(960px,100svh);
    background:#080b0d;
  }

  .weld-scene{
    inset:0 0 auto 0;
    width:100%;
    height:min(56svh,460px);
    opacity:.98;
    transform:none;
    z-index:-2;
    mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%);
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%);
  }

  .hero-backdrop{
    background:
      radial-gradient(circle at 72% 18%,rgba(255,114,0,.24),transparent 27%),
      radial-gradient(circle at 43% 16%,rgba(185,235,255,.12),transparent 23%),
      linear-gradient(180deg,rgba(5,7,9,.05) 0%,rgba(5,7,9,.13) 19%,rgba(5,7,9,.43) 43%,rgba(5,7,9,.88) 61%,#080b0d 75%);
  }

  .hero-content{
    padding-top:calc(min(56svh,460px) + 6px);
    padding-bottom:108px;
  }

  .hero-copy-card{
    display:block;
    padding:18px 16px 16px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:22px;
    background:linear-gradient(165deg,rgba(14,18,21,.76),rgba(8,11,13,.94));
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 22px 56px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.03);
  }

  .hero-copy-card::before{
    content:"3D LÁTVÁNY • HEGESZTÉS";
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:0 10px;
    margin-bottom:12px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:999px;
    color:#c3ccd1;
    background:rgba(255,255,255,.03);
    font-size:10px;
    font-weight:800;
    letter-spacing:.14em;
  }

  .hero h1{
    margin:16px 0 18px;
    max-width:10ch;
  }

  .hero-lead{margin-bottom:20px}
  .hero-actions{margin-top:0}
  .hero-facts{margin-top:24px;padding-top:4px}

  .section-head{margin-bottom:28px}
  .service-grid{gap:14px}
  .service-card{
    border-color:rgba(255,255,255,.07);
    box-shadow:0 14px 34px rgba(0,0,0,.18);
  }
  .gallery{gap:14px}
  .gallery-item{border-radius:16px}
  .video-card{border-top-color:rgba(255,255,255,.1)}
  .quote-form{box-shadow:0 18px 44px rgba(0,0,0,.24)}
}

@media (max-width:420px){
  .weld-scene{height:min(52svh,410px)}
  .hero-content{padding-top:calc(min(52svh,410px) + 4px)}
  .hero-copy-card{padding:16px 14px}
}


/* MOBILE-3D-FIX-V4 — keep WebGL visibly above the hero background on Android */
@media (max-width:760px){
  .hero{isolation:isolate}
  .weld-scene{
    z-index:0 !important;
    opacity:1 !important;
    transform:none !important;
    mask-image:none !important;
    -webkit-mask-image:none !important;
    pointer-events:none;
  }
  .hero-backdrop{
    z-index:1 !important;
    pointer-events:none;
    background:
      radial-gradient(circle at 70% 25%,rgba(255,112,0,.12),transparent 30%),
      linear-gradient(180deg,rgba(5,7,9,.02) 0%,rgba(5,7,9,.08) 34%,rgba(5,7,9,.42) 68%,#080b0d 100%) !important;
  }
  .hero-content{position:relative;z-index:2 !important}
  .site-header{z-index:50}
}


/* TRUE-3D-WELD-V6 — dedicated real WebGL stage on phones */
@media (max-width:760px){
  .mobile-welder-fallback{display:none!important}
  #weld-scene{
    display:block!important;
    position:absolute!important;
    top:66px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:min(50svh,430px)!important;
    z-index:0!important;
    opacity:1!important;
    background:
      radial-gradient(circle at 50% 58%,rgba(40,90,110,.10),transparent 35%),
      radial-gradient(circle at 58% 62%,rgba(255,92,0,.10),transparent 32%);
  }
  .hero-backdrop{
    z-index:1!important;
    background:
      linear-gradient(180deg,rgba(5,7,9,.02) 0%,rgba(5,7,9,.08) 42%,rgba(5,7,9,.60) 73%,#080b0d 100%)!important;
  }
  .hero-content{
    z-index:2!important;
    padding-top:calc(min(50svh,430px) + 72px)!important;
  }
}

@media (max-width:420px){
  #weld-scene{height:min(47svh,390px)!important}
  .hero-content{padding-top:calc(min(47svh,390px) + 70px)!important}
}


/* PREMIUM-3D-WELD-V8 — macro welding hero, aligned on desktop and mobile */
#weld-scene{
  background:
    radial-gradient(circle at 58% 55%,rgba(70,155,185,.08),transparent 28%),
    radial-gradient(circle at 64% 60%,rgba(255,89,0,.07),transparent 31%);
}
@media (min-width:761px){
  .weld-scene{
    top:0;
    left:42%;
    width:58%;
    height:100%;
    z-index:-1;
  }
  .hero-backdrop{
    background:
      linear-gradient(90deg,rgba(5,7,9,.98) 0%,rgba(5,7,9,.88) 35%,rgba(5,7,9,.24) 66%,rgba(5,7,9,.40) 100%),
      radial-gradient(circle at 74% 53%,rgba(80,190,225,.08),transparent 24%),
      radial-gradient(circle at 78% 58%,rgba(255,92,0,.08),transparent 28%);
  }
}
@media (max-width:760px){
  #weld-scene{
    display:block!important;
    top:68px!important;
    left:0!important;
    width:100%!important;
    height:min(52svh,450px)!important;
    z-index:0!important;
    opacity:1!important;
    background:
      radial-gradient(circle at 50% 63%,rgba(70,165,200,.10),transparent 31%),
      radial-gradient(circle at 56% 66%,rgba(255,88,0,.08),transparent 30%);
  }
  .hero-backdrop{
    z-index:1!important;
    background:
      linear-gradient(180deg,rgba(5,7,9,.02) 0%,rgba(5,7,9,.05) 39%,rgba(5,7,9,.48) 71%,#080b0d 100%)!important;
  }
  .hero-content{
    z-index:2!important;
    padding-top:calc(min(52svh,450px) + 72px)!important;
  }
}
@media (max-width:420px){
  #weld-scene{height:min(49svh,410px)!important}
  .hero-content{padding-top:calc(min(49svh,410px) + 70px)!important}
}


/* WELD-SCROLL-V9 — scroll-driven sticky 3D hero */
.hero{
  min-height:150svh;
  align-items:flex-start;
}
#weld-scene.weld-scene{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:auto!important;
  width:100%!important;
  height:100svh!important;
  margin-bottom:-100svh;
  z-index:0!important;
  opacity:1!important;
  pointer-events:none;
  background:
    radial-gradient(circle at 56% 58%,rgba(63,145,175,.075),transparent 30%),
    radial-gradient(circle at 61% 62%,rgba(255,88,0,.06),transparent 30%);
}
.hero-backdrop{
  z-index:1!important;
  pointer-events:none;
}
.hero-content{
  position:relative;
  z-index:2!important;
}
@media (min-width:761px){
  .hero{min-height:138svh}
  .hero-content{
    min-height:100svh;
    padding-top:125px;
    padding-bottom:100px;
  }
  .hero-backdrop{
    background:
      linear-gradient(90deg,rgba(5,7,9,.98) 0%,rgba(5,7,9,.90) 33%,rgba(5,7,9,.36) 58%,rgba(5,7,9,.20) 100%),
      radial-gradient(circle at 72% 51%,rgba(70,180,215,.07),transparent 25%),
      radial-gradient(circle at 78% 58%,rgba(255,92,0,.06),transparent 29%)!important;
  }
}
@media (max-width:760px){
  .hero{min-height:166svh!important}
  #weld-scene.weld-scene{
    top:0!important;
    height:100svh!important;
    margin-bottom:-100svh!important;
  }
  .hero-content{
    padding-top:61svh!important;
    padding-bottom:115px!important;
  }
  .hero-backdrop{
    background:
      linear-gradient(180deg,rgba(5,7,9,.03) 0%,rgba(5,7,9,.05) 38%,rgba(5,7,9,.46) 64%,#080b0d 83%)!important;
  }
  .hero-copy-card{
    background:linear-gradient(165deg,rgba(13,17,20,.86),rgba(8,11,13,.96))!important;
  }
}
@media (max-width:420px){
  .hero{min-height:174svh!important}
  .hero-content{padding-top:58svh!important}
}


/* WELDING-HERO-V10 — stable premium 3D stage */
.hero{
  display:block!important;
  min-height:170svh!important;
  overflow:clip!important;
  position:relative!important;
}
#weld-scene.weld-scene{
  display:block!important;
  position:sticky!important;
  top:0!important;
  left:0!important;
  width:100%!important;
  height:100svh!important;
  margin:0 0 -100svh 0!important;
  z-index:0!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 45% 56%,rgba(74,170,200,.075),transparent 31%),
    radial-gradient(circle at 53% 62%,rgba(255,92,0,.055),transparent 28%)!important;
}
.hero-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
}
.hero-content{
  position:relative!important;
  z-index:2!important;
}
.hero .reveal{
  opacity:1!important;
  transform:none!important;
}
@media (min-width:761px){
  .hero{min-height:148svh!important}
  .hero-content{
    min-height:100svh!important;
    display:flex!important;
    align-items:center!important;
    padding-top:105px!important;
    padding-bottom:75px!important;
  }
  .hero-copy-card{
    display:block!important;
    width:min(610px,48vw)!important;
    margin-left:auto!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  .hero-copy-card::before{display:none!important}
  .hero-backdrop{
    background:
      linear-gradient(90deg,rgba(5,7,9,.20) 0%,rgba(5,7,9,.12) 40%,rgba(5,7,9,.62) 60%,rgba(5,7,9,.95) 100%),
      radial-gradient(circle at 38% 56%,rgba(70,175,210,.065),transparent 26%),
      radial-gradient(circle at 46% 62%,rgba(255,92,0,.055),transparent 29%)!important;
  }
}
@media (max-width:760px){
  .hero{min-height:178svh!important}
  #weld-scene.weld-scene{
    height:100svh!important;
    margin-bottom:-100svh!important;
  }
  .hero-content{
    padding-top:96svh!important;
    padding-bottom:115px!important;
  }
  .hero-copy-card{
    display:block!important;
    background:linear-gradient(165deg,rgba(13,17,20,.90),rgba(8,11,13,.97))!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:22px!important;
    padding:18px 16px 16px!important;
    box-shadow:0 22px 56px rgba(0,0,0,.30)!important;
  }
  .hero-copy-card::before{
    content:"3D HEGESZTÉS • GÖRGESS";
    display:inline-flex!important;
  }
  .hero-backdrop{
    background:
      linear-gradient(180deg,rgba(5,7,9,.02) 0%,rgba(5,7,9,.04) 47%,rgba(5,7,9,.44) 65%,#080b0d 88%)!important;
  }
}
@media (max-width:420px){
  .hero{min-height:184svh!important}
  .hero-content{padding-top:93svh!important}
}


/* HERO-EXACT-V13 — exact render + live welding effects */
.hero{
  position:relative!important;
  display:block!important;
  min-height:148svh!important;
  overflow:clip!important;
  background:#06090b!important;
}
.hero-visual{
  position:sticky;
  top:0;
  width:100%;
  height:100svh;
  margin-bottom:-100svh;
  z-index:0;
  overflow:hidden;
  background:#06090b;
}
.hero-photo-img{
  position:absolute;
  inset:-2%;
  width:104%;
  height:104%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.015);
  will-change:transform;
  filter:saturate(1.02) contrast(1.03);
}
#weld-scene.weld-scene{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  z-index:1!important;
  opacity:1!important;
  pointer-events:none!important;
  background:transparent!important;
}
.hero-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(4,7,9,.05) 0%,rgba(4,7,9,.03) 45%,rgba(4,7,9,.46) 63%,rgba(4,7,9,.88) 100%),
    linear-gradient(180deg,rgba(4,7,9,.10),transparent 28%,rgba(4,7,9,.10) 72%,rgba(4,7,9,.38))!important;
}
.hero-content{
  position:relative!important;
  z-index:3!important;
  min-height:100svh!important;
  display:flex!important;
  align-items:center!important;
  padding-top:102px!important;
  padding-bottom:72px!important;
}
.hero-copy-card{
  display:block!important;
  width:min(620px,48vw)!important;
  margin-left:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.hero-copy-card::before{display:none!important}
.hero .reveal{opacity:1!important;transform:none!important}

@media (max-width:760px){
  .hero{min-height:158svh!important}
  .hero-visual{
    height:61svh;
    margin-bottom:-61svh;
  }
  .hero-photo-img{
    inset:-1%;
    width:102%;
    height:102%;
    object-fit:cover;
    object-position:42% 50%;
  }
  .hero-backdrop{
    background:
      linear-gradient(180deg,rgba(4,7,9,.03) 0%,rgba(4,7,9,.05) 45%,rgba(4,7,9,.50) 68%,#080b0d 100%)!important;
  }
  .hero-content{
    min-height:auto!important;
    display:block!important;
    padding-top:63svh!important;
    padding-bottom:110px!important;
  }
  .hero-copy-card{
    width:100%!important;
    margin:0!important;
    padding:18px 16px 16px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:22px!important;
    background:linear-gradient(165deg,rgba(13,17,20,.88),rgba(8,11,13,.96))!important;
    box-shadow:0 22px 56px rgba(0,0,0,.30)!important;
  }
  .hero-copy-card::before{
    content:"ÉLŐ HEGESZTÉSI LÁTVÁNY";
    display:inline-flex!important;
  }
}

@media (max-width:420px){
  .hero-visual{height:57svh;margin-bottom:-57svh}
  .hero-content{padding-top:59svh!important}
}


/* HERO-FALLBACK-V14 — force the exact hero render to display even if <img> loading fails */
.hero-visual{
  background-image:url("/hero-weld-perfect.webp")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#06090b!important;
}
.hero-photo-img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
@media (max-width:760px){
  .hero-visual{
    background-position:42% 50%!important;
  }
}


/* REAL-3D-WELD-V16 — genuine WebGL hero, no image fallback */
.hero{
  position:relative!important;
  display:block!important;
  min-height:150svh!important;
  overflow:clip!important;
  background:#06090b!important;
}
.hero-visual{
  position:sticky!important;
  top:0!important;
  width:100%!important;
  height:100svh!important;
  margin-bottom:-100svh!important;
  z-index:0!important;
  overflow:hidden!important;
  background:#06090b!important;
  background-image:none!important;
}
.hero-photo-img{display:none!important}
#weld-scene.weld-scene{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  z-index:1!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:none!important;
  background:transparent!important;
}
.hero-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(4,7,9,.03) 0%,rgba(4,7,9,.04) 44%,rgba(4,7,9,.50) 64%,rgba(4,7,9,.90) 100%),
    radial-gradient(circle at 35% 58%,rgba(45,160,205,.055),transparent 25%),
    radial-gradient(circle at 42% 62%,rgba(255,92,0,.045),transparent 28%)!important;
}
.hero-content{
  position:relative!important;
  z-index:3!important;
  min-height:100svh!important;
  display:flex!important;
  align-items:center!important;
  padding-top:100px!important;
  padding-bottom:72px!important;
}
.hero-copy-card{
  display:block!important;
  width:min(620px,48vw)!important;
  margin-left:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.hero-copy-card::before{display:none!important}
.hero .reveal{opacity:1!important;transform:none!important}

@media (max-width:760px){
  .hero{min-height:168svh!important}
  .hero-visual{
    height:62svh!important;
    margin-bottom:-62svh!important;
  }
  .hero-backdrop{
    background:
      linear-gradient(180deg,rgba(4,7,9,.015) 0%,rgba(4,7,9,.035) 45%,rgba(4,7,9,.43) 70%,#080b0d 100%)!important;
  }
  .hero-content{
    min-height:auto!important;
    display:block!important;
    padding-top:64svh!important;
    padding-bottom:112px!important;
  }
  .hero-copy-card{
    width:100%!important;
    margin:0!important;
    padding:18px 16px 16px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:22px!important;
    background:linear-gradient(165deg,rgba(13,17,20,.90),rgba(8,11,13,.97))!important;
    box-shadow:0 22px 56px rgba(0,0,0,.30)!important;
  }
  .hero-copy-card::before{
    content:"VALÓDI 3D • GÖRGESS";
    display:inline-flex!important;
  }
}
@media (max-width:420px){
  .hero-visual{height:59svh!important;margin-bottom:-59svh!important}
  .hero-content{padding-top:61svh!important}
}


/* Uploaded 3D model attribution */
.model-credit{
  font-size:.68rem;
  opacity:.55;
  line-height:1.45;
}
.model-credit a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:2px;
}
@media (max-width:760px){
  .model-credit{width:100%;margin-top:6px}
}


/* Ajánlatkérés e-mail státusz */
.hp-field{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
#quote-submit:disabled{
  cursor:wait;
  opacity:.72;
  transform:none;
}
.form-status{
  margin-top:14px;
  padding:15px 16px;
  border:1px solid #2a3338;
  border-radius:12px;
  background:#090d10;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.form-status strong{
  color:#f4f6f7;
  font-size:13px;
}
.form-status span{
  color:#89939a;
  font-size:12px;
  line-height:1.55;
}
.form-status.is-sending{
  border-color:rgba(255,114,0,.35);
  background:rgba(255,114,0,.05);
}
.form-status.is-success{
  border-color:rgba(87,204,126,.42);
  background:rgba(87,204,126,.07);
}
.form-status.is-success strong{color:#8ee4aa}
.form-status.is-error{
  border-color:rgba(255,93,74,.42);
  background:rgba(255,93,74,.07);
}
.form-status.is-error strong{color:#ff9184}


/* Szolgáltatás-kártyákhoz kapcsolódó referencia galériák */
.service-card[data-reference-category]{
  cursor:pointer;
  position:relative;
  isolation:isolate;
  transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease;
}
.service-card[data-reference-category]::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle at 20% 100%,rgba(255,114,0,.14),transparent 48%);
  transition:opacity .28s ease;
  z-index:-1;
}
.service-card[data-reference-category]:hover{
  transform:translateY(-4px);
  border-color:rgba(255,114,0,.48);
  box-shadow:0 22px 55px rgba(0,0,0,.22);
}
.service-card[data-reference-category]:hover::after{opacity:1}
.service-card[data-reference-category]:focus-visible{
  outline:2px solid var(--orange);
  outline-offset:-2px;
}
.service-reference-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:18px;
  color:var(--orange);
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.service-reference-link b{
  font-size:15px;
  transition:transform .22s ease;
}
.service-card[data-reference-category]:hover .service-reference-link b{transform:translate(3px,-3px)}

.reference-dialog{
  width:min(1180px,calc(100vw - 34px));
  max-width:1180px;
  max-height:calc(100dvh - 34px);
  margin:auto;
  padding:0;
  border:1px solid #293137;
  border-radius:22px;
  background:#070a0c;
  color:#f4f6f7;
  box-shadow:0 40px 120px rgba(0,0,0,.72);
  overflow:hidden;
}
.reference-dialog::backdrop{
  background:rgba(0,0,0,.82);
  backdrop-filter:blur(8px);
}
.reference-dialog-panel{
  position:relative;
  max-height:calc(100dvh - 34px);
  padding:38px;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#31383d #090c0e;
}
.reference-dialog-close{
  position:sticky;
  float:right;
  top:0;
  z-index:4;
  width:48px;
  height:48px;
  margin:0 0 -48px 20px;
  border:1px solid #30383d;
  border-radius:50%;
  background:rgba(7,10,12,.92);
  color:#f5f6f7;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:.2s ease;
}
.reference-dialog-close:hover{
  color:var(--orange);
  border-color:var(--orange);
  transform:rotate(5deg);
}
.reference-dialog-head{
  max-width:760px;
  padding-right:65px;
}
.reference-dialog-head h2{
  margin:12px 0 8px;
  font-size:clamp(42px,5.4vw,78px);
  line-height:.93;
  letter-spacing:-.045em;
}
.reference-dialog-head p{
  max-width:660px;
  margin:0;
  color:#8d979d;
  font-size:15px;
  line-height:1.65;
}
.reference-dialog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
  margin-top:30px;
}
.reference-photo{
  appearance:none;
  border:1px solid #232b30;
  border-radius:14px;
  padding:0;
  overflow:hidden;
  background:#0a0e11;
  color:#f4f6f7;
  text-align:left;
  cursor:pointer;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.reference-photo:hover{
  transform:translateY(-4px);
  border-color:rgba(255,114,0,.65);
  box-shadow:0 18px 48px rgba(0,0,0,.33);
}
.reference-photo:focus-visible{
  outline:2px solid var(--orange);
  outline-offset:2px;
}
.reference-photo img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  background:#101519;
}
.reference-photo > span{
  display:flex;
  min-height:68px;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:11px 13px 12px;
}
.reference-photo small{
  color:var(--orange);
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.reference-photo b{
  color:#dce1e4;
  font-size:12px;
  line-height:1.35;
}
.reference-loading{
  grid-column:1/-1;
  min-height:260px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:13px;
  color:#879198;
}
.reference-loading > span{
  width:34px;
  height:34px;
  border:2px solid #2a3237;
  border-top-color:var(--orange);
  border-radius:50%;
  animation:referenceSpin .8s linear infinite;
}
.reference-loading b{
  font-size:12px;
  letter-spacing:.06em;
}
.reference-loading.reference-error{color:#c5c9cc;text-align:center}
.reference-loading.reference-error span{width:auto;height:auto;border:0;animation:none}
@keyframes referenceSpin{to{transform:rotate(360deg)}}

@media(max-width:760px){
  .service-reference-link{
    margin-top:14px;
    font-size:9px;
  }
  .reference-dialog{
    width:calc(100vw - 16px);
    max-height:calc(100dvh - 16px);
    border-radius:17px;
  }
  .reference-dialog-panel{
    max-height:calc(100dvh - 16px);
    padding:24px 14px 20px;
  }
  .reference-dialog-close{
    width:43px;
    height:43px;
    font-size:25px;
  }
  .reference-dialog-head{padding-right:52px}
  .reference-dialog-head h2{
    margin-top:10px;
    font-size:clamp(36px,12vw,54px);
  }
  .reference-dialog-head p{
    font-size:13px;
    line-height:1.55;
  }
  .reference-dialog-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:22px;
  }
  .reference-photo{border-radius:11px}
  .reference-photo > span{
    min-height:62px;
    padding:9px 9px 10px;
  }
  .reference-photo small{font-size:8px}
  .reference-photo b{font-size:10.5px}
  .reference-loading{min-height:210px}
}

@media(max-width:390px){
  .reference-dialog-grid{grid-template-columns:1fr}
  .reference-photo img{aspect-ratio:16/10}
}


/* WORK-GALLERY-V3 */
.work-filters{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 24px;
}
.work-filter{
  appearance:none;
  border:1px solid rgba(151,164,172,.24);
  background:rgba(8,12,14,.72);
  color:#9ca7ad;
  padding:10px 15px;
  border-radius:999px;
  font:800 11px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.06em;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease,background .2s ease,transform .2s ease;
}
.work-filter:hover{
  color:#fff;
  border-color:rgba(255,111,0,.55);
  transform:translateY(-1px);
}
.work-filter.active{
  color:#080b0d;
  border-color:#ff6f00;
  background:linear-gradient(135deg,#ff9a00,#ff4d13);
  box-shadow:0 8px 28px rgba(255,91,0,.16);
}
.gallery{
  grid-auto-flow:dense;
}
.gallery-item[hidden]{
  display:none!important;
}
.reference-work-item{
  animation:workGalleryIn .38s ease both;
}
.reference-work-item img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.service-card[data-reference-category]{
  cursor:pointer;
}
.service-card[data-reference-category].is-selected{
  border-color:rgba(255,111,0,.70);
  box-shadow:inset 0 -2px 0 #ff6f00,0 16px 38px rgba(0,0,0,.16);
}
@keyframes workGalleryIn{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}
@media(max-width:760px){
  .work-filters{
    flex-wrap:nowrap;
    overflow-x:auto;
    margin-left:-2px;
    margin-right:-2px;
    padding:2px 2px 10px;
    scrollbar-width:none;
  }
  .work-filters::-webkit-scrollbar{display:none}
  .work-filter{flex:0 0 auto;padding:10px 13px}
  .reference-work-item{min-height:220px}
}


/* WORK-GALLERY-V4 — premium progressive references */
#munkaink .work-filters{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 18px!important;
}
#munkaink .work-filter{
  -webkit-appearance:none!important;
  appearance:none!important;
  border:1px solid rgba(151,164,172,.22)!important;
  background:rgba(7,11,13,.82)!important;
  color:#9aa5ab!important;
  padding:11px 15px!important;
  border-radius:999px!important;
  font:800 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease!important;
}
#munkaink .work-filter:hover{
  color:#fff!important;
  border-color:rgba(255,111,0,.55)!important;
  transform:translateY(-1px)!important;
}
#munkaink .work-filter.active{
  color:#090c0e!important;
  border-color:#ff7100!important;
  background:linear-gradient(135deg,#ff9d00,#ff5514)!important;
  box-shadow:0 9px 28px rgba(255,91,0,.16)!important;
}
.work-gallery-meta{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:0 0 15px;
  margin-bottom:13px;
  border-bottom:1px solid rgba(151,164,172,.16);
}
.work-gallery-meta>div{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.work-gallery-meta span{
  color:#ff7600;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
.work-gallery-meta strong{
  color:#f3f5f6;
  font-size:15px;
  letter-spacing:.01em;
}
.work-gallery-meta p{
  margin:0;
  color:#69757c;
  font-size:11px;
}
#munkaink #gallery{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:12px!important;
  grid-auto-flow:dense!important;
}
#munkaink #gallery .gallery-item{
  position:relative!important;
  grid-column:span 4!important;
  min-width:0!important;
  height:285px!important;
  padding:0!important;
  border:1px solid rgba(137,151,159,.15)!important;
  border-radius:15px!important;
  overflow:hidden!important;
  background:#090d0f!important;
  box-shadow:0 18px 45px rgba(0,0,0,.16)!important;
  cursor:zoom-in!important;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important;
}
#munkaink #gallery .gallery-item.gallery-wide{
  grid-column:span 8!important;
}
#munkaink #gallery .gallery-item.reference-work-item.is-featured{
  grid-column:span 8!important;
}
#munkaink #gallery .gallery-item:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(255,112,0,.42)!important;
  box-shadow:0 23px 55px rgba(0,0,0,.25)!important;
}
#munkaink #gallery .gallery-item img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .4s ease!important;
}
#munkaink #gallery .gallery-item:hover img{
  transform:scale(1.035)!important;
}
#munkaink #gallery .gallery-item::after{
  content:""!important;
  position:absolute!important;
  inset:34% 0 0!important;
  background:linear-gradient(to bottom,transparent,rgba(3,5,6,.88))!important;
  pointer-events:none!important;
}
#munkaink #gallery .gallery-item>span{
  position:absolute!important;
  z-index:2!important;
  left:18px!important;
  right:18px!important;
  bottom:16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:3px!important;
  color:#a9b1b5!important;
  text-align:left!important;
  font-size:10px!important;
  line-height:1.35!important;
  text-shadow:0 1px 8px rgba(0,0,0,.6)!important;
}
#munkaink #gallery .gallery-item>span b{
  color:#fff!important;
  font-size:14px!important;
  font-weight:850!important;
}
#munkaink #gallery .gallery-item>span small{
  color:#ff7a00!important;
  font-size:8px!important;
  font-weight:850!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
#munkaink #gallery .gallery-item[hidden]{
  display:none!important;
}
.gallery-more-wrap{
  display:flex;
  justify-content:center;
  padding:25px 0 4px;
}
.gallery-more{
  -webkit-appearance:none;
  appearance:none;
  min-width:215px;
  border:1px solid rgba(255,112,0,.38);
  border-radius:999px;
  padding:13px 20px;
  background:rgba(255,112,0,.055);
  color:#eef1f2;
  font:800 11px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.055em;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.gallery-more:hover{
  transform:translateY(-2px);
  background:rgba(255,112,0,.11);
  border-color:#ff7200;
}
.gallery-more em{
  margin-left:4px;
  color:#ff7a00;
  font-style:normal;
}
.gallery-more span{
  margin-left:9px;
  color:#ff7a00;
}
.gallery-more[hidden]{display:none!important}

@media(max-width:900px){
  #munkaink #gallery .gallery-item,
  #munkaink #gallery .gallery-item.gallery-wide,
  #munkaink #gallery .gallery-item.reference-work-item.is-featured{
    grid-column:span 6!important;
    height:255px!important;
  }
}
@media(max-width:760px){
  #munkaink .work-filters{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding:2px 1px 10px!important;
    margin:0 -1px 13px!important;
    scrollbar-width:none!important;
  }
  #munkaink .work-filters::-webkit-scrollbar{display:none!important}
  #munkaink .work-filter{
    flex:0 0 auto!important;
    padding:10px 13px!important;
    font-size:9px!important;
  }
  .work-gallery-meta{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
    padding-bottom:12px;
  }
  .work-gallery-meta p{font-size:10px}
  #munkaink #gallery{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  #munkaink #gallery .gallery-item,
  #munkaink #gallery .gallery-item.gallery-wide,
  #munkainak #gallery .gallery-item.reference-work-item.is-featured,
  #munkaink #gallery .gallery-item.reference-work-item.is-featured{
    grid-column:1/-1!important;
    height:235px!important;
    border-radius:13px!important;
  }
  #munkaink #gallery .gallery-item>span{
    left:15px!important;
    right:15px!important;
    bottom:14px!important;
  }
  .gallery-more-wrap{padding-top:20px}
  .gallery-more{width:100%;max-width:340px}
}
