:root{--bg:#0f1113;--card:#141619;--accent:#b2863c;--muted:#9aa0a6;--glass:rgba(255,255,255,0.03)}*{box-sizing:border-box;font-family:Inter,'Segoe UI',Roboto,Arial,sans-serif;scrollbar-width:thin;scrollbar-color:rgba(178,134,60,0.8) rgba(20,22,25,0.9)}body{margin:0;background:linear-gradient(180deg,#0b0c0d,#121214);color:#e6e6e6}::-webkit-scrollbar{width:10px;height:10px;background:rgba(20,22,25,0.9)}::-webkit-scrollbar-track{background:rgba(20,22,25,0.9);border-radius:0}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(178,134,60,0.9),rgba(178,134,60,0.6));border-radius:5px;border:2px solid rgba(20,22,25,0.9)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--accent),rgba(178,134,60,0.8));box-shadow:0 0 6px rgba(178,134,60,0.5)}.site-header{display:flex;align-items:center;gap:1rem;padding:0.75rem 1rem;background:linear-gradient(90deg,rgba(0,0,0,0.6),rgba(0,0,0,0.2));border-bottom:1px solid #111}.brand{font-weight:700;color:var(--accent);text-decoration:none;font-size:1.1rem}.hamburger{display:none;background:transparent;border:0;color:#ddd;font-size:1.4rem;cursor:pointer}.breadcrumbs{background:rgba(178,134,60,0.03);border-bottom:1px solid rgba(178,134,60,0.1);padding:0.75rem 1rem;font-size:0.9rem;color:#aaa;max-width:100%;overflow-x:auto}.breadcrumbs a{color:var(--accent);text-decoration:none;margin:0 0.25rem;transition:color 0.2s ease}.breadcrumbs a:hover{color:#d4a55a;text-decoration:underline}.breadcrumbs span{margin:0 0.5rem;color:#666}.container{max-width:1100px;margin:2rem auto;padding:0 1rem}.hero{background:linear-gradient(90deg,rgba(178,134,60,0.06),transparent);padding:2rem;border-radius:10px;text-align:center}.hero h1{font-size:2.5rem;margin:0.5rem 0;color:var(--accent)}.hero p{font-size:1.1rem;color:#aaa;margin:0.5rem 0 1.5rem}.btn{display:inline-block;padding:0.6rem 1rem;border-radius:6px;text-decoration:none;color:var(--accent);border:1px solid var(--accent);transition:all 0.18s ease;cursor:pointer;font-size:0.95rem}.btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(178,134,60,0.15)}.btn.primary{background:var(--accent);color:#0a0a0a;border-color:transparent;font-weight:600}.btn.primary:hover{background:#d4a55a}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.25rem}.card{background:var(--card);padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,0.03)}.card h3{color:var(--accent);margin-top:0}.site-footer{text-align:center;padding:1rem;background:transparent;border-top:1px solid rgba(255,255,255,0.03);margin-top:2rem;font-size:0.9rem;color:#888}.form{background:var(--card);padding:1.5rem;border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.form label{display:block;margin-bottom:0.75rem;font-weight:500}.form input,.form textarea,.form select{width:100%;padding:0.5rem;border-radius:6px;border:1px solid #222;background:var(--glass);color:#eee;font-family:inherit}.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 8px rgba(178,134,60,0.1)}.form select option{background:#1a1d20;color:#eee}.form select option:checked{background:rgba(178,134,60,0.3);color:#b2863c;font-weight:600}.form-actions{margin-top:1rem;display:flex;gap:0.5rem;flex-wrap:wrap}select,select option{background:#1a1d20;color:#eee}select option:checked{background:rgba(178,134,60,0.3);color:#b2863c;font-weight:600}.process{background:linear-gradient(180deg,#0f1113,#141619);padding:1rem;border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.process li{margin:0.5rem 0;padding-left:0.5rem}.login-wrap{min-height:80vh;display:flex;align-items:center;justify-content:center}.login-form{width:340px;padding:1.2rem;background:var(--card);border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.login-form h2{color:var(--accent);text-align:center;margin-top:0}.login-form p{text-align:center;font-size:0.9rem;color:#888}.login-form a{color:var(--accent)}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;margin-top:1.5rem}.job-card{background:var(--card);border:1px solid rgba(178,134,60,0.2);padding:1.2rem;border-radius:8px;display:flex;flex-direction:column;gap:0.75rem;transition:all 0.18s ease}.job-card:hover{border-color:rgba(178,134,60,0.4);box-shadow:0 4px 12px rgba(178,134,60,0.08)}.job-card h3{margin:0;color:var(--accent);font-size:1.1rem}.job-card .muted{font-size:0.9rem;color:#888}.job-card p{margin:0.5rem 0;line-height:1.4;font-size:0.95rem}.job-card .btn{align-self:flex-start;margin-top:0.5rem}.filters{margin-bottom:1rem}.filters label{display:inline-block;margin-right:1rem}.filters select{padding:0.5rem;border-radius:6px;border:1px solid #222;background:var(--glass);color:#eee}#estimates .estimate,#applications .app,#jobs .job{background:var(--card);padding:0.9rem;border-radius:8px;margin-bottom:0.7rem;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(178,134,60,0.1)}.status{padding:0.25rem 0.5rem;border-radius:6px;background:#222;color:#ddd;font-size:0.85rem}.hero h1{font-size:1.8rem}.jobs-grid{grid-template-columns:1fr}.job-card{padding:1rem}.breadcrumbs{font-size:0.8rem;padding:0.5rem 0.75rem}.index-hero__content h1{font-size:2.2rem!important}.index-hero p{font-size:1.1rem!important}.index-stats{grid-template-columns:repeat(2,1fr)}.index-showcase{grid-template-columns:1fr}.showcase-card__image{height:200px}.cta-cards{grid-template-columns:1fr;gap:1.5rem}.cta-card{padding:2rem}.cta-card__icon{font-size:3rem}}
.nav .nav-close{display:none}.breadcrumbs a{color:var(--accent);text-decoration:none;margin:0 0.25rem;transition:color 0.2s ease}.breadcrumbs a:hover{color:#d4a55a;text-decoration:underline}.breadcrumbs span{margin:0 0.5rem;color:#666}.container{max-width:1100px;margin:2rem auto;padding:0 1rem}.hero{background:linear-gradient(90deg,rgba(178,134,60,0.06),transparent);padding:2rem;border-radius:10px;text-align:center}.hero h1{font-size:2.5rem;margin:0.5rem 0;color:var(--accent)}.hero p{font-size:1.1rem;color:#aaa;margin:0.5rem 0 1.5rem}.btn{display:inline-block;padding:0.6rem 1rem;border-radius:6px;text-decoration:none;color:var(--accent);border:1px solid var(--accent);transition:all 0.18s ease;cursor:pointer;font-size:0.95rem}.btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(178,134,60,0.15)}.btn.primary{background:var(--accent);color:#0a0a0a;border-color:transparent;font-weight:600}.btn.primary:hover{background:#d4a55a}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.25rem}.card{background:var(--card);padding:1rem;border-radius:8px;border:1px solid rgba(255,255,255,0.03)}.card h3{color:var(--accent);margin-top:0}.site-footer{text-align:center;padding:1rem;background:transparent;border-top:1px solid rgba(255,255,255,0.03);margin-top:2rem;font-size:0.9rem;color:#888}.form{background:var(--card);padding:1.5rem;border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.form label{display:block;margin-bottom:0.75rem;font-weight:500}.form input,.form textarea,.form select{width:100%;padding:0.5rem;border-radius:6px;border:1px solid #222;background:var(--glass);color:#eee;font-family:inherit}.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 8px rgba(178,134,60,0.1)}.form select option{background:#1a1d20;color:#eee}.form select option:checked{background:rgba(178,134,60,0.3);color:#b2863c;font-weight:600}.form-actions{margin-top:1rem;display:flex;gap:0.5rem;flex-wrap:wrap}select,select option{background:#1a1d20;color:#eee}select option:checked{background:rgba(178,134,60,0.3);color:#b2863c;font-weight:600}.process{background:linear-gradient(180deg,#0f1113,#141619);padding:1rem;border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.process li{margin:0.5rem 0;padding-left:0.5rem}.login-wrap{min-height:80vh;display:flex;align-items:center;justify-content:center}.login-form{width:340px;padding:1.2rem;background:var(--card);border-radius:8px;border:1px solid rgba(178,134,60,0.1)}.login-form h2{color:var(--accent);text-align:center;margin-top:0}.login-form p{text-align:center;font-size:0.9rem;color:#888}.login-form a{color:var(--accent)}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;margin-top:1.5rem}.job-card{background:var(--card);border:1px solid rgba(178,134,60,0.2);padding:1.2rem;border-radius:8px;display:flex;flex-direction:column;gap:0.75rem;transition:all 0.18s ease}.job-card:hover{border-color:rgba(178,134,60,0.4);box-shadow:0 4px 12px rgba(178,134,60,0.08)}.job-card h3{margin:0;color:var(--accent);font-size:1.1rem}.job-card .muted{font-size:0.9rem;color:#888}.job-card p{margin:0.5rem 0;line-height:1.4;font-size:0.95rem}.job-card .btn{align-self:flex-start;margin-top:0.5rem}.filters{margin-bottom:1rem}.filters label{display:inline-block;margin-right:1rem}.filters select{padding:0.5rem;border-radius:6px;border:1px solid #222;background:var(--glass);color:#eee}#estimates .estimate,#applications .app,#jobs .job{background:var(--card);padding:0.9rem;border-radius:8px;margin-bottom:0.7rem;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(178,134,60,0.1)}.status{padding:0.25rem 0.5rem;border-radius:6px;background:#222;color:#ddd;font-size:0.85rem}.hero h1{font-size:1.8rem}.jobs-grid{grid-template-columns:1fr}.job-card{padding:1rem}.breadcrumbs{font-size:0.8rem;padding:0.5rem 0.75rem}}
/* Dashboard stat cards used across dashboards and lists */
.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1rem}
.stat-card{background:linear-gradient(135deg,rgba(178,134,60,0.06),rgba(178,134,60,0.01));border:1px solid rgba(178,134,60,0.12);padding:1rem;border-radius:8px;text-align:center;cursor:pointer;transition:all 0.18s ease}
.stat-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(178,134,60,0.08)}
.stat-card h3{color:var(--accent);margin:0;font-size:1.6rem}
.stat-card p{color:#888;margin:0.5rem 0 0 0}
/* Active stat card when a filter is selected */
.stat-card.active{outline:2px solid rgba(178,134,60,0.25);box-shadow:0 12px 30px rgba(178,134,60,0.12);transform:none}

.about{display:block}
.about-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:center;margin-top:1.5rem;padding:1.5rem;border-radius:14px;background:linear-gradient(135deg,rgba(178,134,60,0.12),rgba(20,22,25,0.2));border:1px solid rgba(178,134,60,0.18);position:relative;overflow:hidden}
.about-hero:before{content:'';position:absolute;right:-120px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(178,134,60,0.25),transparent 70%);opacity:0.6}
.about-kicker{text-transform:uppercase;letter-spacing:0.12em;font-size:0.75rem;color:#c9a060;margin:0 0 0.75rem 0}
.about-hero__text h1{font-size:2.6rem;margin:0 0 0.75rem 0;color:#f3ead7}
.about-hero__text p{color:#c9c9c9;line-height:1.6;margin:0 0 1.25rem 0}
.about-hero__actions{display:flex;gap:0.75rem;flex-wrap:wrap}
.about-hero__media{position:relative}
.about-hero__image{width:100%;border-radius:12px;border:1px solid rgba(178,134,60,0.2);box-shadow:0 18px 35px rgba(0,0,0,0.35)}
.about-hero__tile{position:absolute;left:-12px;bottom:-14px;background:rgba(20,22,25,0.95);border:1px solid rgba(178,134,60,0.2);border-radius:10px;padding:0.85rem 1rem;max-width:220px;box-shadow:0 12px 24px rgba(0,0,0,0.3)}
.about-hero__tile strong{display:block;color:#f0d9a6;font-size:0.95rem;margin-bottom:0.3rem}
.about-hero__tile span{color:#a7a7a7;font-size:0.8rem;line-height:1.4}
.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:2rem}
.about-card{background:var(--card);border:1px solid rgba(178,134,60,0.12);padding:1.25rem;border-radius:12px;box-shadow:0 10px 20px rgba(0,0,0,0.2)}
.about-card h2{margin:0 0 0.6rem 0;color:#f0d9a6;font-size:1.4rem}
.about-card p{margin:0;color:#b8b8b8;line-height:1.6}
.about-values{display:grid;grid-template-columns:1.1fr 1fr;gap:2rem;margin-top:2.5rem;align-items:center}
.about-values__text h2{margin:0 0 0.75rem 0;color:#f0d9a6;font-size:1.8rem}
.about-values__text p{color:#c0c0c0;line-height:1.6}
.about-values__text ul{list-style:none;padding:0;margin:1rem 0 0 0}
.about-values__text li{margin:0.6rem 0;padding-left:1.2rem;position:relative;color:#b9b9b9}
.about-values__text li:before{content:'•';position:absolute;left:0;color:#d4a55a}
.about-values__image{width:100%;border-radius:12px;border:1px solid rgba(178,134,60,0.18);box-shadow:0 18px 30px rgba(0,0,0,0.3)}
.about-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:2.5rem}
.about-stat{background:rgba(20,22,25,0.9);border:1px solid rgba(178,134,60,0.2);padding:1rem;border-radius:12px;text-align:center}
.about-stat h3{margin:0;color:#f0d9a6;font-size:1.4rem}
.about-stat p{margin:0.5rem 0 0 0;color:#a6a6a6;font-size:0.9rem}
.about-cta{margin-top:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-radius:12px;background:linear-gradient(120deg,rgba(178,134,60,0.18),rgba(20,22,25,0.3));border:1px solid rgba(178,134,60,0.2)}
.about-cta h2{margin:0 0 0.5rem 0;color:#f0d9a6}
.about-cta p{margin:0;color:#b9b9b9}
.reveal{opacity:0;transform:translateY(18px);animation:rise 0.7s ease forwards}
.reveal.delay-1{animation-delay:0.1s}
.reveal.delay-2{animation-delay:0.2s}
.reveal.delay-3{animation-delay:0.3s}
@keyframes rise{to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.about-hero,.about-values{grid-template-columns:1fr}.about-hero__tile{left:12px}}
@media(max-width:700px){.about-hero__text h1{font-size:2rem}.about-cta{flex-direction:column;align-items:flex-start}}
.about-card,.about-stat{position:relative;overflow:hidden;transform:translateY(0)}
.about-card:after,.about-stat:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(178,134,60,0.12),transparent);transform:translateX(-120%);animation:atfAboutShimmer 9s ease-in-out infinite;pointer-events:none}/* changed: gives About its own nonconflicting shimmer animation. */
.about-card:hover,.about-stat:hover{transform:translateY(-6px);box-shadow:0 18px 30px rgba(0,0,0,0.35)}
.about-grid .about-card:nth-child(2):after{animation-delay:0.3s}
.about-grid .about-card:nth-child(3):after{animation-delay:0.6s}
.about-stats .about-stat:nth-child(2):after{animation-delay:0.2s}
.about-stats .about-stat:nth-child(3):after{animation-delay:0.4s}
.about-stats .about-stat:nth-child(4):after{animation-delay:0.6s}
@keyframes atfAboutShimmer{0%,100%{transform:translateX(-120%)}50%{transform:translateX(120%)}}/* changed: preserves the About effect without global keyframe overrides. */
.careers{display:block}
.careers-hero{display:grid;grid-template-columns:1.1fr 0.9fr;gap:2rem;align-items:center;margin-top:1.5rem;padding:1.5rem;border-radius:14px;background:linear-gradient(135deg,rgba(178,134,60,0.12),rgba(20,22,25,0.2));border:1px solid rgba(178,134,60,0.18);position:relative;overflow:hidden}
.careers-hero:before{content:'';position:absolute;left:-120px;bottom:-120px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(178,134,60,0.2),transparent 70%)}
.careers-kicker{text-transform:uppercase;letter-spacing:0.12em;font-size:0.75rem;color:#c9a060;margin:0 0 0.75rem 0}
.careers-hero__text h1{font-size:2.4rem;margin:0 0 0.75rem 0;color:#f3ead7}
.careers-hero__text p{color:#c9c9c9;line-height:1.6;margin:0 0 1.25rem 0}
.careers-hero__actions{display:flex;gap:0.75rem;flex-wrap:wrap}
.careers-hero__stats{display:flex;gap:1.5rem;margin-top:1.25rem;flex-wrap:wrap}
.careers-hero__stats strong{display:block;color:#f0d9a6;font-size:1rem}
.careers-hero__stats span{color:#a7a7a7;font-size:0.85rem}
.careers-hero__image{width:100%;border-radius:12px;border:1px solid rgba(178,134,60,0.2);box-shadow:0 18px 35px rgba(0,0,0,0.35)}
.careers-openings{margin-top:2.5rem}
.careers-openings__header{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}
.careers-openings__header h2{margin:0;color:#f0d9a6}
.careers-openings__header p{margin:0;color:#b8b8b8}
.careers-count{background:rgba(20,22,25,0.9);border:1px solid rgba(178,134,60,0.2);padding:0.5rem 0.9rem;border-radius:999px;color:#f0d9a6;font-size:0.9rem}
.careers-filter{display:flex;gap:0.75rem;flex-wrap:wrap;margin:1rem 0 1.5rem 0}
.careers-filter input,.careers-filter select{flex:1;min-width:220px;padding:0.6rem 0.75rem;border-radius:8px;border:1px solid #222;background:var(--glass);color:#eee}
.careers-filter select{max-width:260px}
.job-empty{grid-column:1/-1;text-align:center;color:#888;padding:2rem;border:1px dashed rgba(178,134,60,0.2);border-radius:12px}
@media(max-width:900px){.careers-hero{grid-template-columns:1fr}.careers-hero__text h1{font-size:2rem}}
/* changed: removes retired duplicate language-toggle styling now that the shared header owns both controls. */
.education-card{padding:1rem;background:rgba(178,134,60,0.03);border:1px solid rgba(178,134,60,0.12);border-radius:8px;margin-bottom:0.75rem}
.education-card h4{color:var(--accent);font-size:0.95rem;margin:0 0 0.75rem 0}
.education-extra{margin-top:0.75rem}
.education-extra > summary{cursor:pointer;color:var(--accent);padding:0.5rem;background:rgba(178,134,60,0.05);border:1px solid rgba(178,134,60,0.2);border-radius:6px;list-style:none;transition:all 0.15s ease}
.education-extra > summary:hover{background:rgba(178,134,60,0.1)}
.education-extra[open] > summary{margin-bottom:0.75rem}
.file-note{display:block;margin-top:0.35rem;color:#888;font-size:0.85rem}
input[type="file"]{padding:0.65rem;background:var(--card);border:1px solid rgba(178,134,60,0.2);border-radius:6px;color:#e6e6e6;cursor:pointer;font-family:inherit;font-size:0.95rem}
input[type="file"]:hover{border-color:var(--accent)}
input[type="file"]::file-selector-button{background:var(--accent);color:#000;border:none;padding:0.4rem 0.75rem;border-radius:4px;margin-right:0.75rem;cursor:pointer;font-weight:600;font-size:0.85rem}
input[type="file"]::file-selector-button:hover{background:#c49a54}

/* INDEX PAGE ENHANCEMENTS */
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes weldingSpark{0%{box-shadow:0 0 8px rgba(255,200,0,0.8),15px 0 6px rgba(255,150,0,0.6),30px 0 4px rgba(255,100,0,0.4)}50%{box-shadow:8px 0 10px rgba(255,200,0,0.8),25px 0 6px rgba(255,150,0,0.6),40px 0 4px rgba(255,100,0,0.4),50px 2px 3px rgba(255,50,0,0.3)}100%{box-shadow:0 0 8px rgba(255,200,0,0.4),15px 0 6px rgba(255,150,0,0.2),30px 0 4px rgba(255,100,0,0.1)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideInRight{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes atfBackgroundShimmer{0%{background-position:200% center}100%{background-position:-200% center}}/* changed: reserves a unique name for background-position shimmer effects. */
.index-hero{position:relative;background:linear-gradient(135deg,rgba(178,134,60,0.15),rgba(20,22,25,0.4));padding:5rem 2rem;border-radius:16px;text-align:center;overflow:hidden;animation:fadeIn 1s ease-out;margin-bottom:3rem;border:1px solid rgba(178,134,60,0.2)}/* changed: removes the unrequested Home photograph while preserving the approved gradient and motion. */
.index-hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,rgba(178,134,60,0.15),transparent 70%);z-index:0}
.index-hero__content{position:relative;z-index:1;animation:fadeInUp 1.2s ease-out 0.3s both}
.index-hero h1{font-size:3.2rem;margin:0 0 1rem;color:#f5e6d3;text-shadow:2px 2px 8px rgba(0,0,0,0.6);font-weight:700;letter-spacing:-0.02em}
.index-hero p{font-size:1.3rem;color:#d4d4d4;margin:0 auto 2rem;max-width:700px;text-shadow:1px 1px 4px rgba(0,0,0,0.5)}
.index-hero .btn-group{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;animation:fadeInUp 1.4s ease-out 0.6s both}
.index-hero .btn{font-size:1.05rem;padding:0.75rem 1.5rem}
.index-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:3rem 0;animation:fadeInUp 1s ease-out 0.4s both}
.stat-box{background:linear-gradient(135deg,rgba(178,134,60,0.08),rgba(20,22,25,0.3));padding:2rem;border-radius:12px;text-align:center;border:1px solid rgba(178,134,60,0.2);transition:all 0.3s ease}
.stat-box:hover{transform:translateY(-8px);box-shadow:0 12px 32px rgba(178,134,60,0.15);border-color:rgba(178,134,60,0.4)}
.stat-box h3{font-size:2.5rem;color:var(--accent);margin:0 0 0.5rem;font-weight:700}
.stat-box p{color:#aaa;margin:0;font-size:0.95rem}
.index-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin:3rem 0}
.showcase-card{background:var(--card);border-radius:12px;overflow:hidden;border:1px solid rgba(178,134,60,0.15);transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275);animation:fadeInUp 1s ease-out both;position:relative}
.showcase-card:nth-child(1){animation-delay:0.2s}
.showcase-card:nth-child(2){animation-delay:0.4s}
.showcase-card:nth-child(3){animation-delay:0.6s}
.showcase-card:hover{transform:translateY(-16px) scale(1.03);box-shadow:0 24px 60px rgba(0,0,0,0.5);border-color:rgba(178,134,60,0.6)}
.showcase-card::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(178,134,60,0.05));opacity:0;transition:opacity 0.4s ease;pointer-events:none}
.showcase-card:hover::after{opacity:1}
.showcase-card__image{width:100%;height:240px;object-fit:cover;background:#1a1d20;transition:transform 0.5s ease}
.showcase-card:hover .showcase-card__image{transform:scale(1.08)}
.showcase-card__content{padding:1.5rem;position:relative;z-index:1}
.showcase-card__content h3{color:var(--accent);margin:0 0 0.75rem;font-size:1.3rem;transition:color 0.3s ease}
.showcase-card:hover .showcase-card__content h3{color:#d4a55a}
.showcase-card__content p{color:#bbb;line-height:1.6;margin:0 0 1.25rem}
.showcase-card__content .btn{transition:all 0.3s ease}
.showcase-card:hover .showcase-card__content .btn{transform:translateX(5px);background:var(--accent);color:#000}
.section-header{text-align:center;margin:3rem 0 2rem;animation:fadeInUp 1s ease-out both}
.section-header h2{font-size:2.2rem;color:#f0e6d8;margin:0 0 0.5rem}
.section-header p{color:#999;font-size:1.05rem;margin:0}
.index-cta{background:linear-gradient(135deg,rgba(178,134,60,0.2),rgba(20,22,25,0.5));padding:4rem 2rem;border-radius:16px;text-align:center;margin:4rem 0 2rem;border:1px solid rgba(178,134,60,0.25);animation:fadeInUp 1s ease-out 0.8s both}
.index-cta h2{font-size:2rem;color:#f0e6d8;margin:0 0 1rem}
.index-cta p{font-size:1.1rem;color:#bbb;margin:0 0 1.5rem;max-width:600px;margin-left:auto;margin-right:auto}
.floating{animation:float 3s ease-in-out infinite}
.cta-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0 3rem;animation:fadeInUp 1s ease-out 0.6s both}
.cta-card{position:relative;background:linear-gradient(135deg,rgba(178,134,60,0.08),rgba(20,22,25,0.4));padding:2.5rem;border-radius:16px;border:1px solid rgba(178,134,60,0.2);text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275);overflow:hidden}
.cta-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(178,134,60,0.15),transparent 70%);opacity:0;transition:opacity 0.4s ease}
.cta-card:hover{transform:translateY(-12px) scale(1.02);border-color:rgba(178,134,60,0.5);box-shadow:0 20px 50px rgba(178,134,60,0.2)}
.cta-card:hover::before{opacity:1}
.cta-card--primary{background:linear-gradient(135deg,rgba(178,134,60,0.15),rgba(20,22,25,0.4))}
.cta-card--secondary{background:linear-gradient(135deg,rgba(60,134,178,0.12),rgba(20,22,25,0.4));border-color:rgba(60,134,178,0.2)}
.cta-card--secondary:hover{border-color:rgba(60,134,178,0.5);box-shadow:0 20px 50px rgba(60,134,178,0.15)}
.cta-card__icon{font-size:3.5rem;margin-bottom:1rem;transition:transform 0.4s ease;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.3))}
.cta-card:hover .cta-card__icon{transform:scale(1.15) rotate(5deg)}
.cta-card h3{color:var(--accent);font-size:1.5rem;margin:0 0 0.75rem;transition:color 0.3s ease}
.cta-card--secondary h3{color:#5a9fc8}
.cta-card p{color:#bbb;line-height:1.6;margin:0;font-size:0.95rem}
.cta-card__arrow{position:absolute;bottom:1.5rem;right:2rem;font-size:1.5rem;color:var(--accent);opacity:0.5;transition:all 0.3s ease}
.cta-card--secondary .cta-card__arrow{color:#5a9fc8}
.cta-card:hover .cta-card__arrow{opacity:1;transform:translateX(8px)}

/* IMPROVED NAVIGATION BAR */
.site-header{background:linear-gradient(90deg,rgba(15,17,19,0.95),rgba(20,22,25,0.95));backdrop-filter:blur(10px);box-shadow:0 4px 20px rgba(0,0,0,0.4);position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(178,134,60,0.15)}
.nav{display:flex;gap:0.25rem;align-items:center;flex-wrap:wrap}
.nav a{color:#ddd;text-decoration:none;transition:all 0.18s ease;border-radius:6px}
.nav a:not(.cta){position:relative;font-weight:500;letter-spacing:0.01em;padding:0.5rem 1rem}
.nav a:not(.cta)::before{content:'';position:absolute;bottom:-2px;left:50%;width:0;height:4px;background:radial-gradient(circle,rgba(255,200,0,0.8),transparent 70%);box-shadow:0 0 0 rgba(255,200,0,0),0 0 0 rgba(255,150,0,0),0 0 0 rgba(255,100,0,0);opacity:0;transition:opacity 0.3s ease}
.nav a:not(.cta)::after{content:'';position:absolute;bottom:0;left:50%;right:50%;height:2px;background:var(--accent);transition:all 0.3s ease;opacity:0;box-shadow:0 0 8px rgba(178,134,60,0.5)}
.nav a:not(.cta):hover::before{opacity:1;animation:weldingSpark 0.6s ease-in-out infinite;left:0.75rem;width:calc(100% - 1.5rem)}
.nav a:not(.cta):hover::after{left:0.75rem;right:0.75rem;opacity:1;box-shadow:0 0 12px rgba(178,134,60,0.8),0 0 6px rgba(255,150,0,0.6)}
.dropdown{display:inline-block;position:relative}
.dropbtn{background:transparent;border:0;color:#ddd;font-weight:500;letter-spacing:0.01em;padding:0.5rem 1rem;border-radius:6px;transition:all 0.3s ease;font-family:inherit;cursor:pointer;font-size:1rem}
.dropbtn:hover{background:rgba(178,134,60,0.12)}
.dropdown-content{display:none;position:absolute;right:0;margin-top:0;padding-top:0.5rem;z-index:100}
.dropdown-content::before{content:'';position:absolute;top:0;left:0;right:0;height:0.5rem;background:transparent}
.dropdown-content>div{background:var(--card);border:1px solid rgba(178,134,60,0.2);border-radius:6px;min-width:260px;max-height:500px;overflow-y:auto;box-shadow:0 6px 18px rgba(0,0,0,0.6);scrollbar-width:thin;scrollbar-color:rgba(178,134,60,0.8) rgba(20,22,25,0.9)}
.dropdown-content>div::-webkit-scrollbar{width:10px;background:rgba(20,22,25,0.9)}
.dropdown-content>div::-webkit-scrollbar-track{background:rgba(20,22,25,0.9);border-radius:0 6px 6px 0}
.dropdown-content>div::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(178,134,60,0.9),rgba(178,134,60,0.6));border-radius:5px;border:2px solid rgba(20,22,25,0.9)}
.dropdown-content>div::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--accent),rgba(178,134,60,0.8));box-shadow:0 0 6px rgba(178,134,60,0.5)}
.dropdown-content a{display:block;padding:0.6rem 0.9rem;color:#e6e6e6;text-decoration:none;border-left:3px solid transparent;transition:all 0.2s ease}
.dropdown-content a:hover{background:rgba(178,134,60,0.2);border-left-color:var(--accent);padding-left:1.2rem}
.dropdown:hover .dropdown-content{display:block}
.nav a.cta{box-shadow:0 4px 12px rgba(178,134,60,0.3);position:relative;overflow:hidden}
.nav a.cta::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,0.2);transform:translate(-50%,-50%);transition:width 0.5s ease,height 0.5s ease}
.nav a.cta:hover::before{width:300px;height:300px}
.nav a.cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(178,134,60,0.5)}

/* SERVICE PAGE ENHANCEMENTS */
.service-hero{position:relative;background:linear-gradient(135deg,rgba(178,134,60,0.15),rgba(20,22,25,0.4));border-radius:16px;padding:4rem 2rem;text-align:center;margin-bottom:3rem;overflow:hidden;border:1px solid rgba(178,134,60,0.25);box-shadow:0 12px 40px rgba(0,0,0,0.3)}
.service-hero::before{content:'';position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(178,134,60,0.2),transparent 70%);border-radius:50%;animation:float 6s ease-in-out infinite}
.service-hero::after{content:'';position:absolute;bottom:-30%;left:-5%;width:350px;height:350px;background:radial-gradient(circle,rgba(178,134,60,0.15),transparent 70%);border-radius:50%;animation:float 8s ease-in-out infinite reverse}
.service-hero h1{font-size:3rem;margin:0 0 1rem;color:#f3ead7;text-shadow:0 2px 10px rgba(0,0,0,0.5);position:relative;z-index:1;animation:fadeInUp 0.8s ease}
.service-hero__subtitle{font-size:1.3rem;color:#c9c9c9;margin:0 0 2rem;max-width:700px;margin-left:auto;margin-right:auto;position:relative;z-index:1;animation:fadeInUp 0.8s ease 0.2s backwards}
.service-hero__cta{position:relative;z-index:1;animation:fadeInUp 0.8s ease 0.4s backwards}
.service-content{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:3rem}
.service-section{background:linear-gradient(135deg,rgba(20,22,25,0.6),rgba(15,17,19,0.8));border:1px solid rgba(178,134,60,0.15);border-radius:12px;padding:2rem;position:relative;overflow:hidden;animation:fadeInUp 0.8s ease}
.service-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(120deg,transparent,rgba(178,134,60,0.08),transparent);transform:translateX(-100%);animation:atfServiceShimmer 3s ease-in-out infinite}/* changed: keeps service shimmer independent from other page effects. */
.service-section h2{color:var(--accent);font-size:1.8rem;margin:0 0 1.5rem;border-bottom:2px solid rgba(178,134,60,0.3);padding-bottom:0.75rem;display:flex;align-items:center;gap:0.75rem}
.service-section h2::before{content:'';display:inline-block;width:8px;height:32px;background:linear-gradient(180deg,var(--accent),transparent);border-radius:4px}
.service-section h3{color:#f0d9a6;font-size:1.3rem;margin:2rem 0 1rem;position:relative;padding-left:1.5rem}
.service-section h3::before{content:'▸';position:absolute;left:0;color:var(--accent);font-size:1.2rem}
.service-section p{color:#c0c0c0;line-height:1.7;margin-bottom:1.5rem}
.service-section ul{list-style:none;padding:0;margin:1rem 0;display:grid;gap:0.75rem}
.service-section ul li{color:#b9b9b9;padding:0.75rem 1rem 0.75rem 2.5rem;position:relative;background:rgba(178,134,60,0.05);border-left:3px solid rgba(178,134,60,0.3);border-radius:6px;transition:all 0.3s ease}
.service-section ul li::before{content:'✓';position:absolute;left:0.75rem;color:var(--accent);font-weight:bold;font-size:1.1rem}
.service-section ul li:hover{background:rgba(178,134,60,0.12);border-left-color:var(--accent);transform:translateX(8px)}
.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}
.service-feature{background:linear-gradient(135deg,rgba(178,134,60,0.08),rgba(20,22,25,0.5));border:1px solid rgba(178,134,60,0.2);border-radius:12px;padding:1.5rem;text-align:center;transition:all 0.4s ease;position:relative;overflow:hidden}
.service-feature::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,rgba(178,134,60,0.15),transparent 70%);opacity:0;transition:opacity 0.4s ease}
.service-feature:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 15px 40px rgba(178,134,60,0.2);border-color:var(--accent)}
.service-feature:hover::before{opacity:1}
.service-feature__icon{font-size:2.5rem;margin-bottom:1rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.3));transition:transform 0.4s ease}
.service-feature:hover .service-feature__icon{transform:scale(1.15) rotate(5deg)}
.service-feature h3{color:var(--accent);font-size:1.2rem;margin:0 0 0.5rem}
.service-feature p{color:#b8b8b8;font-size:0.9rem;margin:0;line-height:1.5}
.service-image-section{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin:3rem 0;padding:2rem;background:linear-gradient(135deg,rgba(20,22,25,0.8),rgba(15,17,19,0.6));border-radius:12px;border:1px solid rgba(178,134,60,0.15)}
.service-image-section img{width:100%;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,0.4);border:1px solid rgba(178,134,60,0.2);transition:transform 0.4s ease}
.service-image-section img:hover{transform:scale(1.05) rotate(1deg)}
.service-cta-section{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,rgba(178,134,60,0.18),rgba(20,22,25,0.5));border-radius:16px;margin:3rem 0;border:1px solid rgba(178,134,60,0.25);position:relative;overflow:hidden}
.service-cta-section::before{content:'';position:absolute;top:50%;left:50%;width:500px;height:500px;background:radial-gradient(circle,rgba(178,134,60,0.15),transparent 60%);transform:translate(-50%,-50%);animation:pulse 4s ease-in-out infinite}
.service-cta-section h2{color:#f3ead7;font-size:2rem;margin:0 0 1rem;position:relative;z-index:1}
.service-cta-section p{color:#c9c9c9;font-size:1.1rem;margin:0 0 2rem;position:relative;z-index:1}
.service-cta-section .btn{position:relative;z-index:1}
@keyframes pulse{0%,100%{opacity:0.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:0.8;transform:translate(-50%,-50%) scale(1.1)}}
@keyframes atfServiceShimmer{0%{transform:translateX(-100%)}100%{transform:translateX(200%)}}/* changed: preserves the visible service sweep with a unique keyframe name. */

/* MOBILE & TABLET RESPONSIVE */
@media(max-width:1024px){.service-image-section{grid-template-columns:1fr;gap:1.5rem}.service-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.service-hero h1{font-size:2.5rem}.service-section h2{font-size:1.5rem}}
@media(max-width:768px){.service-hero{padding:3rem 1.5rem}.service-hero h1{font-size:2rem}.service-hero__subtitle{font-size:1.1rem}.service-section{padding:1.5rem}.service-section h2{font-size:1.4rem}.service-grid{grid-template-columns:1fr}.dropdown-content{min-width:100%;left:0;right:0}.nav{gap:0}.nav a:not(.cta){padding:0.75rem 1rem}}
@media(max-width:800px){.site-header{justify-content:center;position:relative}.hamburger{display:block;position:absolute;left:1rem;top:50%;transform:translateY(-50%)}.brand{margin:0}.nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.98);flex-direction:column;flex-wrap:nowrap;padding:0;margin:0;z-index:999;overflow:hidden;background-image:linear-gradient(180deg,rgba(0,0,0,0.98),rgba(20,22,25,0.95));width:100%;height:100vh;font-size:0.95rem}.nav.open{display:flex}.nav .nav-close{display:block!important;position:absolute;top:0.75rem;right:0.75rem;background:transparent;border:0;color:#ddd;font-size:1.3rem;cursor:pointer;padding:0;margin:0;min-height:auto;width:auto}.nav a{padding:0.75rem 1rem;font-size:1rem;width:100%;box-sizing:border-box;border-radius:0;border-bottom:1px solid rgba(178,134,60,0.08)}.dropdown{width:100%;position:static}.dropbtn{width:100%;text-align:left;padding:0.75rem 1rem;border-radius:0;background:rgba(178,134,60,0.05);border-bottom:1px solid rgba(178,134,60,0.1)}.dropdown-content{position:static;box-shadow:none;padding-top:0;z-index:auto;max-height:0;overflow:hidden;transition:max-height 0.3s ease}.dropdown-content::before{display:none}.dropdown-content>div{background:rgba(15,17,19,0.6);margin:0;border:none;border-radius:0;box-shadow:none;width:100%;max-width:100%}.dropdown-content a{padding:0.65rem 1.5rem;border-left:none;border-bottom:1px solid rgba(178,134,60,0.08);width:100%;box-sizing:border-box;font-size:0.9rem}.dropdown-content a:hover{padding-left:2rem;background:rgba(178,134,60,0.15)}.nav .dropdown:hover .dropdown-content{display:none}.nav.open .dropdown-content{max-height:500px}}

/* INVENTORY MANAGEMENT STYLES */
.inventory-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin-top:1.5rem}
.inventory-item{background:var(--card);border:1px solid rgba(178,134,60,0.15);border-radius:10px;padding:1.5rem;transition:all 0.3s ease;overflow:hidden;position:relative}
.inventory-item::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),transparent);opacity:0;transition:opacity 0.3s ease}
.inventory-item:hover{transform:translateY(-6px);border-color:rgba(178,134,60,0.35);box-shadow:0 12px 30px rgba(178,134,60,0.12);background:linear-gradient(135deg,rgba(178,134,60,0.08),rgba(20,22,25,0.8))}
.inventory-item:hover::before{opacity:1}
.inventory-item.alert-low-stock{border-color:rgba(255,100,0,0.35);background:linear-gradient(135deg,rgba(255,100,0,0.08),rgba(20,22,25,0.8))}
.inventory-item.alert-low-stock::before{background:linear-gradient(90deg,#ff6b00,transparent)}
.inventory-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid rgba(178,134,60,0.1)}
.inventory-header h4{margin:0;color:#f0d9a6;font-size:1.1rem;flex:1}
.badge{display:inline-block;padding:0.35rem 0.75rem;border-radius:999px;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;white-space:nowrap}
.badge.ok{background:rgba(76,175,80,0.2);color:#4caf50;border:1px solid rgba(76,175,80,0.4)}
.badge.alert{background:rgba(255,100,0,0.2);color:#ff6b00;border:1px solid rgba(255,100,0,0.4)}
.inventory-details{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem 1.25rem;margin-bottom:1.25rem;font-size:0.95rem}
.detail-row{display:flex;justify-content:space-between;align-items:center;gap:0.75rem;padding:0.5rem 0}
.detail-row .label{color:#888;font-weight:500;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.03em;flex:1}
.detail-row .value{color:#e0e0e0;font-weight:500;flex:1.5;text-align:right}
.inventory-actions{display:flex;gap:0.5rem;flex-wrap:wrap;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(178,134,60,0.1)}
.btn.small{padding:0.4rem 0.85rem;font-size:0.8rem;border-radius:4px;flex:1;min-width:90px;transition:all 0.2s ease;background:#2196f3;color:white;border:1px solid #2196f3;font-weight:600;cursor:pointer}
.btn.small:hover{background:#1976d2;border-color:#1976d2;box-shadow:0 4px 12px rgba(33,150,243,0.3);transform:translateY(-2px)}
.btn.small.delete{color:white;background:#f44336;border-color:#f44336}
.btn.small.delete:hover{background:#d32f2f;border-color:#d32f2f;box-shadow:0 4px 12px rgba(244,67,54,0.3)}
.inventory-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.5rem 0;padding:1.25rem;background:rgba(178,134,60,0.05);border:1px solid rgba(178,134,60,0.15);border-radius:10px}
.inventory-controls .form-group{margin:0}
.inventory-controls label{font-size:0.85rem;color:#c0c0c0;font-weight:600;text-transform:uppercase;letter-spacing:0.02em;margin-bottom:0.5rem;display:block}
.inventory-controls select{padding:0.65rem;font-size:0.9rem;background:var(--card);border:1px solid rgba(178,134,60,0.2);color:#e6e6e6;border-radius:6px;transition:all 0.2s ease}
.inventory-controls select:hover{border-color:rgba(178,134,60,0.4)}
.inventory-controls select:focus{border-color:var(--accent);box-shadow:0 0 8px rgba(178,134,60,0.15);outline:none}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}
.stat-card{background:linear-gradient(135deg,rgba(178,134,60,0.08),rgba(20,22,25,0.4));border:1px solid rgba(178,134,60,0.2);border-radius:12px;padding:1.5rem;text-align:center;transition:all 0.3s ease;position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,rgba(178,134,60,0.1),transparent 70%);opacity:0;transition:opacity 0.3s ease}
.stat-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px rgba(178,134,60,0.15);border-color:rgba(178,134,60,0.4);background:linear-gradient(135deg,rgba(178,134,60,0.12),rgba(20,22,25,0.5))}
.stat-card:hover::before{opacity:1}
.stat-card.alert{border-color:rgba(255,100,0,0.35);background:linear-gradient(135deg,rgba(255,100,0,0.08),rgba(20,22,25,0.4))}
.stat-card.alert:hover{box-shadow:0 12px 32px rgba(255,100,0,0.15)}
.stat-card h3{color:var(--accent);margin:0 0 0.5rem;font-size:2rem;font-weight:700}
.stat-card.alert h3{color:#ff6b00}
.stat-card p{color:#888;margin:0;font-size:0.9rem}
.category-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.35rem}
.category-list li{color:#b8b8b8;font-size:0.9rem;padding-left:0.75rem;position:relative}
.category-list li::before{content:'•';position:absolute;left:0;color:var(--accent)}
.low-stock-section{margin-top:2rem;padding:1.5rem;background:rgba(255,100,0,0.05);border:1px solid rgba(255,100,0,0.2);border-radius:10px}
.low-stock-section h3{color:#ff6b00;margin-top:0;font-size:1.3rem}
.low-stock-item{background:var(--card);padding:1rem;margin-bottom:0.75rem;border-radius:8px;border-left:4px solid rgba(255,100,0,0.4);display:flex;justify-content:space-between;align-items:center;gap:1rem}
.low-stock-item div{flex:1}
.low-stock-item strong{color:#f0d9a6;display:block;margin-bottom:0.35rem}
.low-stock-item small{color:#888}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.form-group{display:flex;flex-direction:column}
.form-group label{font-weight:600;color:#c0c0c0;font-size:0.9rem;margin-bottom:0.5rem;text-transform:uppercase;letter-spacing:0.01em}
.form-group input,.form-group select{padding:0.75rem;border:1px solid rgba(178,134,60,0.2);background:rgba(178,134,60,0.03);color:#e6e6e6;border-radius:6px;font-family:inherit;font-size:0.95rem;transition:all 0.2s ease}
.form-group input:focus,.form-group select:focus{border-color:var(--accent);background:rgba(178,134,60,0.08);box-shadow:0 0 8px rgba(178,134,60,0.15);outline:none}
.form-group input::placeholder{color:rgba(230,230,230,0.5)}
.alert{background:rgba(255,100,0,0.1);border:1px solid rgba(255,100,0,0.2);color:#ff6b00;padding:1rem;border-radius:6px;margin:1rem 0}
.alert.alert-low-stock::before{color:#ff6b00}
.section{margin-bottom:2.5rem;padding:2rem;background:linear-gradient(135deg,rgba(20,22,25,0.6),rgba(15,17,19,0.8));border:1px solid rgba(178,134,60,0.15);border-radius:12px;position:relative;overflow:hidden}
.section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(120deg,transparent,rgba(178,134,60,0.05),transparent);transform:translateX(-100%);animation:atfSectionShimmer 3s ease-in-out infinite;pointer-events:none}/* changed: assigns general sections their own shimmer timing. */
.section h2{color:var(--accent);font-size:1.6rem;margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(178,134,60,0.2);position:relative;z-index:1}
.section p{color:#b8b8b8;line-height:1.6;position:relative;z-index:1}
.section .subtitle{font-size:1.05rem;color:#999;margin:0.5rem 0 0}
.content h1{font-size:2.4rem;color:#f0e6d8;margin:0 0 0.5rem}
.content .subtitle{font-size:1.1rem;color:#999;margin:0 0 2rem}
footer{background:linear-gradient(180deg,rgba(15,17,19,0.95),rgba(10,10,12,0.95));border-top:1px solid rgba(178,134,60,0.15);padding:2rem 1rem;color:#888;text-align:center}
.footer-content{max-width:1100px;margin:0 auto}
.footer-nav{display:flex;gap:1.5rem;justify-content:center;margin-top:1rem;flex-wrap:wrap}
.footer-nav a{color:#aaa;text-decoration:none;transition:color 0.2s ease;font-size:0.9rem}
.footer-nav a:hover{color:var(--accent)}

/* Enhanced button styles for better readability across all pages */
.btn-success{background:#4caf50 !important;color:white !important;border:2px solid #4caf50 !important;font-weight:700 !important;padding:0.75rem 1.25rem !important;font-size:0.95rem !important;border-radius:6px !important;cursor:pointer !important;transition:all 0.2s ease !important}
.btn-success:hover{background:#45a049 !important;box-shadow:0 0 12px rgba(76,175,80,0.5) !important;transform:translateY(-2px) !important}

.btn-danger{background:#f44336 !important;color:white !important;border:2px solid #f44336 !important;font-weight:700 !important;padding:0.75rem 1.25rem !important;font-size:0.95rem !important;border-radius:6px !important;cursor:pointer !important;transition:all 0.2s ease !important}
.btn-danger:hover{background:#da190b !important;box-shadow:0 0 12px rgba(244,67,54,0.5) !important;transform:translateY(-2px) !important}

.btn-info{background:#2196f3 !important;color:white !important;border:2px solid #2196f3 !important;font-weight:700 !important;padding:0.75rem 1.25rem !important;font-size:0.95rem !important;border-radius:6px !important;cursor:pointer !important;transition:all 0.2s ease !important}
.btn-info:hover{background:#0b7dda !important;box-shadow:0 0 12px rgba(33,150,243,0.5) !important;transform:translateY(-2px) !important}

.btn-warning{background:#ff9800 !important;color:white !important;border:2px solid #ff9800 !important;font-weight:700 !important;padding:0.75rem 1.25rem !important;font-size:0.95rem !important;border-radius:6px !important;cursor:pointer !important;transition:all 0.2s ease !important}
.btn-warning:hover{background:#e68900 !important;box-shadow:0 0 12px rgba(255,152,0,0.5) !important;transform:translateY(-2px) !important}

/* Action button pairs - for approve/reject, accept/deny etc */
button[style*="background: #4caf50"]{font-weight:700 !important;box-shadow:0 4px 8px rgba(76,175,80,0.3) !important}
button[style*="background: #f44336"]{font-weight:700 !important;box-shadow:0 4px 8px rgba(244,67,54,0.3) !important}

@keyframes atfSectionShimmer{0%{transform:translateX(-100%)}100%{transform:translateX(200%)}}/* changed: preserves general section sweeps without overriding service effects. */
:root{--atf-ink:#0a0c0e;--atf-panel:#15191d;--atf-gold:#d1a85b;--atf-line:rgba(209,168,91,0.22);--atf-copy:#d8d8d5}/* changed: adds focused industrial design tokens for shared components. */
*{font-family:Bahnschrift,'Trebuchet MS',sans-serif}/* changed: applies a sturdy industrial typeface using local fonts. */
[hidden]{display:none!important}/* changed: reliably hides inactive tabs, dialogs, and feedback without Home-card settings. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}/* changed: provides accessible text without visual duplication. */
.site-header{position:sticky;top:0;z-index:1100;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:118px;padding:.28rem clamp(1rem,3vw,2.5rem) .48rem;gap:.12rem;background:linear-gradient(105deg,rgba(6,8,10,.98),rgba(18,21,24,.96));border-bottom:1px solid var(--atf-line);box-shadow:0 12px 30px rgba(0,0,0,.25)}/* changed: stacks one centered logo row above one centered navigation row. */
.atf-header__brand-row{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:76px}/* changed: keeps the logo centered independently from navigation and mobile controls. */
.atf-brand{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:70px;margin:0 auto}/* changed: keeps one wide theme-aware logo centered in the existing brand row. */
.atf-brand__logo{display:block;width:205px;height:70px;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.42))}/* changed: scales the shared logo consistently without distorting its landscape proportions. */
.atf-brand__logo--dark{filter:drop-shadow(0 0 5px rgba(255,255,255,.2)) drop-shadow(0 8px 12px rgba(0,0,0,.42))}/* changed: adds restrained contrast around the transparent dark-mode flag and silver wordmark. */
.atf-brand__logo--light{display:none}/* changed: hides the dark-wordmark version until light mode is active. */
.atf-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.2rem;width:100%;margin:0;min-width:0}/* changed: centers public and authenticated navigation directly beneath the logo. */
.atf-nav>a,.atf-nav>button,.atf-disclosure__trigger,.atf-logout{position:relative;appearance:none;border:0;background:transparent;color:#eee;text-decoration:none;padding:.72rem .68rem;font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.055em;line-height:1.2;white-space:nowrap;cursor:pointer;border-radius:0;overflow:visible;transition:color .18s ease}/* changed: aligns links, dropdowns, theme, and Logout without generic button boxes. */
.atf-nav>a::before,.atf-nav>button::before,.atf-disclosure__trigger::before,.atf-logout::before{content:'';position:absolute;left:.65rem;right:.65rem;bottom:.18rem;height:3px;border-radius:999px;background:radial-gradient(circle,rgba(255,214,112,.95),rgba(255,142,38,.28) 55%,transparent 75%);opacity:0;pointer-events:none;transform:scaleX(.25);transform-origin:center;transition:opacity .16s ease,transform .16s ease}/* changed: provides the same welding-spark rail for every navigation action including Services and Logout. */
.atf-nav>a:hover::before,.atf-nav>button:hover::before,.atf-disclosure__trigger:hover::before,.atf-logout:hover::before,.atf-nav>a:focus-visible::before,.atf-nav>button:focus-visible::before,.atf-disclosure__trigger:focus-visible::before,.atf-logout:focus-visible::before{opacity:1;transform:scaleX(1);animation:weldingSpark .6s ease-in-out infinite}/* changed: runs sparks on mouse and keyboard interaction without a hover box. */
.atf-nav>a:hover,.atf-nav>button:hover,.atf-disclosure__trigger:hover,.atf-logout:hover{color:#fff4d8;background:transparent;outline:0}/* changed: removes the surrounding hover box while retaining the spark and color response. */
.atf-nav>a:focus-visible,.atf-nav>button:focus-visible,.atf-disclosure__trigger:focus-visible,.atf-logout:focus-visible{color:#fff4d8;background:transparent;outline:2px solid var(--atf-gold);outline-offset:2px}/* changed: preserves a clear accessible keyboard focus indicator independently from hover. */
.atf-nav>a[aria-current="page"]{color:var(--atf-gold);background:rgba(209,168,91,.1)}/* changed: identifies the current shared destination. */
.atf-language-menu{position:relative}/* changed: anchors the compact Language dropdown to its trigger. */
.atf-language-menu__trigger,.atf-services__trigger{display:flex;align-items:center;justify-content:center;gap:.35rem}/* changed: aligns each disclosure label and indicator consistently. */
.atf-language-menu__panel{position:absolute;right:0;top:calc(100% + .35rem);z-index:3;display:grid;min-width:165px;padding:.4rem;visibility:hidden;opacity:0;transform:translateY(-6px);background:rgba(13,16,19,.99);border:1px solid var(--atf-line);border-radius:8px;box-shadow:0 18px 40px rgba(0,0,0,.52);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}/* changed: presents English and Spanish inside one compact menu. */
.atf-language-menu.is-open .atf-language-menu__panel{visibility:visible;opacity:1;transform:translateY(0)}/* changed: reveals the Language menu through its disclosure state. */
.atf-language-menu__panel .atf-language{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.62rem .72rem;border:0;border-radius:5px;background:transparent;color:#d7dcdd;font-size:.76rem;font-weight:700;letter-spacing:.055em;cursor:pointer}/* changed: makes both language choices clear keyboard and touch targets. */
.atf-language-menu__panel .atf-language:hover,.atf-language-menu__panel .atf-language:focus-visible{color:#fff4d8;background:rgba(209,168,91,.13);outline:1px solid rgba(209,168,91,.28)}/* changed: adds clear Language-option feedback. */
.atf-language-menu__panel .atf-language[aria-pressed="true"]{color:var(--atf-gold);background:rgba(209,168,91,.1)}/* changed: highlights the currently selected language. */
.atf-language-menu__panel .atf-language[aria-pressed="true"]::after{content:'\2713';margin-left:.8rem}/* changed: adds a stable encoded selected-language checkmark. */
.atf-services{position:static}/* changed: lets the grouped dropdown align to the full header. */
.atf-services__panel{position:absolute;left:50%;top:calc(100% + 1px);width:min(1050px,calc(100vw - 2rem));display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;padding:1.35rem;visibility:hidden;opacity:0;transform:translate(-50%,-8px);background:rgba(13,16,19,.985);border:1px solid var(--atf-line);border-radius:0 0 14px 14px;box-shadow:0 24px 55px rgba(0,0,0,.55);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}/* changed: turns the long service list into a grouped megamenu. */
.atf-services.is-open .atf-services__panel{visibility:visible;opacity:1;transform:translate(-50%,0)}/* changed: reveals the grouped menu through one disclosure state. */
.atf-services__panel section{padding:.35rem .75rem;border-left:1px solid rgba(209,168,91,.14)}/* changed: separates service categories without heavy boxes. */
.atf-services__panel h2{margin:0 0 .7rem;color:var(--atf-gold);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}/* changed: labels each service category clearly. */
.atf-services__panel a{display:block;padding:.42rem .1rem;color:#cfd2d3;text-decoration:none;font-size:.86rem;line-height:1.25}/* changed: creates compact scan-friendly service links. */
.atf-services__panel a:hover,.atf-services__panel a:focus-visible{color:#fff4d8;transform:translateX(4px);outline:none}/* changed: preserves responsive link feedback without expensive effects. */
.atf-menu-toggle{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%);border:1px solid var(--atf-line);border-radius:6px;background:rgba(209,168,91,.08);color:#eee;font-size:1.25rem;padding:.55rem .7rem;cursor:pointer}/* changed: preserves a perfectly centered logo while exposing the mobile navigation control. */
.atf-workspace{min-height:70vh}/* changed: gives retained auth pages a consistent working area. */
.atf-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin:2.25rem 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--atf-line)}/* changed: creates a consistent operational page header. */
.atf-page-heading h1{margin:.15rem 0 .35rem;color:#f2eadb;font-size:clamp(2rem,5vw,3.1rem);letter-spacing:-.035em}/* changed: emphasizes each focused workspace title. */
.atf-page-heading p{margin:0;color:#aeb3b5}/* changed: keeps supporting workspace copy readable. */
.atf-eyebrow{margin:0;color:var(--atf-gold)!important;font-size:.72rem!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase}/* changed: adds a consistent industrial context label. */
.atf-subnav{display:inline-flex;gap:.2rem;margin-top:1.25rem;padding:.28rem;background:#0d1012;border:1px solid var(--atf-line);border-radius:8px}/* changed: separates application tabs from the primary navigation. */
.atf-subnav a,.atf-subnav button{appearance:none;padding:.6rem .9rem;border:0;background:transparent;color:#aeb3b5;text-decoration:none;border-radius:5px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}/* changed: styles consolidated button tabs and retained links consistently. */
.atf-subnav a[aria-current="page"],.atf-subnav a:hover,.atf-subnav button[aria-selected="true"],.atf-subnav button:hover{color:#101214;background:var(--atf-gold)}/* changed: clearly identifies the active consolidated application tab. */
.atf-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.9rem;margin:1.25rem 0 2rem}/* changed: lays out requested dashboard cards responsively. */
.atf-stat{position:relative;overflow:hidden;padding:1.35rem;background:linear-gradient(145deg,#181d21,#111417);border:1px solid var(--atf-line);border-radius:10px}/* changed: gives retained metrics an industrial instrument-panel feel. */
.atf-stat::before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--atf-gold)}/* changed: adds a precise status rail to each metric card. */
.atf-stat strong{display:block;color:#f4d99f;font-size:2rem;line-height:1}/* changed: emphasizes dashboard values. */
.atf-stat--top-position strong{font-size:clamp(1rem,2.2vw,1.35rem);line-height:1.25}/* changed: fits a readable position name inside the new dashboard card. */
.atf-stat span{display:block;margin-top:.55rem;color:#969da0;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}/* changed: labels dashboard values compactly. */
.atf-panel{margin:1.25rem 0 2rem;padding:clamp(1rem,3vw,1.6rem);background:rgba(20,24,27,.72);border:1px solid var(--atf-line);border-radius:12px}/* changed: groups related operational records. */
.atf-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}/* changed: aligns panel context and actions. */
.atf-panel__heading h2{margin:.15rem 0;color:#eee4d2}/* changed: keeps panel titles visually consistent. */
.atf-record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}/* changed: supports cards from mobile through wide screens. */
.atf-record-card{padding:1.15rem;background:#111519;border:1px solid rgba(209,168,91,.17);border-radius:9px;box-shadow:0 12px 22px rgba(0,0,0,.13)}/* changed: provides a reusable jobs, applicants, and users record surface. */
.atf-record-card h3{margin:.18rem 0;color:#efe4ce;font-size:1.18rem}/* changed: emphasizes each record name. */
.atf-record-card p{color:#bdc1c2;line-height:1.5}/* changed: improves dense record readability. */
.atf-record-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}/* changed: aligns record identity and status. */
.atf-chip{display:inline-flex;align-items:center;width:max-content;padding:.25rem .55rem;border:1px solid rgba(209,168,91,.26);border-radius:999px;color:#d7bd88;background:rgba(209,168,91,.08);font-size:.69rem;text-transform:uppercase;letter-spacing:.055em}/* changed: creates consistent low-noise status labels. */
.atf-chip--hired{color:#97ddb2;border-color:rgba(73,190,118,.35);background:rgba(73,190,118,.1)}/* changed: distinguishes successful hires. */
.atf-chip--rejected{color:#eeaaa4;border-color:rgba(220,83,73,.35);background:rgba(220,83,73,.1)}/* changed: distinguishes declined applications. */
.atf-meta{color:#8f9699!important;font-size:.83rem!important}/* changed: reduces visual weight for supporting record details. */
.atf-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin-top:1rem}/* changed: groups record and form actions consistently. */
.atf-empty{grid-column:1/-1;padding:2rem;text-align:center;color:#92999c;border:1px dashed var(--atf-line);border-radius:9px}/* changed: explains fresh-start empty collections clearly. */
.atf-filter-bar{display:grid;grid-template-columns:auto minmax(180px,1fr) auto minmax(160px,.35fr);align-items:center;gap:.7rem;margin:1rem 0 1.35rem;padding:1rem;background:#111519;border:1px solid var(--atf-line);border-radius:9px}/* changed: keeps applicant filters compact and responsive. */
.atf-filter-bar label{color:#c7caca;font-size:.78rem;font-weight:700;text-transform:uppercase}/* changed: labels filtering controls distinctly. */
.atf-filter-bar input,.atf-filter-bar select{width:100%;padding:.65rem .75rem;border:1px solid #30363a;border-radius:6px;background:#0d1012;color:#eee}/* changed: uses accessible high-contrast filter inputs. */
.atf-dialog{width:min(900px,calc(100vw - 2rem));max-height:90vh;padding:1.35rem;overflow:auto;color:#ddd;background:#111519;border:1px solid var(--atf-line);border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.65)}/* changed: provides an accessible full applicant review surface. */
.atf-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(3px)}/* changed: separates applicant review from the underlying list. */
.atf-dialog__heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--atf-line)}/* changed: aligns the review title and close action. */
.atf-dialog__heading button{border:0;background:transparent;color:#ddd;font-size:1.8rem;cursor:pointer}/* changed: makes the review close action obvious. */
.atf-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1rem 0}/* changed: organizes the complete application schema for review. */
.atf-detail-grid section{padding:1rem;background:#0d1012;border:1px solid rgba(209,168,91,.12);border-radius:8px}/* changed: separates applicant data groups. */
.atf-detail-grid h3{margin-top:0;color:var(--atf-gold)}/* changed: labels each applicant schema group. */
.atf-history{padding-left:1.25rem;color:#b8bdbe}/* changed: presents status changes in chronological context. */
.atf-history li{margin:.6rem 0;padding-left:.3rem}/* changed: improves status-history scanning. */
.atf-activity-list{display:grid;gap:.6rem}/* changed: stacks recent retained activity cleanly. */
.atf-activity{display:flex;align-items:flex-start;gap:.8rem;padding:.85rem;border-bottom:1px solid rgba(209,168,91,.1)}/* changed: creates a compact mixed activity row. */
.atf-activity strong{color:#e7decf}/* changed: emphasizes the changed record. */
.atf-activity p{margin:.2rem 0 0;color:#92999c;font-size:.84rem}/* changed: keeps activity detail secondary. */
.atf-auth-shell{display:grid;place-items:center;min-height:calc(100vh - 120px)}/* changed: centers authentication without a full-screen overlay. */
.atf-auth-card{width:min(430px,100%);padding:2rem;background:linear-gradient(145deg,#171c20,#0f1214);border:1px solid var(--atf-line);border-radius:12px;box-shadow:0 28px 70px rgba(0,0,0,.35)}/* changed: gives login a focused secure-workstation presentation. */
.atf-auth-card h1{margin:.25rem 0;color:#f1e7d5}/* changed: emphasizes the login heading. */
.atf-material-settings{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}/* changed: arranges editable material groups into responsive cards. */
.atf-material-card{align-content:start;margin:0;padding:1rem;border:1px solid var(--atf-border);border-radius:12px;background:rgba(255,255,255,.025)}/* changed: visually separates each managed material and its grades. */
.atf-material-card--new{border-style:dashed;background:rgba(209,168,91,.045)}/* changed: distinguishes the new-material form from existing records. */
.atf-field-span{grid-column:1/-1}/* changed: lets long extension and grade fields use the full form width. */
[hidden]{display:none!important}/* changed: guarantees provider-specific integration fields stay hidden when inactive. */
.atf-form-grid{display:grid;gap:.4rem;max-width:760px}/* changed: creates a readable single-column editor for complete records. */
.atf-form-grid input,.atf-form-grid select,.atf-form-grid textarea{margin-bottom:.75rem;padding:.72rem}/* changed: gives editor controls consistent touch-friendly spacing. */
.atf-notice{margin:1rem 0;padding:.85rem 1rem;border-radius:7px;border:1px solid rgba(70,190,120,.35);background:rgba(70,190,120,.1);color:#b9eccd}/* changed: provides consistent success feedback. */
.atf-notice--error{border-color:rgba(220,83,73,.4);background:rgba(220,83,73,.1);color:#ffc1bc}/* changed: provides consistent error feedback. */
.reveal{animation-play-state:paused}/* changed: prevents entrance effects from running before sections approach view. */
.reveal.is-visible{animation-play-state:running}/* changed: runs each original entrance effect after its first visible intersection. */
.service-section.atf-entrance-pending{animation:none;opacity:0;transform:translateY(30px)}/* changed: prevents below-fold service entrances from finishing before visitors reach them. */
.service-section.atf-entrance-pending.is-visible{animation:fadeInUp .8s ease both}/* changed: starts the existing service entrance effect exactly once when visible. */
.atf-motion-paused::before,.atf-motion-paused::after{animation-play-state:paused!important}/* changed: pauses decorative pseudo-element effects while off screen. */
.service-section,.service-image-section,.about-grid,.about-values{content-visibility:auto;contain-intrinsic-size:auto 500px}/* changed: defers off-screen layout work while reserving space. */
.service-image-section img,.about-hero__image,.about-values__image,.careers-hero__image{height:auto}/* changed: preserves correct aspect ratios after explicit dimensions are added. */
.atf-breadcrumb{padding:.75rem 2rem;border-bottom:1px solid rgba(178,134,60,.1);background:var(--card)}/* changed: provides a reusable public breadcrumb surface for renamed routes. */
.atf-breadcrumb__inner{display:flex;align-items:center;gap:.75rem;max-width:1200px;margin:0 auto;color:var(--secondary);font-size:.9rem}/* changed: aligns breadcrumb levels within the site width. */
.atf-breadcrumb a{color:var(--accent);text-decoration:none}/* changed: identifies clickable breadcrumb destinations. */
.atf-filter-bar--estimates{grid-template-columns:auto minmax(190px,1fr) auto minmax(150px,.45fr) auto minmax(140px,.4fr) auto minmax(120px,.3fr) auto minmax(120px,.3fr)}/* changed: accommodates keyword, service, material, status, and sort controls. */
.atf-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--atf-line);border-radius:9px}/* changed: preserves access to management tables on narrow screens. */
.atf-table{width:100%;border-collapse:collapse;background:#0d1012;color:#c7cbcc}/* changed: provides a compact high-contrast estimate table. */
.atf-table th,.atf-table td{padding:.78rem .72rem;border-bottom:1px solid rgba(209,168,91,.12);text-align:left;vertical-align:top}/* changed: aligns estimate fields and row actions consistently. */
.atf-table th{color:#e7d4ae;background:#15191c;font-size:.72rem;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}/* changed: distinguishes stable Estimate Requests column labels. */
.atf-table tr:last-child td{border-bottom:0}/* changed: removes the final redundant table divider. */
.atf-table-actions{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;min-width:250px}/* changed: keeps View, Print, and Forward actions together. */
.atf-table-actions .btn{padding:.45rem .58rem;font-size:.72rem}/* changed: fits all estimate actions without reducing touch clarity. */
.atf-preserve-lines{white-space:pre-wrap}/* changed: preserves customer-entered project-description line breaks safely. */
.atf-print-area{display:none}/* changed: keeps temporary printable estimate details out of normal screen layout. */
.confirm-main{position:relative;overflow:hidden}/* changed: contains integrated confirmation effects inside the canonical application page. */
.confirm-stage{position:relative;margin:2.5rem 0 1.75rem;padding:3rem 2.5rem;border:1px solid rgba(244,184,96,.35);border-radius:20px;background:linear-gradient(135deg,rgba(244,184,96,.25),rgba(26,30,34,.85));text-align:center;box-shadow:0 25px 60px rgba(0,0,0,.35)}/* changed: preserves the celebratory confirmation stage after page consolidation. */
.confirm-badge{display:inline-flex;padding:.4rem 1rem;border:1px solid rgba(42,209,176,.45);border-radius:999px;background:rgba(42,209,176,.18);color:#c7fff1;font-weight:700;text-transform:uppercase;animation:badgePop .8s ease-out}/* changed: emphasizes successful application receipt. */
.confirm-title{margin:1.2rem 0 .75rem;color:#ffe6b3;font-size:clamp(2.2rem,3.6vw,3.2rem);text-shadow:0 6px 18px rgba(0,0,0,.4)}/* changed: presents the integrated confirmation heading prominently. */
.confirm-subtitle{max-width:62ch;margin:0 auto 1.5rem;color:#e0e0e0;line-height:1.7}/* changed: keeps confirmation guidance readable. */
.celebration-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.75rem}/* changed: lays out integrated next-step cards responsively. */
.celebration-card{padding:1.2rem 1.3rem;border:1px solid rgba(255,170,90,.22);border-radius:14px;background:rgba(18,20,22,.85);text-align:left;animation:liftIn .8s ease-out,celebrateGlow 6s ease-in-out infinite}/* changed: preserves the original confirmation-card motion. */
.celebration-card h3{margin:0 0 .45rem;color:#ffcd88;font-size:1.05rem}/* changed: labels each confirmation next step. */
.celebration-card p{margin:0;color:#c8c8c8;line-height:1.5}/* changed: keeps confirmation-card descriptions readable. */
.confirm-actions{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}/* changed: groups integrated confirmation destinations. */
.confirm-actions-top{margin:1.5rem 0 1.75rem}/* changed: positions confirmation destinations above the success stage. */
.confirm-summary{display:grid;gap:1rem;max-width:860px;margin:2rem auto 0}/* changed: centers the integrated submission summary. */
.confirm-card{padding:1.6rem;border:1px solid rgba(244,184,96,.2);border-radius:14px;background:linear-gradient(130deg,rgba(20,22,25,.95),rgba(39,33,22,.85))}/* changed: presents saved application details distinctly. */
.confirm-card h2{margin:0 0 .5rem;color:#f4b860}/* changed: labels the integrated submission summary. */
.confirm-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-top:.75rem;color:#e0d6c0}/* changed: lays out applicant, position, and date responsively. */
.spark-row{display:flex;justify-content:center;gap:.4rem;margin-top:1.2rem}/* changed: aligns integrated confirmation sparks. */
.spark{width:12px;height:12px;border-radius:999px;background:radial-gradient(circle,#ffe2a0,rgba(255,138,92,.35));box-shadow:0 0 12px rgba(255,184,96,.6);animation:twinkle 2.4s ease-in-out infinite}/* changed: preserves working decorative spark motion. */
.spark:nth-child(2){animation-delay:.3s}/* changed: staggers the second confirmation spark. */
.spark:nth-child(3){animation-delay:.6s}/* changed: staggers the third confirmation spark. */
.spark:nth-child(4){animation-delay:.9s}/* changed: staggers the fourth confirmation spark. */
@keyframes badgePop{0%{transform:scale(.9);opacity:0}100%{transform:scale(1);opacity:1}}/* changed: animates the integrated success badge once. */
@keyframes liftIn{0%{transform:translateY(12px);opacity:0}100%{transform:translateY(0);opacity:1}}/* changed: preserves confirmation-card entrances. */
@keyframes twinkle{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.25);opacity:1}}/* changed: restores confirmation spark twinkling from shared CSS. */
@keyframes celebrateGlow{0%,100%{box-shadow:0 0 0 rgba(244,184,96,0);transform:translateY(0)}50%{box-shadow:0 12px 26px rgba(244,184,96,.2);transform:translateY(-4px)}}/* changed: preserves subtle confirmation-card celebration motion. */
@media print{body.atf-printing>*:not(.atf-print-area){display:none!important}body.atf-printing .atf-print-area{display:block!important;padding:0;color:#000;background:#fff}body.atf-printing .atf-print-area section{break-inside:avoid;border:1px solid #bbb}body.atf-printing .atf-print-area h1,body.atf-printing .atf-print-area h3{color:#000}}/* changed: prints only the selected estimate request in a clean document. */
@media(max-width:1040px){.atf-nav>a,.atf-nav>button,.atf-disclosure__trigger,.atf-logout{padding:.66rem .48rem;font-size:.7rem}.atf-brand__logo{width:180px;height:62px}.atf-header__brand-row{min-height:68px}}/* changed: keeps the wide logo and navigation balanced on medium screens. */
@media(max-width:860px){.site-header{min-height:76px;flex-wrap:nowrap;padding-bottom:.35rem}.atf-header__brand-row{min-height:64px}.atf-brand__logo{width:160px;height:56px}.atf-menu-toggle{display:block}.atf-nav{display:none;width:100%;margin:0;padding:.45rem 0 .75rem;align-items:stretch;flex-direction:column}.atf-nav.is-open{display:flex}.atf-nav>a,.atf-nav>button,.atf-disclosure__trigger,.atf-logout{width:100%;text-align:center;padding:.72rem .8rem}.atf-logout-form{width:100%;align-self:auto}.atf-disclosure__trigger{justify-content:center}.atf-services,.atf-language-menu{position:relative}.atf-services__panel,.atf-language-menu__panel{position:static;width:100%;padding:.7rem;margin-top:.25rem;transform:none;border-radius:8px;display:none;visibility:visible;opacity:1}.atf-services__panel{grid-template-columns:1fr}.atf-services.is-open .atf-services__panel,.atf-language-menu.is-open .atf-language-menu__panel{display:grid;transform:none}.atf-services__panel section{padding:.4rem .7rem;text-align:left}.atf-language-menu__panel .atf-language{justify-content:center}.atf-page-heading{align-items:flex-start;flex-direction:column}.atf-filter-bar{grid-template-columns:1fr}.atf-subnav{display:flex;width:100%;overflow:auto}.atf-subnav a,.atf-subnav button{flex:1;min-width:max-content;text-align:center}.confirm-stage{padding:2.2rem 1.5rem}.confirm-meta{grid-template-columns:1fr}}/* changed: keeps the theme-aware wide logo and navigation responsive on mobile. */
@media(max-width:700px){.atf-table-wrap{overflow:visible;border:0}.atf-table,.atf-table tbody,.atf-table tr,.atf-table td{display:block;width:100%}.atf-table thead{display:none}.atf-table tr{margin-bottom:1rem;border:1px solid var(--atf-line);border-radius:9px;background:#0d1012}.atf-table td{display:grid;grid-template-columns:105px 1fr;gap:.7rem;border-bottom:1px solid rgba(209,168,91,.12)}.atf-table td::before{content:attr(data-label);color:#e7d4ae;font-size:.7rem;font-weight:700;text-transform:uppercase}.atf-table td:last-child{border-bottom:0}.atf-table-actions{min-width:0}}/* changed: converts estimate rows into readable mobile cards. */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}/* changed: respects visitors who request reduced motion. */
.atf-estimate-page{max-width:1180px}/* changed: gives the detailed RFQ enough width without creating long text lines. */
.atf-page-heading--public{margin-bottom:1.2rem;padding-bottom:1rem;border-bottom:1px solid rgba(209,168,91,.18)}/* changed: separates public estimate guidance from the working form. */
.atf-page-heading--public p:last-child{max-width:72ch;color:#aeb4b6;line-height:1.65}/* changed: keeps RFQ introduction copy comfortably readable. */
.atf-rfq-form{padding:0;overflow:hidden;border-color:rgba(209,168,91,.2);background:linear-gradient(145deg,#171b1e,#0f1214)}/* changed: creates an industrial work-order surface for the expanded RFQ. */
.atf-rfq-section{min-width:0;margin:0;padding:clamp(1rem,3vw,1.65rem);border:0;border-bottom:1px solid rgba(209,168,91,.14)}/* changed: separates RFQ stages without nested card clutter. */
.atf-rfq-section legend{position:relative;display:flex;align-items:center;gap:.7rem;width:auto;max-width:100%;min-height:2rem;margin:0;padding:0 .6rem 0 0;color:#efe5d3;background:#15191c;font-size:1.08rem;line-height:1.25;letter-spacing:.02em}/* changed: keeps each numbered title in normal flow above section separators without overlap. */
.atf-rfq-section legend span{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 2rem;width:2rem;height:2rem;margin:0;border:1px solid rgba(209,168,91,.45);border-radius:4px;color:#d7b978;background:#171b1e;font-size:.72rem;font-weight:800;line-height:1}/* changed: keeps each RFQ number clear of the thin separating line at every width. */
.atf-rfq-section>label,.atf-rfq-section>.atf-form-grid{margin-top:1.15rem}/* changed: creates consistent spacing below RFQ section legends. */
.atf-form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem}/* changed: uses two efficient form columns when space permits. */
.atf-form-grid--two label{min-width:0}/* changed: prevents long translated labels from widening the RFQ. */
.atf-rfq-form label>span:first-child,.atf-settings-readiness label>span:first-child{display:block;margin-bottom:.38rem;color:#d1d4d4;font-size:.8rem;font-weight:750;letter-spacing:.035em;text-transform:uppercase}/* changed: makes field labels distinct from customer input. */
.atf-field-help{margin:.75rem 0 0;color:#92999c;font-size:.9rem;line-height:1.55}/* changed: keeps RFQ guidance useful but visually secondary. */
.atf-service-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}/* changed: groups all sixteen services in three scannable columns. */
.atf-service-group{padding:1rem;border:1px solid rgba(209,168,91,.16);border-radius:8px;background:#0d1113}/* changed: distinguishes service families without heavy decoration. */
.atf-service-group h3{margin:0 0 .8rem;color:#d8bd87;font-size:.83rem;text-transform:uppercase;letter-spacing:.065em}/* changed: labels each service family like a shop capability group. */
.form .atf-service-option{display:flex;align-items:flex-start;gap:.58rem;margin:.4rem 0;padding:.35rem;border-radius:4px;color:#c7cbcc;font-size:.88rem;font-weight:500;cursor:pointer}/* changed: turns each service choice into an accessible compact row. */
.form .atf-service-option:hover{background:rgba(209,168,91,.06)}/* changed: highlights the service choice under the pointer. */
.form .atf-service-option input{flex:0 0 auto;width:1rem;height:1rem;margin:.08rem 0 0;accent-color:var(--atf-gold)}/* changed: prevents global form widths from stretching service checkboxes. */
.form .atf-service-option span{margin:0;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;text-transform:none}/* changed: preserves natural readable service names inside checkbox rows. */
.atf-file-drop{display:grid!important;gap:.45rem;padding:1.1rem;border:1px dashed rgba(209,168,91,.42);border-radius:8px;background:rgba(209,168,91,.035)}/* changed: gives drawing upload an obvious bounded drop-style surface. */
.atf-file-drop small{color:#90979a;font-weight:400;line-height:1.5}/* changed: keeps file formats and size limits legible. */
.atf-file-summary{display:grid;gap:.35rem;margin:.65rem 0 0;padding:0;list-style:none}/* changed: stacks selected attachment feedback cleanly. */
.atf-file-summary li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .65rem;border:1px solid rgba(209,168,91,.12);border-radius:5px;background:#0d1012;color:#cdd0d1;font-size:.84rem}/* changed: presents each selected attachment as a compact record. */
.atf-file-summary small{color:#92999c;white-space:nowrap}/* changed: keeps selected file sizes aligned and secondary. */
.atf-upload-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;margin-top:.85rem;padding:.8rem;border:1px solid rgba(209,168,91,.2);border-radius:7px;background:#0d1012}/* changed: contains resumable upload progress, text, and cancellation without blocking the page. */
.atf-progress-track{grid-column:1/-1;height:.55rem;overflow:hidden;border-radius:999px;background:#262c30}/* changed: provides a stable aggregate large-file progress track. */
.atf-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a9782c,#e1ba70);transition:width .18s ease}/* changed: shows confirmed uploaded bytes with low-cost animation. */
.atf-upload-progress p{margin:0;color:#c5c9ca;font-size:.83rem}/* changed: reports the current file and percentage accessibly. */
.atf-confirm-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}/* changed: arranges confirmed estimate fields in a scannable review grid. */
.atf-confirm-summary section{min-width:0;padding:.8rem;border:1px solid rgba(209,168,91,.14);border-radius:7px;background:#0d1012}/* changed: separates each review group without changing submitted values. */
.atf-confirm-summary span,.atf-success-details dt{display:block;margin-bottom:.35rem;color:#a98a52;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}/* changed: labels review and success details like compact shop-ticket fields. */
.atf-confirm-summary strong{display:block;overflow-wrap:anywhere;color:#d9ddde;font-size:.88rem;line-height:1.5}/* changed: keeps long descriptions and filenames readable in the confirmation window. */
.atf-estimate-success{max-width:820px;margin:1.5rem auto;padding:clamp(1.4rem,4vw,2.4rem);text-align:center;border:1px solid rgba(76,190,120,.32);border-radius:14px;background:linear-gradient(145deg,#17201c,#101613);box-shadow:0 22px 55px rgba(0,0,0,.25)}/* changed: gives successful estimate intake a clear dedicated result surface. */
.atf-success-mark{display:grid;place-items:center;width:3.2rem;height:3.2rem;margin:0 auto .8rem;border-radius:50%;color:#0d1811;background:#83d5a2;font-size:1.7rem;font-weight:900}/* changed: provides an immediate accessible-color success cue without a broken emoji. */
.atf-estimate-success h2{margin:.25rem 0 .65rem;color:#e8f0eb}/* changed: emphasizes the saved-request result. */
.atf-estimate-success>p:not(.atf-eyebrow){max-width:62ch;margin:.5rem auto;color:#b7c2bc;line-height:1.6}/* changed: explains the estimating team follow-up clearly. */
.atf-success-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;text-align:left}/* changed: summarizes safe submitted details without showing the internal RFQ identifier. */
.atf-success-details div{padding:.8rem;border:1px solid rgba(76,190,120,.2);border-radius:7px;background:rgba(0,0,0,.15)}/* changed: separates project, email, and file confirmation values. */
.atf-success-details dd{margin:0;overflow-wrap:anywhere;color:#dce7e0}/* changed: keeps customer-entered success details readable. */
.atf-estimate-success .atf-actions{justify-content:center}/* changed: centers the Home and new-request follow-up actions. */
.atf-rfq-actions{align-items:center;justify-content:space-between;margin:0;padding:1.25rem clamp(1rem,3vw,1.65rem)}/* changed: anchors the final RFQ guidance beside its submission action. */
.atf-rfq-actions p{max-width:70ch;margin:0;color:#91989a;font-size:.82rem;line-height:1.5}/* changed: states the local-only email boundary without overpowering submission. */
.atf-rfq-actions .btn{min-width:180px}/* changed: gives the primary RFQ action a confident touch target. */
.atf-settings-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.2rem;align-items:start}/* changed: creates a scalable category rail and settings work area. */
.atf-settings-nav{position:sticky;top:1rem;display:grid;gap:.35rem;padding:1rem;border:1px solid var(--atf-line);border-radius:10px;background:#111519}/* changed: keeps settings category tabs available beside the active panel. */
.atf-settings-nav>.atf-eyebrow{margin:0 0 .35rem}/* changed: aligns the category label with its links. */
.atf-settings-tablist{display:grid;gap:.35rem}/* changed: stacks the mutually exclusive category tabs within the settings rail. */
.atf-settings-nav [role="tab"]{display:grid;gap:.18rem;width:100%;padding:.75rem;border:0;border-left:2px solid transparent;border-radius:5px;color:#d7dada;text-align:left;background:rgba(255,255,255,.015);cursor:pointer}/* changed: presents each category as a full-width interactive tab. */
.atf-settings-nav [role="tab"]:hover,.atf-settings-nav [role="tab"]:focus-visible{border-left-color:var(--atf-gold);background:rgba(209,168,91,.08);outline:none}/* changed: gives settings tabs visible pointer and keyboard feedback. */
.atf-settings-nav [role="tab"][aria-selected="true"]{border-left-color:var(--atf-gold);color:#f0dfbd;background:rgba(209,168,91,.14);box-shadow:inset 0 0 0 1px rgba(209,168,91,.16)}/* changed: clearly identifies the category whose panel is displayed. */
.atf-settings-nav small{color:#858d90;font-size:.72rem}/* changed: describes settings categories without competing with their titles. */
.atf-settings-content{min-width:0}/* changed: prevents settings panels from overflowing the category layout. */
.atf-settings-panel{margin-top:0}/* changed: positions the one active settings panel at the top of the content area. */
.atf-settings-panel[hidden]{display:none!important}/* changed: removes inactive settings panels from layout and accessibility flow. */
.atf-chip--deferred{color:#e8c681;border-color:rgba(232,198,129,.35);background:rgba(232,198,129,.08)}/* changed: distinguishes server-deferred email state from workflow statuses. */
.atf-notice--warning{border-color:rgba(232,198,129,.35);background:rgba(232,198,129,.08);color:#ead6ac}/* changed: presents the SMTP security boundary as a clear caution. */
.atf-settings-readiness{margin:1rem 0 0;padding:0;border:0}/* changed: removes default fieldset framing from the readiness preview. */
.atf-settings-readiness:disabled{opacity:.72}/* changed: communicates that SMTP controls are intentionally inactive. */
.form .atf-check-row,.atf-settings-readiness .atf-check-row{display:flex;align-items:center;gap:.55rem;margin:.4rem 0}/* changed: aligns the future automatic-email switch correctly. */
.form .atf-check-row input,.atf-settings-readiness .atf-check-row input{width:auto;margin:0}/* changed: prevents the future email checkbox from inheriting full input width. */
.form .atf-check-row span,.atf-settings-readiness .atf-check-row span{margin:0;color:#c7cbcc;font-size:.86rem;text-transform:none}/* changed: keeps the future email-switch label natural and readable. */
.atf-table td small{display:block;margin-top:.25rem;color:#899194;font-size:.75rem;line-height:1.45}/* changed: adds compact secondary customer, reference, and material details to estimate rows. */
.atf-attachment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}/* changed: lays out RFQ attachment previews responsively. */
.atf-attachment-grid article{display:grid;align-content:start;gap:.45rem;padding:.75rem;border:1px solid rgba(209,168,91,.14);border-radius:7px;background:#0d1012}/* changed: contains each attachment preview and download action safely. */
.atf-attachment-grid strong{overflow-wrap:anywhere;color:#d9ddde;font-size:.82rem}/* changed: prevents long customer file names from overflowing. */
.atf-attachment-grid small{color:#8d9598}/* changed: keeps stored attachment sizes secondary. */
.atf-attachment-preview{display:grid;place-items:center;min-height:120px;overflow:hidden;border-radius:5px;background:#171c1f}/* changed: gives image, PDF, and generic file previews a stable frame. */
.atf-attachment-preview img,.atf-attachment-preview object{width:100%;height:160px;border:0;object-fit:contain}/* changed: contains visual attachment previews without cropping technical content. */
.atf-file-icon{display:grid;place-items:center;width:64px;height:78px;border:1px solid rgba(209,168,91,.35);color:#d1ae68;font-size:.72rem;font-weight:800;letter-spacing:.08em}/* changed: represents CAD and archive files without fabricated previews. */
@media(max-width:900px){.atf-service-groups{grid-template-columns:1fr 1fr}.atf-settings-layout{grid-template-columns:1fr}.atf-settings-nav{position:static}.atf-settings-tablist{grid-template-columns:repeat(2,minmax(0,1fr))}}/* changed: places settings tabs side by side above the active panel on tablets. */
@media(max-width:640px){.atf-form-grid--two,.atf-service-groups,.atf-confirm-summary,.atf-success-details{grid-template-columns:1fr}.atf-rfq-actions{align-items:stretch;flex-direction:column}.atf-rfq-actions .btn{width:100%}.atf-settings-tablist{grid-template-columns:1fr}.atf-panel__heading{align-items:flex-start;flex-direction:column}.atf-file-summary li{align-items:flex-start;flex-direction:column;gap:.2rem}.atf-upload-progress{grid-template-columns:1fr}.atf-upload-progress .btn{width:100%}}/* changed: stacks settings, confirmation, success, progress, and RFQ controls cleanly on phones. */
.atf-logout-form{display:inline-flex;align-items:center;align-self:stretch;flex:0 0 auto;margin:0}/* changed: gives Logout the same fixed navigation position and vertical alignment as Login. */
.atf-inline-form,.atf-actions form,.atf-table-actions form{display:inline-flex;margin:0}/* changed: keeps other ordinary PHP action forms aligned with their controls. */
.atf-theme-toggle{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto;gap:.3rem;min-width:4.7rem}/* changed: keeps the compact emoji appearance action visible beside longer authenticated navigation. */
.atf-theme-toggle [data-theme-icon]{font-size:1rem;line-height:1}/* changed: keeps the light or dark icon aligned with its label. */
.atf-settings-tablist a{display:grid;gap:.18rem;width:100%;padding:.75rem;border:0;border-left:2px solid transparent;border-radius:5px;color:#d7dada;text-align:left;text-decoration:none;background:rgba(255,255,255,.015)}/* changed: presents each server-rendered Settings category as a full-width tab link. */
.atf-settings-tablist a:hover,.atf-settings-tablist a:focus-visible{border-left-color:var(--atf-gold);background:rgba(209,168,91,.08);outline:none}/* changed: gives Settings category links visible pointer and keyboard feedback. */
.atf-settings-tablist a[aria-current="page"]{border-left-color:var(--atf-gold);color:#f0dfbd;background:rgba(209,168,91,.14);box-shadow:inset 0 0 0 1px rgba(209,168,91,.16)}/* changed: identifies the only Settings category currently rendered. */
.atf-settings-tablist a small{color:#858d90;font-size:.72rem}/* changed: keeps category descriptions visually secondary. */
.atf-theme-choices{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0}/* changed: groups explicit light, dark, and device appearance choices. */
.atf-preformatted{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:inherit;font:inherit;line-height:1.55}/* changed: keeps normalized applicant details readable without horizontal overflow. */
html[data-theme="light"]{--bg:#f3f1ec;--card:#ffffff;--accent:#6a4917;--muted:#555e62;--glass:rgba(28,32,35,.045);--atf-ink:#f3f1ec;--atf-panel:#ffffff;--atf-gold:#6a4917;--atf-line:rgba(93,68,31,.3);--atf-copy:#252b2f;color-scheme:light}/* changed: darkens shared bronze and secondary colors so legacy and modern components remain readable in light mode. */
html[data-theme="dark"]{color-scheme:dark}/* changed: advertises the original dark appearance to native browser controls. */
html[data-theme="light"] body{background:linear-gradient(180deg,#f7f5f1,#ebe7df);color:#202629}/* changed: replaces the dark page background with a low-glare light surface. */
html[data-theme="light"] .site-header{background:linear-gradient(105deg,rgba(255,255,255,.98),rgba(239,235,227,.97));border-bottom-color:var(--atf-line);box-shadow:0 10px 28px rgba(45,39,31,.14)}/* changed: gives the shared header a clear light appearance. */
html[data-theme="light"] .atf-brand__logo--dark{display:none}/* changed: removes the white-backed logo once a light header is active. */
html[data-theme="light"] .atf-brand__logo--light{display:block;filter:drop-shadow(0 6px 10px rgba(45,39,31,.22))}/* changed: reveals the original Estimator Intake mark with its dark wordmark on light headers. */
html[data-theme="light"] .atf-nav>a,html[data-theme="light"] .atf-nav>button,html[data-theme="light"] .atf-disclosure__trigger,html[data-theme="light"] .atf-logout{color:#252a2d}/* changed: keeps every navigation action readable on the light header. */
html[data-theme="light"] .atf-nav>a:hover,html[data-theme="light"] .atf-nav>button:hover,html[data-theme="light"] .atf-disclosure__trigger:hover,html[data-theme="light"] .atf-logout:hover{color:#553b14;background:transparent;outline:0}/* changed: keeps light-mode navigation hover box-free while preserving sparks and readable color. */
html[data-theme="light"] .atf-nav>a:focus-visible,html[data-theme="light"] .atf-nav>button:focus-visible,html[data-theme="light"] .atf-disclosure__trigger:focus-visible,html[data-theme="light"] .atf-logout:focus-visible{color:#553b14;background:transparent;outline-color:#6a4917}/* changed: preserves a strong light-mode keyboard focus indicator for every navigation action. */
html[data-theme="light"] .atf-services__panel,html[data-theme="light"] .atf-language-menu__panel{background:rgba(255,255,255,.99);box-shadow:0 22px 50px rgba(45,39,31,.2)}/* changed: converts both shared dropdown surfaces to light mode. */
html[data-theme="light"] .atf-services__panel a,html[data-theme="light"] .atf-language-menu__panel button{color:#2d3336}/* changed: keeps dropdown destinations readable in light mode. */
html[data-theme="light"] .breadcrumbs,html[data-theme="light"] .atf-breadcrumb,html[data-theme="light"] nav[style*="background: var(--card)"]{background:#f1eee8!important;color:#4c5559!important}/* changed: converts public breadcrumb strips without changing their structure. */
html[data-theme="light"] .hero,html[data-theme="light"] .about-hero,html[data-theme="light"] .careers-hero,html[data-theme="light"] .service-hero,html[data-theme="light"] .index-cta,html[data-theme="light"] .about-cta,html[data-theme="light"] .service-cta-section{background-color:#eee9df}/* changed: gives public feature sections a stable light fallback beneath existing gradients and images. */
html[data-theme="light"] .about-card,html[data-theme="light"] .about-stat,html[data-theme="light"] .about-hero__tile,html[data-theme="light"] .showcase-card,html[data-theme="light"] .cta-card,html[data-theme="light"] .service-section,html[data-theme="light"] .service-feature,html[data-theme="light"] .service-image-section,html[data-theme="light"] .process{background:#ffffff;border-color:var(--atf-line);box-shadow:0 10px 25px rgba(45,39,31,.1)}/* changed: converts public content cards to crisp light surfaces. */
html[data-theme="light"] .about-card h2,html[data-theme="light"] .about-values__text h2,html[data-theme="light"] .about-stat h3,html[data-theme="light"] .about-cta h2,html[data-theme="light"] .careers-openings__header h2,html[data-theme="light"] .service-section h3,html[data-theme="light"] .service-cta-section h2,html[data-theme="light"] .section-header h2,html[data-theme="light"] .showcase-card__content h3{color:#654817}/* changed: preserves strong gold-brown public headings on light cards. */
html[data-theme="light"] .about-card p,html[data-theme="light"] .about-values__text p,html[data-theme="light"] .about-values__text li,html[data-theme="light"] .about-stat p,html[data-theme="light"] .about-cta p,html[data-theme="light"] .careers-openings__header p,html[data-theme="light"] .service-section p,html[data-theme="light"] .service-section ul li,html[data-theme="light"] .service-feature p,html[data-theme="light"] .service-cta-section p,html[data-theme="light"] .showcase-card__content p,html[data-theme="light"] .section-header p,html[data-theme="light"] .cta-card p{color:#4f585c}/* changed: keeps public body copy comfortably readable in light mode. */
html[data-theme="light"] .form,html[data-theme="light"] .atf-panel,html[data-theme="light"] .atf-record-card,html[data-theme="light"] .atf-filter-bar,html[data-theme="light"] .atf-dialog,html[data-theme="light"] .atf-auth-card,html[data-theme="light"] .atf-settings-nav,html[data-theme="light"] .atf-rfq-form,html[data-theme="light"] .atf-service-group,html[data-theme="light"] .atf-table,html[data-theme="light"] .atf-attachment-grid article,html[data-theme="light"] .atf-file-summary li{background:#ffffff;color:#252b2f;border-color:var(--atf-line);box-shadow:0 10px 24px rgba(45,39,31,.08)}/* changed: converts authenticated panels, forms, dialogs, and tables to light surfaces. */
html[data-theme="light"] .form input,html[data-theme="light"] .form textarea,html[data-theme="light"] .form select,html[data-theme="light"] .atf-filter-bar input,html[data-theme="light"] .atf-filter-bar select,html[data-theme="light"] select,html[data-theme="light"] select option{background:#faf9f6;color:#202629;border-color:#b9b2a7}/* changed: gives native form controls accessible light backgrounds and borders. */
html[data-theme="light"] .atf-page-heading h1,html[data-theme="light"] .atf-panel__heading h2,html[data-theme="light"] .atf-record-card h3,html[data-theme="light"] .atf-dialog h2,html[data-theme="light"] .atf-dialog h3,html[data-theme="light"] .atf-auth-card h1,html[data-theme="light"] .atf-rfq-section legend{color:#252b2f}/* changed: converts operational headings to strong dark text. */
html[data-theme="light"] .atf-page-heading p,html[data-theme="light"] .atf-record-card p,html[data-theme="light"] .atf-meta,html[data-theme="light"] .muted,html[data-theme="light"] .atf-field-help,html[data-theme="light"] .atf-rfq-actions p,html[data-theme="light"] .atf-table td small{color:#596266}/* changed: keeps operational secondary copy readable without excessive contrast. */
html[data-theme="light"] .atf-stat{background:linear-gradient(145deg,#ffffff,#eee9df);box-shadow:0 8px 20px rgba(45,39,31,.08)}/* changed: converts dashboard statistic cards to light instrument panels. */
html[data-theme="light"] .atf-stat strong{color:#6f4d18}/* changed: keeps dashboard values prominent in the light palette. */
html[data-theme="light"] .atf-stat span{color:#5a6266}/* changed: keeps dashboard labels readable in light mode. */
html[data-theme="light"] .atf-table th{color:#503914;background:#e8e1d6}/* changed: distinguishes estimate table headings on the light surface. */
html[data-theme="light"] .atf-table td{border-bottom-color:rgba(93,68,31,.16)}/* changed: preserves subtle table row separation in light mode. */
html[data-theme="light"] .atf-subnav{background:#e8e2d8}/* changed: converts application category navigation to a light track. */
html[data-theme="light"] .atf-settings-tablist a{color:#30373a;background:rgba(45,39,31,.025)}/* changed: keeps Settings category links readable in light mode. */
html[data-theme="light"] .atf-settings-tablist a[aria-current="page"]{color:#523914;background:rgba(138,100,39,.13)}/* changed: clearly identifies the active server-rendered Settings category in light mode. */
html[data-theme="light"] .atf-settings-tablist a small{color:#677075}/* changed: keeps Settings category descriptions legible in light mode. */
html[data-theme="light"] .atf-rfq-section legend{color:#252b2f;background:#ffffff}/* changed: keeps numbered estimate legends aligned and readable on the light form. */
html[data-theme="light"] .atf-rfq-section legend span{color:#5a3d13;background:#f2ede4;border-color:rgba(106,73,23,.45)}/* changed: keeps estimate section numbers distinct without crossing the divider in light mode. */
html[data-theme="light"] .atf-upload-progress,html[data-theme="light"] .atf-confirm-summary section,html[data-theme="light"] .atf-success-details div{background:#f7f4ee;color:#252b2f;border-color:var(--atf-line)}/* changed: converts upload, review, and success detail surfaces to readable light panels. */
html[data-theme="light"] .atf-upload-progress p,html[data-theme="light"] .atf-confirm-summary strong,html[data-theme="light"] .atf-success-details dd{color:#30383c}/* changed: gives dynamic estimate detail text sufficient light-mode contrast. */
html[data-theme="light"] .atf-estimate-success{color:#252b2f;background:linear-gradient(145deg,#ffffff,#e8f2eb);border-color:rgba(42,125,76,.35);box-shadow:0 18px 42px rgba(45,39,31,.12)}/* changed: converts the estimate success panel to an accessible light surface. */
html[data-theme="light"] .atf-estimate-success h2{color:#25452f}/* changed: keeps the saved-request heading readable in light mode. */
html[data-theme="light"] .atf-estimate-success>p:not(.atf-eyebrow){color:#49584e}/* changed: keeps estimate follow-up guidance readable in light mode. */
html[data-theme="light"] .confirm-stage,html[data-theme="light"] .confirm-card,html[data-theme="light"] .celebration-card{background:#ffffff;color:#252b2f;border-color:var(--atf-line);box-shadow:0 14px 34px rgba(45,39,31,.12)}/* changed: converts application confirmation surfaces to light mode while preserving motion. */
html[data-theme="light"] .confirm-title,html[data-theme="light"] .confirm-card h2,html[data-theme="light"] .celebration-card h3{color:#654817;text-shadow:none}/* changed: keeps confirmation headings readable on light surfaces. */
html[data-theme="light"] .confirm-subtitle,html[data-theme="light"] .celebration-card p,html[data-theme="light"] .confirm-meta{color:#4f585c}/* changed: keeps confirmation guidance readable in light mode. */
@media(max-width:860px){html[data-theme="light"] .atf-nav{background:#f7f5f1}}/* changed: gives the expanded mobile navigation an opaque light background. */
html[data-theme="light"] .index-hero,html[data-theme="light"] .about-hero,html[data-theme="light"] .careers-hero,html[data-theme="light"] .service-hero{background-image:linear-gradient(135deg,#f2ede4,#e2d7c6);border-color:rgba(106,73,23,.3)}/* changed: gives every public hero a consistently light image-free reading surface. */
html[data-theme="light"] .index-hero h1,html[data-theme="light"] .about-hero__text h1,html[data-theme="light"] .careers-hero__text h1,html[data-theme="light"] .service-hero h1{color:#252b2f;text-shadow:none}/* changed: replaces pale dark-theme hero headings with high-contrast light-mode text. */
html[data-theme="light"] .index-hero p,html[data-theme="light"] .about-hero__text p,html[data-theme="light"] .careers-hero__text p,html[data-theme="light"] .service-hero__subtitle{color:#465156;text-shadow:none}/* changed: makes public hero summaries readable without changing their typography or animations. */
html[data-theme="light"] .index-stats h3,html[data-theme="light"] .service-section h2,html[data-theme="light"] .service-feature h3,html[data-theme="light"] .cta-card h3,html[data-theme="light"] .about-hero__tile strong,html[data-theme="light"] .careers-hero__stats strong{color:#6a4917}/* changed: applies the accessible bronze to prominent public values and headings. */
html[data-theme="light"] .index-stats p,html[data-theme="light"] .about-hero__tile span,html[data-theme="light"] .careers-hero__stats span,html[data-theme="light"] .site-footer{color:#4f595e}/* changed: darkens statistics, facility details, career facts, and footer copy on light backgrounds. */
html[data-theme="light"] .breadcrumbs a,html[data-theme="light"] .atf-breadcrumb a{color:#6a4917}/* changed: gives breadcrumb links sufficient contrast while retaining the bronze navigation cue. */
html[data-theme="light"] .breadcrumbs span,html[data-theme="light"] .atf-breadcrumb span{color:#596267}/* changed: keeps breadcrumb separators and current-location text visible in light mode. */
html[data-theme="light"] .btn:not(.primary),html[data-theme="light"] .btn.secondary{color:#6a4917;border-color:#6a4917;background-color:rgba(255,255,255,.72)}/* changed: strengthens outlined action text and borders against light cards and heroes. */
html[data-theme="light"] .btn.primary{background:#6a4917;color:#ffffff;border-color:#6a4917}/* changed: pairs the darker bronze primary action with readable white text. */
html[data-theme="light"] .btn.primary:hover,html[data-theme="light"] .showcase-card:hover .showcase-card__content .btn{background:#52370f;color:#ffffff}/* changed: preserves a clearly readable light-mode hover state for primary and card actions. */
html[data-theme="light"] .cta-card--secondary h3,html[data-theme="light"] .cta-card--secondary .cta-card__arrow{color:#185b7a}/* changed: darkens the secondary blue call to action for readable light-mode contrast. */
html[data-theme="light"] .form input::placeholder,html[data-theme="light"] .form textarea::placeholder,html[data-theme="light"] .atf-filter-bar input::placeholder{color:#687277;opacity:1}/* changed: makes instructional placeholder text readable in light-mode form fields. */
html[data-theme="light"] .login-form h2,html[data-theme="light"] .job-card h3,html[data-theme="light"] .card h3{color:#6a4917}/* changed: corrects legacy authenticated and listing headings that still use the original pale bronze. */
html[data-theme="light"] .login-form p,html[data-theme="light"] .job-card .muted{color:#556065}/* changed: corrects legacy login and job metadata that still use dark-theme gray. */
