.toast-container {
    z-index: 1060;
}
.toast {
    border-radius: 12px;
    border: none;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}
.toast-success {
    background: #10b981;
    color: #fff;
}
.toast-error {
    background: #ef4444;
    color: #fff;
}
:root{
    --brand-900:#081a2f;
    --brand-800:#0d2d4f;
    --brand-700:#163d67;
    --accent:#f97316;
    --accent-2:#fb923c;
    --light:#f5f7fb;
    --text:#142033;
    --muted:#667085;
    --radius:20px;
    --shadow:0 18px 40px rgba(8,26,47,.12);
}

body{
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: var(--light);
    color: var(--text);
}

.container{ max-width: 1180px; }

.topbar{
    background: linear-gradient(90deg, var(--brand-900), var(--brand-800));
    color: rgba(255,255,255,.92);
}

.topbar a{
    color: rgba(255,255,255,.92);
    text-decoration: none;
}

.topbar a:hover{ color:#fff; }

.navbar{ backdrop-filter: blur(10px); }

.navbar-brand{
    font-weight: 800;
    letter-spacing: .2px;
}

.nav-link{ font-weight: 600; }

.nav-link.active{ color: var(--accent) !important; }

.btn-accent{
    background: linear-gradient(90deg, var(--accent), var(--accent-2));
    color: #fff;
    border: 0;
    font-weight: 700;
    box-shadow: 0 12px 24px rgba(249,115,22,.22);
}

.btn-accent:hover{
    color:#fff;
    filter: brightness(.98);
}

.btn-outline-white{
    border: 1px solid rgba(255,255,255,.35);
    color: #fff;
}

.btn-outline-white:hover{
    background: rgba(255,255,255,.08);
    color:#fff;
    border-color: rgba(255,255,255,.45);
}

.section{ padding: 72px 0; }
.section-sm{ padding: 56px 0; }

.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    padding:.5rem .85rem;
    border-radius:999px;
    background: rgba(249,115,22,.12);
    color:#9a3412;
    font-size:.9rem;
    font-weight:700;
    border:1px solid rgba(249,115,22,.18);
}

.hero{
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    background: var(--brand-900);
    box-shadow: var(--shadow);
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
            linear-gradient(90deg, rgba(8,26,47,.92) 0%, rgba(8,26,47,.76) 48%, rgba(8,26,47,.30) 100%),
            radial-gradient(700px 400px at 15% 20%, rgba(249,115,22,.18), transparent 70%),
            url("images/motorszerelo-forgacsolo-hero.jpg") center/cover no-repeat;
}

.hero-content{
    position:relative;
    z-index:1;
    padding: 84px 36px;
}

.hero h1{
    color:#fff;
    font-weight:800;
    line-height:1.05;
    margin-bottom:1rem;
}

.hero p{
    color: rgba(255,255,255,.82);
    font-size: 1.1rem;
    max-width: 680px;
}

.hero-badges{
    display:flex;
    flex-wrap:wrap;
    gap:.75rem;
    margin-bottom:1.25rem;
}

.hero-badge{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    padding:.55rem .9rem;
    border-radius:999px;
    color:#fff;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.16);
    font-weight:600;
    font-size:.92rem;
}

.glass-box{
    background: rgba(255,255,255,.95);
    border: 1px solid rgba(20,32,51,.08);
    border-radius: var(--radius);
    box-shadow: 0 18px 40px rgba(8,26,47,.10);
}

.card-soft{
    border:0;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.icon-wrap{
    width:52px;
    height:52px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background: linear-gradient(180deg, rgba(249,115,22,.16), rgba(251,146,60,.08));
    color: var(--accent);
    border:1px solid rgba(249,115,22,.20);
    font-size:1.35rem;
    flex-shrink:0;
}

.benefit-card{
    height:100%;
    padding:1.5rem;
    background:#fff;
    border-radius: var(--radius);
    border:1px solid rgba(20,32,51,.06);
    box-shadow: 0 12px 30px rgba(8,26,47,.07);
}

.photo-card{
    overflow:hidden;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    background:#fff;
    height:100%;
}

.photo-card img{
    width:100%;
    height:100%;
    min-height:320px;
    object-fit:cover;
    display:block;
}

.check-list{
    padding:0;
    margin:0;
    list-style:none;
}

.check-list li{
    position:relative;
    padding-left:1.9rem;
    margin-bottom:.9rem;
    color: var(--muted);
}

.check-list li::before{
    content:"\F26E";
    font-family:"bootstrap-icons";
    position:absolute;
    left:0;
    top:1px;
    color:#16a34a;
    font-size:1rem;
}

.job-card{
    background:#fff;
    border:1px solid rgba(20,32,51,.08);
    border-radius:18px;
    padding:1.25rem;
    box-shadow: 0 12px 26px rgba(8,26,47,.06);
    height:100%;
}

.job-chip{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    padding:.4rem .7rem;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid rgba(20,32,51,.08);
    font-size:.84rem;
    font-weight:600;
    color:#475467;
}

.steps{
    counter-reset: step;
}

.step-card{
    position:relative;
    padding:1.5rem;
    background:#fff;
    border:1px solid rgba(20,32,51,.06);
    border-radius: var(--radius);
    box-shadow: 0 12px 26px rgba(8,26,47,.06);
    height:100%;
}

.step-card::before{
    counter-increment: step;
    content: counter(step);
    position:absolute;
    top:1rem;
    right:1rem;
    width:38px;
    height:38px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background: rgba(249,115,22,.14);
    color:#9a3412;
    font-weight:800;
}

.faq .accordion-item{
    border:0;
    border-radius:16px !important;
    overflow:hidden;
    box-shadow: 0 10px 24px rgba(8,26,47,.06);
    margin-bottom:1rem;
}

.faq .accordion-button{
    font-weight:700;
    padding:1.15rem 1.2rem;
}

.faq .accordion-button:not(.collapsed){
    color: var(--brand-800);
    background: #fff7ed;
    box-shadow:none;
}

.faq .accordion-body{
    color: var(--muted);
    background:#fff;
}

.apply-box{
    position:relative;
    overflow:hidden;
}

.apply-box::before{
    content:"";
    position:absolute;
    inset:0;
    background:
            radial-gradient(500px 240px at 0% 0%, rgba(249,115,22,.08), transparent 65%);
    pointer-events:none;
}

.apply-box > *{
    position:relative;
    z-index:1;
}

.cta-box{
    position:relative;
    overflow:hidden;
    background: linear-gradient(135deg, var(--brand-900), var(--brand-800));
    color:#fff;
    border-radius:28px;
    box-shadow: var(--shadow);
}

.cta-box::before{
    content:"";
    position:absolute;
    inset:0;
    background:
            radial-gradient(500px 260px at 10% 10%, rgba(249,115,22,.22), transparent 70%),
            url("images/motorszerelo-forgacsolo-cta.jpg") center/cover no-repeat;
    opacity:.18;
}

.cta-box > *{
    position:relative;
    z-index:1;
}

footer{
    background: linear-gradient(180deg, var(--brand-900), #04111d);
    color: rgba(255,255,255,.88);
}

footer a{
    color: rgba(255,255,255,.88);
    text-decoration:none;
}

footer a:hover{ color:#fff; }

@media (max-width: 991.98px){
    .hero-content{ padding: 64px 24px; }
    .hero h1{ font-size: 2.35rem; }
}

@media (max-width: 575.98px){
    .hero-content{ padding: 48px 18px; }
    .hero h1{ font-size: 2rem; }
    .section{ padding: 56px 0; }
}