@import url('../vendor/bootstrap/bootstrap.min.css');
@import url('../vendor/bootstrap-icons/bootstrap-icons.min.css');
@font-face{font-family:'Manrope';src:url('../fonts/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Manrope';src:url('../fonts/manrope-800.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/montserrat-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/montserrat-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/montserrat-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Montserrat';src:url('../fonts/montserrat-800.ttf') format('truetype');font-weight:800;font-display:swap}

:root { --navy:#073866; --navy-2:#05294c; --navy-3:#031d36; --coral:#ff634e; --coral-dark:#e74b38; --ice:#f3f7fa; --ink:#16283a; --muted:#637385; --white:#fff; --line:#dce6ed; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:'Manrope',sans-serif; font-size:16px; line-height:1.7; }
h1,h2,h3,.navbar { font-family:'Montserrat',sans-serif; }
h2 { font-size:clamp(2rem,4vw,3.5rem); font-weight:400; line-height:1.12; letter-spacing:-.04em; color:var(--navy-2); }
h2 span { color:var(--coral); }
p { color:var(--muted); }
a { text-decoration:none; }
.section-pad { padding:110px 0; }
.eyebrow { display:inline-flex; align-items:center; margin-bottom:18px; color:var(--coral); font-size:.76rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow.light { color:#ff9a8d; }
.btn { border-radius:5px; padding:.78rem 1.35rem; font-weight:700; transition:.25s ease; }
.btn-lg { padding:1rem 1.55rem; font-size:.98rem; }
.btn-coral { background:var(--coral); border-color:var(--coral); color:#fff; }
.btn-coral:hover { background:var(--coral-dark); border-color:var(--coral-dark); color:#fff; transform:translateY(-2px); }
.btn-outline-navy { border:1px solid var(--navy); color:var(--navy); }
.btn-outline-navy:hover { background:var(--navy); color:#fff; }
.site-header { padding:12px 0; transition:.3s; }
.site-header.scrolled { padding:4px 0; background:rgba(255,255,255,.97); box-shadow:0 8px 30px rgba(4,35,64,.1); backdrop-filter:blur(12px); }
.navbar-brand img { display:block; width:205px; height:68px; object-fit:contain; object-position:left center; }
.site-header:not(.scrolled) .navbar-brand img { filter:brightness(0) invert(1); }
.nav-link { margin:0 .2rem; color:#fff; font-size:.87rem; font-weight:700; }
.nav-link:hover { color:#ff8a7b; }
.scrolled .nav-link { color:var(--navy-2); }
.scrolled .nav-link:hover { color:var(--coral); }
.hero { position:relative; min-height:840px; overflow:hidden; color:#fff; }
.hero-photo { position:absolute; inset:0; background:url('../images/hero-welder.jpg') center 46%/cover no-repeat; transform:scale(1.02); }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,29,54,.96) 0%,rgba(5,41,76,.87) 44%,rgba(4,34,62,.24) 78%,rgba(4,34,62,.08) 100%); }
.hero .container { padding-top:125px; padding-bottom:65px; }
.hero h1 { max-width:780px; margin:0; font-size:clamp(3.2rem,5.6vw,5.25rem); font-weight:400; line-height:.98; letter-spacing:-.055em; }
.hero h1 span { color:var(--coral); }
.hero p { max-width:680px; margin-top:25px; color:rgba(255,255,255,.82); font-size:1.12rem; }
.hero-trust span { color:#fff; font-size:.9rem; font-weight:600; }
.hero-trust i { margin-right:7px; color:var(--coral); }
.scroll-cue { position:absolute; bottom:34px; left:50%; display:grid; width:44px; height:44px; place-items:center; transform:translateX(-50%); border:1px solid rgba(255,255,255,.45); border-radius:50%; color:#fff; animation:bob 1.7s infinite; }
@keyframes bob { 50% { transform:translate(-50%,7px); } }
.benefit-strip { position:relative; z-index:3; margin-top:-1px; background:var(--navy); }
.benefit-item { display:flex; gap:18px; min-height:150px; align-items:center; padding:30px 24px; border-right:1px solid rgba(255,255,255,.11); }
.benefit-item>i { color:var(--coral); font-size:2rem; }
.benefit-item h3 { margin:0 0 5px; color:#fff; font-size:.95rem; font-weight:700; }
.benefit-item p { margin:0; color:rgba(255,255,255,.61); font-size:.8rem; line-height:1.5; }
.photo-composition { position:relative; padding:0 52px 52px 0; }
.main-photo { width:100%; height:620px; object-fit:cover; filter:saturate(.72); }
.photo-badge { position:absolute; right:0; bottom:0; display:flex; width:245px; min-height:154px; flex-direction:column; justify-content:center; padding:28px; background:var(--coral); color:#fff; }
.photo-badge strong { font-family:'Montserrat'; font-size:1.4rem; }
.photo-badge span { font-size:.83rem; }
.corner-mark { position:absolute; top:-14px; left:-14px; width:68px; height:68px; border-top:5px solid var(--coral); border-left:5px solid var(--coral); }
.about-section p { max-width:650px; }
.lead-copy { font-size:1.08rem; font-weight:600; color:var(--ink); }
.check-list,.security-list { padding:0; margin:25px 0; list-style:none; }
.check-list li { margin:11px 0; font-weight:600; color:var(--navy); }
.check-list i { margin-right:10px; color:var(--coral); }
.text-link { color:var(--navy); font-weight:800; }
.text-link i { margin-left:8px; transition:.2s; }
.text-link:hover { color:var(--coral); }
.text-link:hover i { margin-left:14px; }
.services-section,.jobs-section { background:var(--ice); }
.section-heading { max-width:760px; }
.section-heading p { max-width:680px; margin:20px auto 0; }
.service-card { position:relative; height:100%; min-height:300px; padding:38px; overflow:hidden; background:#fff; border:1px solid #e4edf2; box-shadow:0 15px 50px rgba(5,41,76,.04); transition:.3s; }
.service-card:hover { transform:translateY(-7px); border-color:rgba(255,99,78,.45); box-shadow:0 22px 60px rgba(5,41,76,.12); }
.service-num { position:absolute; top:24px; right:28px; color:#e6edf2; font-family:'Montserrat'; font-size:2.6rem; font-weight:800; }
.service-icon { display:grid; width:58px; height:58px; place-items:center; background:#eef5f8; color:var(--navy); font-size:1.55rem; }
.service-card h3 { margin:25px 0 13px; color:var(--navy-2); font-size:1.1rem; font-weight:800; }
.service-card p { font-size:.9rem; line-height:1.75; }
.service-card>a { position:absolute; right:25px; bottom:24px; display:grid; width:38px; height:38px; place-items:center; background:var(--coral); color:#fff; }
.industries-section { position:relative; overflow:hidden; background:var(--navy-2); }
.industries-section:before { content:""; position:absolute; top:-100px; right:-100px; width:480px; height:480px; border:80px solid rgba(255,255,255,.025); transform:rotate(45deg); }
.industries-section h2,.industries-section p { color:#fff; }
.industries-section p { opacity:.66; }
.industry-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.industry-chip { display:flex; min-height:145px; flex-direction:column; align-items:center; justify-content:center; gap:13px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); color:#fff; transition:.25s; }
.industry-chip:hover { transform:translateY(-4px); background:var(--coral); border-color:var(--coral); }
.industry-chip i { font-size:1.8rem; }
.industry-chip span { font-size:.78rem; font-weight:700; }
.jobs-intro { max-width:420px; margin:0; }
.job-card { height:100%; padding:34px; background:#fff; border-bottom:4px solid transparent; box-shadow:0 15px 45px rgba(5,41,76,.07); transition:.3s; }
.job-card:hover { transform:translateY(-6px); border-color:var(--coral); }
.job-top { display:flex; align-items:center; justify-content:space-between; }
.job-icon { display:grid; width:58px; height:58px; place-items:center; background:var(--navy); color:#fff; font-size:1.5rem; }
.job-card .badge { padding:7px 10px; background:#e8f7ef; color:#18704a; border-radius:3px; }
.job-card h3 { margin:25px 0 8px; color:var(--navy-2); font-size:1.2rem; font-weight:800; }
.job-place { color:var(--coral); font-size:.88rem; font-weight:700; }
.job-meta { display:grid; gap:8px; padding:20px 0 25px; margin:18px 0 25px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-size:.83rem; }
.job-meta i { width:22px; color:var(--navy); }
.small-note { color:#8895a0; font-size:.76rem; }
.process-line { position:relative; display:grid; grid-template-columns:repeat(5,1fr); }
.process-line:before { content:""; position:absolute; top:29px; left:10%; right:10%; height:1px; background:#cad9e3; }
.process-step { position:relative; z-index:1; padding:0 18px; text-align:center; }
.process-step>span { display:grid; width:60px; height:60px; margin:0 auto 25px; place-items:center; background:#fff; border:2px solid var(--coral); border-radius:50%; color:var(--coral); font-family:'Montserrat'; font-weight:800; }
.process-step h3 { color:var(--navy-2); font-size:.95rem; font-weight:800; }
.process-step p { font-size:.82rem; line-height:1.6; }
.security-section { background:var(--navy); }
.security-section h2,.security-section p { color:#fff; }
.security-section p { opacity:.72; }
.security-section img { width:100%; height:520px; object-fit:cover; filter:saturate(.65); }
.security-list li { padding:11px 0; color:#fff; border-bottom:1px solid rgba(255,255,255,.1); }
.security-list i { margin-right:10px; color:var(--coral); }
.accordion-item { border-color:var(--line); }
.accordion-button { padding:22px 4px; color:var(--navy-2); font-family:'Montserrat'; font-size:.94rem; font-weight:700; box-shadow:none!important; }
.accordion-button:not(.collapsed) { color:var(--coral); background:#fff; }
.accordion-body { padding:0 4px 25px; color:var(--muted); font-size:.9rem; }
.registration-section { background:var(--ice); }
.registration-wrap { box-shadow:0 25px 80px rgba(4,35,64,.12); }
.registration-copy { padding:62px; background:var(--navy-2); color:#fff; }
.registration-copy h2,.registration-copy p { color:#fff; }
.registration-copy p { opacity:.7; }
.contact-line { display:flex; gap:15px; align-items:center; padding-top:28px; margin-top:32px; border-top:1px solid rgba(255,255,255,.15); }
.contact-line>i { color:var(--coral); font-size:2rem; }
.contact-line div { display:flex; flex-direction:column; }
.contact-line span { color:rgba(255,255,255,.6); font-size:.76rem; }
.registration-form { min-height:560px; padding:58px; background:#fff; }
.form-label { color:var(--navy-2); font-size:.78rem; font-weight:700; }
.form-control,.form-select { min-height:50px; border-color:#dce5eb; border-radius:3px; font-size:.9rem; }
textarea.form-control { min-height:auto; }
.form-control:focus,.form-select:focus { border-color:var(--coral); box-shadow:0 0 0 .2rem rgba(255,99,78,.12); }
.form-check-label { color:var(--muted); font-size:.75rem; }
.success-message { display:flex; height:100%; min-height:440px; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.success-message>i { color:#22a06b; font-size:4rem; }
.success-message h3 { margin-top:20px; color:var(--navy); font-weight:800; }
.site-footer { background:var(--navy-3); color:#fff; }
.footer-logo { width:250px; height:88px; object-fit:contain; object-position:left; margin-bottom:20px; }
.site-footer p { max-width:430px; color:rgba(255,255,255,.55); font-size:.85rem; }
.site-footer h3 { margin-bottom:20px; color:#fff; font-size:.83rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.site-footer a,.site-footer span { display:block; margin:9px 0; color:rgba(255,255,255,.57); font-size:.82rem; }
.site-footer a:hover { color:var(--coral); }
.site-footer span i { width:24px; color:var(--coral); }
.socials { display:flex; gap:8px; }
.socials a { display:grid; width:38px; height:38px; place-items:center; border:1px solid rgba(255,255,255,.16); }
.footer-bottom { display:flex; justify-content:space-between; padding:20px 0; border-top:1px solid rgba(255,255,255,.1); }
.footer-bottom span { font-size:.7rem; }
.whatsapp-float { position:fixed; right:24px; bottom:24px; z-index:20; display:grid; width:58px; height:58px; place-items:center; background:#25d366; border-radius:50%; color:#fff; font-size:1.65rem; box-shadow:0 12px 35px rgba(0,0,0,.22); transition:.2s; }
.whatsapp-float:hover { color:#fff; transform:scale(1.08); }
.reveal-up,.reveal-left,.reveal-right { opacity:0; transition:opacity .7s ease,transform .7s ease; }
.reveal-up { transform:translateY(28px); }
.reveal-left { transform:translateX(-35px); }
.reveal-right { transform:translateX(35px); }
.is-visible { opacity:1; transform:none; }
.hero .reveal-up { opacity:1; transform:none; }
@media(max-width:991px){
  .site-header { background:#fff; padding:4px 0; }
  .site-header:not(.scrolled) .navbar-brand img { filter:none; }
  .nav-link { color:var(--navy); }
  .navbar-collapse { padding:15px 0 22px; }
  .hero { min-height:760px; }
  .hero-overlay { background:rgba(3,29,54,.83); }
  .benefit-item { border-right:0; border-bottom:1px solid rgba(255,255,255,.1); }
  .industry-grid { grid-template-columns:repeat(4,1fr); }
  .process-line { grid-template-columns:repeat(2,1fr); gap:35px; }
  .process-line:before { display:none; }
  .registration-copy,.registration-form { padding:45px; }
}
@media(max-width:767px){
  .section-pad { padding:78px 0; }
  .navbar-brand img { width:170px; height:58px; }
  .hero { min-height:720px; padding-top:80px; }
  .hero h1 { font-size:3.3rem; }
  .hero .btn { width:100%; }
  .photo-composition { padding:0 25px 40px 0; }
  .main-photo { height:470px; }
  .photo-badge { width:210px; min-height:130px; }
  .industry-grid { grid-template-columns:repeat(2,1fr); }
  .process-line { grid-template-columns:1fr; }
  .registration-copy,.registration-form { padding:35px 25px; }
  .footer-bottom { flex-direction:column; }
}
@media(prefers-reduced-motion:reduce){ * { scroll-behavior:auto!important; animation:none!important; transition:none!important; } .reveal-up,.reveal-left,.reveal-right{opacity:1;transform:none;} }
