/* =========================================================
   SVÉDCÉG — svedceg.hu stylesheet
   Sections: 1 Base · 2 Header · 3 Hero & layout · 4 Buttons · 5 Cards
   6 Testimonials · 7 Blog & article · 8 Contact & forms · 9 Privacy page
   10 Footer · 11 Floating language menu & back-to-top button · 12 Cookie consent
   13 Reveal animations · 14 Responsive · 15 Reduced motion
   When you change this file, bump "assetVersion" in _src/site.json and rebuild.
   ========================================================= */

/* 1. BASE */
:root{--navy:#0b2f66;--navy2:#071f46;--gold:#f2c400;--gold2:#ffd84a;--ink:#122033;--muted:#64748b;--line:#e5eaf1;--soft:#f6f8fc;--white:#fff;--shadow:0 20px 60px rgba(9,35,76,.10);--slide:1.6s cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);line-height:1.65;background:#fff}
button,input,textarea,select{font-family:inherit}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
.container{width:min(1180px,92%);margin:auto}
section{padding:82px 0}
h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;letter-spacing:-.025em;margin:0 0 18px}
.center{text-align:center}
.center .sub{margin-left:auto;margin-right:auto}
.sub{color:var(--muted);max-width:760px}
.soft{background:var(--soft)}
.dark{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff}
.dark .lead,.dark .sub{color:#d9e4f4}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:900;color:var(--navy);margin-bottom:12px}
.lead{font-size:1.18rem;color:#475569;max-width:760px}

/* 2. HEADER & NAVIGATION */
header{position:sticky;top:0;z-index:99;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(12,47,102,.08);backdrop-filter:blur(14px)}
.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo img{width:180px;max-height:60px;object-fit:contain}
.navlinks{display:flex;gap:28px;align-items:center;font-weight:750}
.navlinks a{position:relative;padding:27px 0}
.navlinks a:after{content:"";position:absolute;left:50%;bottom:18px;width:0;height:3px;background:var(--gold);border-radius:9px;transition:.25s}
.navlinks a:hover{color:var(--navy);transform:translateY(-1px)}
.navlinks a:hover:after{width:100%;left:0}
.navlinks .nav-contact-cta{margin-left:20px;padding:10px 18px;border-radius:10px;background:var(--navy);color:#fff;box-shadow:0 7px 18px rgba(11,47,102,.16);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.navlinks .nav-contact-cta:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,47,102,.24);background:#124486}
.navlinks .nav-contact-cta::after{display:none}
.langs{display:flex;gap:6px}
.langs a{padding:7px 10px;border-radius:9px;background:#f1f4f8;font-size:.86rem;font-weight:800}
.langs .active{background:var(--navy);color:white}
.menu{display:none;border:0;background:transparent;font-size:1.7rem}

/* 3. HERO & LAYOUT */
.hero{padding:96px 0 84px;background:radial-gradient(circle at 88% 15%,#fff4b7 0,transparent 24%),linear-gradient(120deg,#f6f8fc,#fff 60%)}
.hero-grid,.split{display:grid;grid-template-columns:1.04fr .96fr;gap:58px;align-items:center}
.hero h1{font-size:clamp(2.55rem,5.3vw,5rem);line-height:1.02;letter-spacing:-.04em;margin:.12em 0 .28em}
.photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow);background:#eef2f7}
.photo img{width:100%;height:100%;min-height:360px;object-fit:cover}
.photo.brand-photo{position:relative}

/* 4. BUTTONS & LINKS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 21px;border:0;border-radius:12px;background:var(--gold);color:#0b2551;font-weight:900;box-shadow:0 10px 25px rgba(242,196,0,.22);transition:.22s;cursor:pointer}
.btn:hover{transform:translateY(-3px) scale(1.015);background:var(--gold2);box-shadow:0 16px 32px rgba(242,196,0,.28)}
.btn:active{transform:translateY(0) scale(.98);background:#e0b600}
.btn.secondary{background:var(--navy);color:#fff;box-shadow:0 10px 25px rgba(11,47,102,.2)}
.btn.secondary:hover{background:#154985}
.card-link{position:relative;display:inline-flex;align-items:center;gap:.25rem;margin-top:4px;font-weight:850;color:var(--navy);transition:color .28s ease,transform .28s ease}
.card-link::after{content:"";position:absolute;left:0;right:1.15rem;bottom:-4px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.service-card:hover .card-link,.post-card:hover .card-link{color:#154985;transform:translateX(4px)}
.service-card:hover .card-link::after,.post-card:hover .card-link::after{transform:scaleX(1)}

/* 5. CARDS */
/* Service cards */
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px}
.service-card{position:relative;overflow:hidden;min-height:360px;text-align:center;padding:38px 30px 30px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 35px rgba(9,35,76,.06);transition:.3s}
.service-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--navy),var(--gold));transform:scaleX(.35);transition:.3s}
.service-card:hover{transform:translateY(-10px);box-shadow:0 24px 55px rgba(9,35,76,.15);border-color:#d7dfeb}
.service-card:hover:before{transform:scaleX(1)}
.service-card h3{font-size:1.25rem;margin:0 0 10px}
.svc-icon{width:88px;height:88px;margin:0 auto 22px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#eef4fb,#fff9d9);color:var(--navy);transition:.3s}
.service-card:hover .svc-icon{transform:scale(1.08) rotate(-2deg);background:linear-gradient(145deg,#fff4ad,#eef4fb)}
.svc-icon svg{width:48px;height:48px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.price{font-size:1.25rem;font-weight:900;color:var(--navy);margin:18px 0}
/* Features & relocation cards */
.features{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:26px 0}
.feature{background:#fff;border:1px solid var(--line);padding:18px;border-radius:16px}
.features .relocation-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:190px;padding:24px 18px;border-radius:18px;box-shadow:0 8px 26px rgba(9,35,76,.05);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.features .relocation-card:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(9,35,76,.12);border-color:#d7dfeb}
.relocation-icon{width:62px;height:62px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#eef4fb,#fff6bf);color:var(--navy);transition:transform .28s ease,background .28s ease}
.relocation-icon svg{width:35px;height:35px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.relocation-card:hover .relocation-icon{transform:translateY(-3px) scale(1.07);background:linear-gradient(145deg,#fff2a0,#eef4fb)}
.relocation-card b{font-size:1.02rem;color:var(--navy);margin-top:2px}
/* Process steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;text-align:center;transition:.3s}
.step:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(9,35,76,.10)}
.step b{font-size:2.3rem;color:var(--gold)}
.step-icon{width:78px;height:78px;margin:0 auto 18px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(145deg,#eef4fb,#fff9d9);color:var(--navy)}
.step-icon svg{width:44px;height:44px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* Accounting cards */
.accounting-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}
.accounting-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:210px;padding:26px 20px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:18px;transition:.3s}
.accounting-card:hover{transform:translateY(-6px);box-shadow:0 16px 36px rgba(9,35,76,.11)}
.accounting-card h3{text-align:center;margin:4px 0 8px}
.accounting-card p{margin:0;color:var(--muted);text-align:center}
.mini-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff6bf;color:var(--navy);font-weight:900;transition:.25s}
.accounting-card .mini-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:18px;background:linear-gradient(145deg,#eef4fb,#fff6bf);color:var(--navy)}
.accounting-card .mini-icon svg{width:36px;height:36px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.accounting-card:hover .mini-icon{transform:translateY(-3px) scale(1.08);background:linear-gradient(145deg,#fff2a0,#eef4fb)}

/* 6. TESTIMONIALS (horizontal slide carousel driven by assets/site.js) */
.testimonials{padding:58px 0;background:#fff}
.testimonial-shell{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:315px;max-width:860px;margin:auto;padding:10px 70px;text-align:center}
.testimonial blockquote::before{content:"“";content:"“" / "";display:block;height:.55em;margin:0 0 12px;font-size:4rem;line-height:1;color:var(--gold);font-family:Georgia,serif} /* decorative mark above each quote, slides with it */
.testimonial-shell .testimonial{display:block;position:absolute;left:70px;right:70px;top:50%;margin:0;opacity:0;transform:translate(52px,-50%);visibility:hidden;pointer-events:none;transition:opacity var(--slide),transform var(--slide),visibility 0s linear 1.6s;animation:fadeSlide .55s ease}
.testimonial-shell .testimonial.active{opacity:1;transform:translate(0,-50%);visibility:visible;pointer-events:auto;transition:opacity var(--slide),transform var(--slide),visibility 0s}
.testimonial-shell .testimonial.slide-out-left{opacity:0;transform:translate(-52px,-50%);visibility:visible;pointer-events:none}
.testimonial-shell .testimonial.enter-from-left{opacity:0;transform:translate(-52px,-50%);visibility:visible}
.testimonial-shell .testimonial.testimonial-enter-right{opacity:0;transform:translate(52px,-50%);visibility:visible}
.testimonial-shell .testimonial.testimonial-exit-right{opacity:0;transform:translate(52px,-50%);visibility:visible;pointer-events:none}
.testimonial blockquote{font-size:1.25rem;line-height:1.55;margin:8px auto 14px;max-width:760px}
.testimonial cite{font-style:normal;font-weight:850;color:var(--navy)}
.testimonial cite a{color:#2a6fc4;padding:1px 4px;margin:0 -4px;border-radius:5px;transition:color .2s ease,background-color .2s ease}
.testimonial cite a:hover,.testimonial cite a:focus-visible{color:var(--navy);background:#fff1b8}
.slider-btn{position:absolute;top:50%;z-index:3;transform:translateY(-50%);width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:50%;cursor:pointer;font-size:1.3rem;transition:.2s}
.slider-btn:hover{background:var(--navy);color:#fff}
.slider-btn.prev{left:5px}
.slider-btn.next{right:5px}
.dots{position:absolute;left:50%;bottom:4px;z-index:3;transform:translateX(-50%);display:flex;justify-content:center;gap:8px;margin-top:18px}
.dot{width:8px;height:8px;border-radius:50%;border:0;background:#cbd5e1;padding:0;cursor:pointer;transition:width .35s ease,background .35s ease}
.dot.active{background:var(--gold);width:24px;border-radius:10px}
@keyframes fadeSlide{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}

/* 7. BLOG & ARTICLE */
.blog-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}
.filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:800;cursor:pointer}
.filter.active,.filter:hover{background:var(--navy);color:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(9,35,76,.06);transition:.3s}
.post-card:hover{transform:translateY(-7px);box-shadow:0 20px 45px rgba(9,35,76,.13)}
.post-thumb{aspect-ratio:16/9;overflow:hidden;background:#eef2f7}
.post-thumb img{width:100%;height:100%;object-fit:cover;transition:.45s}
.post-card:hover .post-thumb img{transform:scale(1.045)}
.post-body{padding:22px}
.post-body h3{font-size:1.18rem;line-height:1.3;margin:0 0 10px}
.post-body p{color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.category{display:inline-block;color:var(--navy);font-size:.77rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px}
.article{max-width:850px;margin:auto}
.article-hero{padding:68px 0 48px;background:var(--soft)}
.article h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.08}
.article-content{font-size:1.08rem}
.article-content p{margin:0 0 1.2em}
.article-content h2{font-size:clamp(1.4rem,2.6vw,1.75rem);line-height:1.25;letter-spacing:-.01em;margin:1.8em 0 .6em}
.article-content ul{margin:0 0 1.2em;padding-left:1.3em}
.article-content li{margin:0 0 .35em}
.article-content li::marker{color:var(--gold)}
.article-image{margin:0 0 34px}

/* 8. CONTACT & FORMS */
.contact-wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:stretch}
.contact-info{padding:38px;border-radius:24px;background:linear-gradient(145deg,var(--navy2),var(--navy));color:#fff;box-shadow:var(--shadow)}
.contact-info p{color:#dbe6f5}
.contact-details{display:grid;gap:16px;margin-top:22px}
.contact-details>div{display:grid;gap:3px}
.contact-details a{display:inline-block;color:#fff;font-weight:500;transition:color .2s ease,transform .2s ease}
.contact-details a:hover{color:var(--gold);transform:translateX(3px)}
.contact-label{display:block;font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:inherit;opacity:.82}
.language-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.language-pills span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:7px 11px}
.contact-card{padding:36px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field.full{grid-column:1/-1}
.field label{display:block;font-size:.85rem;font-weight:850;margin:0 0 6px}
.field input,.field textarea,.field select{width:100%;border:1px solid #d6dde8;border-radius:12px;padding:14px 15px;font:inherit;outline:none;transition:.2s;background:#fbfcfe}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(242,196,0,.14);background:#fff}
.field textarea{min-height:145px;resize:vertical}
.privacy-check{grid-column:1/-1;display:flex;gap:11px;align-items:flex-start;font-size:.88rem;color:var(--muted);cursor:pointer}
.privacy-check input{width:19px;height:19px;margin-top:2px;accent-color:var(--navy)}
.privacy-check a{color:var(--navy);text-decoration:underline;font-weight:750}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important} /* spam honeypot: must stay hidden */
.form-message{margin:0 0 18px;padding:12px 14px;border-radius:10px;font-weight:700}
.form-success{background:#eef8f1;color:#176234;border:1px solid #bfe1c9}
.form-error{background:#fff2f2;color:#8a2020;border:1px solid #efc2c2}

/* 9. PRIVACY POLICY PAGE */
.privacy{max-width:900px;margin:auto}
.privacy h2{font-size:1.65rem;margin-top:38px}
.privacy h3{margin-top:26px}

/* 10. FOOTER (visual column order: brand | quick links | contact) */
footer{background:#081a38;color:#fff;padding-top:48px}
.footer-main{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:56px;align-items:start;padding-bottom:38px}
.footer-main>div:nth-child(1){order:1}
.footer-main>div:nth-child(2){order:3}
.footer-main>div:nth-child(3){order:2}
.footer-main p,.footer-main a{color:#e8eef7}
.footer-main p{max-width:330px}
.footer-main a:hover{color:var(--gold)}
.footer-logo{width:180px;background:#fff;padding:8px;border-radius:9px}
.footer-heading{display:block;margin-bottom:16px;font-size:.82rem;letter-spacing:.06em}
.footer-links{display:flex;flex-direction:column;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:0}
.footer-contact{display:grid;gap:16px;margin-top:0}
.footer-contact>div{display:grid;gap:3px}
.footer-contact a{display:inline-block;color:#e8eef7;font-weight:500;transition:color .2s ease,transform .2s ease}
.footer-contact a:hover{color:var(--gold);transform:translateX(3px)}
.footer-contact .contact-label{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;text-align:center;font-size:.86rem;line-height:1.6;color:#e2e8f0}
.footer-bottom .container{display:flex;justify-content:space-between;align-items:center;gap:24px;text-align:left}
.footer-bottom a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4);transition:color .2s ease,border-color .2s ease}
.footer-bottom a:hover{color:#fff;border-bottom-color:#fff}
.footer-legal-left{min-width:0}
.footer-legal-right{display:flex;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap}
.cookie-settings-link{display:inline;padding:0;margin:0;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.4);border-radius:0;color:inherit;font:inherit;text-decoration:none;cursor:pointer}
.cookie-settings-link:hover{color:#fff;border-bottom-color:#fff}

/* 11. FLOATING LANGUAGE MENU (bottom right) */
.floating-language-menu{position:fixed;right:22px;bottom:22px;z-index:120;font-size:1rem;font-weight:800}
.floating-language-trigger{display:flex;align-items:center;justify-content:center;width:48px;height:44px;padding:0;border:1px solid rgba(11,47,102,.14);border-radius:12px;background:rgba(255,255,255,.97);color:var(--navy);box-shadow:0 12px 34px rgba(7,31,70,.18);cursor:pointer;font:inherit;transition:transform .25s ease,box-shadow .25s ease}
.floating-language-trigger:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(7,31,70,.24)}
.floating-language-options{position:absolute;right:0;bottom:calc(100% + 8px);width:52px;padding:5px;background:#fff;border:1px solid rgba(11,47,102,.12);border-radius:12px;box-shadow:0 16px 40px rgba(7,31,70,.2);opacity:0;visibility:hidden;transform:translateY(8px) scale(.98);transform-origin:bottom right;transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
.floating-language-menu.open .floating-language-options{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.language-option{display:flex;align-items:center;justify-content:center;width:42px;height:38px;padding:0;margin:0;border-radius:9px;color:var(--navy);transition:background .2s ease,transform .2s ease}
.language-option+.language-option{margin-top:3px}
.language-option.active{background:#eef3f9}
.language-option:hover{background:#f1f4f8;transform:translateY(-1px)}
/* Flags are inline SVG data URIs: no extra requests, identical on every platform. */
.floating-language-menu .flag{display:inline-block;width:24px;height:16px;flex:0 0 24px;border-radius:2px;box-shadow:0 0 0 1px rgba(7,31,70,.12);overflow:hidden;position:relative;font-size:0;line-height:0;background-position:center;background-size:100% 100%;background-repeat:no-repeat}
.floating-language-trigger .flag{width:26px;height:18px;flex-basis:26px}
.floating-language-menu .flag-hu{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' preserveAspectRatio='none'%3E%3Cpath fill='%23ce2939' d='M0 0h6v1H0z'/%3E%3Cpath fill='%23fff' d='M0 1h6v1H0z'/%3E%3Cpath fill='%23477050' d='M0 2h6v1H0z'/%3E%3C/svg%3E")}
.floating-language-menu .flag-sv{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10' preserveAspectRatio='none'%3E%3Crect width='16' height='10' fill='%23006aa7'/%3E%3Cpath fill='%23fecc00' d='M5 0h2v10H5zM0 4h16v2H0z'/%3E%3C/svg%3E")}
.floating-language-menu .flag-en{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1235 650' preserveAspectRatio='none'%3E%3Crect width='1235' height='650' fill='%23fff'/%3E%3Cg fill='%23b22234'%3E%3Crect y='0' width='1235' height='50'/%3E%3Crect y='100' width='1235' height='50'/%3E%3Crect y='200' width='1235' height='50'/%3E%3Crect y='300' width='1235' height='50'/%3E%3Crect y='400' width='1235' height='50'/%3E%3Crect y='500' width='1235' height='50'/%3E%3Crect y='600' width='1235' height='50'/%3E%3C/g%3E%3Crect width='494' height='350' fill='%233c3b6e'/%3E%3Cpath fill='%23fff' d='M41.2,15L45.7,28.8L60.2,28.8L48.4,37.4L52.9,51.2L41.2,42.6L29.4,51.2L33.9,37.4L22.1,28.8L36.7,28.8ZM123.5,15L128,28.8L142.5,28.8L130.8,37.4L135.3,51.2L123.5,42.6L111.7,51.2L116.2,37.4L104.5,28.8L119,28.8ZM205.8,15L210.3,28.8L224.9,28.8L213.1,37.4L217.6,51.2L205.8,42.6L194.1,51.2L198.6,37.4L186.8,28.8L201.3,28.8ZM288.2,15L292.7,28.8L307.2,28.8L295.4,37.4L299.9,51.2L288.2,42.6L276.4,51.2L280.9,37.4L269.1,28.8L283.7,28.8ZM370.5,15L375,28.8L389.5,28.8L377.8,37.4L382.3,51.2L370.5,42.6L358.7,51.2L363.2,37.4L351.5,28.8L366,28.8ZM452.8,15L457.3,28.8L471.9,28.8L460.1,37.4L464.6,51.2L452.8,42.6L441.1,51.2L445.6,37.4L433.8,28.8L448.3,28.8ZM82.3,50L86.8,63.8L101.4,63.8L89.6,72.4L94.1,86.2L82.3,77.6L70.6,86.2L75.1,72.4L63.3,63.8L77.8,63.8ZM164.7,50L169.2,63.8L183.7,63.8L171.9,72.4L176.4,86.2L164.7,77.6L152.9,86.2L157.4,72.4L145.6,63.8L160.2,63.8ZM247,50L251.5,63.8L266,63.8L254.3,72.4L258.8,86.2L247,77.6L235.2,86.2L239.7,72.4L228,63.8L242.5,63.8ZM329.3,50L333.8,63.8L348.4,63.8L336.6,72.4L341.1,86.2L329.3,77.6L317.6,86.2L322.1,72.4L310.3,63.8L324.8,63.8ZM411.7,50L416.2,63.8L430.7,63.8L418.9,72.4L423.4,86.2L411.7,77.6L399.9,86.2L404.4,72.4L392.6,63.8L407.2,63.8ZM41.2,85L45.7,98.8L60.2,98.8L48.4,107.4L52.9,121.2L41.2,112.6L29.4,121.2L33.9,107.4L22.1,98.8L36.7,98.8ZM123.5,85L128,98.8L142.5,98.8L130.8,107.4L135.3,121.2L123.5,112.6L111.7,121.2L116.2,107.4L104.5,98.8L119,98.8ZM205.8,85L210.3,98.8L224.9,98.8L213.1,107.4L217.6,121.2L205.8,112.6L194.1,121.2L198.6,107.4L186.8,98.8L201.3,98.8ZM288.2,85L292.7,98.8L307.2,98.8L295.4,107.4L299.9,121.2L288.2,112.6L276.4,121.2L280.9,107.4L269.1,98.8L283.7,98.8ZM370.5,85L375,98.8L389.5,98.8L377.8,107.4L382.3,121.2L370.5,112.6L358.7,121.2L363.2,107.4L351.5,98.8L366,98.8ZM452.8,85L457.3,98.8L471.9,98.8L460.1,107.4L464.6,121.2L452.8,112.6L441.1,121.2L445.6,107.4L433.8,98.8L448.3,98.8ZM82.3,120L86.8,133.8L101.4,133.8L89.6,142.4L94.1,156.2L82.3,147.6L70.6,156.2L75.1,142.4L63.3,133.8L77.8,133.8ZM164.7,120L169.2,133.8L183.7,133.8L171.9,142.4L176.4,156.2L164.7,147.6L152.9,156.2L157.4,142.4L145.6,133.8L160.2,133.8ZM247,120L251.5,133.8L266,133.8L254.3,142.4L258.8,156.2L247,147.6L235.2,156.2L239.7,142.4L228,133.8L242.5,133.8ZM329.3,120L333.8,133.8L348.4,133.8L336.6,142.4L341.1,156.2L329.3,147.6L317.6,156.2L322.1,142.4L310.3,133.8L324.8,133.8ZM411.7,120L416.2,133.8L430.7,133.8L418.9,142.4L423.4,156.2L411.7,147.6L399.9,156.2L404.4,142.4L392.6,133.8L407.2,133.8ZM41.2,155L45.7,168.8L60.2,168.8L48.4,177.4L52.9,191.2L41.2,182.6L29.4,191.2L33.9,177.4L22.1,168.8L36.7,168.8ZM123.5,155L128,168.8L142.5,168.8L130.8,177.4L135.3,191.2L123.5,182.6L111.7,191.2L116.2,177.4L104.5,168.8L119,168.8ZM205.8,155L210.3,168.8L224.9,168.8L213.1,177.4L217.6,191.2L205.8,182.6L194.1,191.2L198.6,177.4L186.8,168.8L201.3,168.8ZM288.2,155L292.7,168.8L307.2,168.8L295.4,177.4L299.9,191.2L288.2,182.6L276.4,191.2L280.9,177.4L269.1,168.8L283.7,168.8ZM370.5,155L375,168.8L389.5,168.8L377.8,177.4L382.3,191.2L370.5,182.6L358.7,191.2L363.2,177.4L351.5,168.8L366,168.8ZM452.8,155L457.3,168.8L471.9,168.8L460.1,177.4L464.6,191.2L452.8,182.6L441.1,191.2L445.6,177.4L433.8,168.8L448.3,168.8ZM82.3,190L86.8,203.8L101.4,203.8L89.6,212.4L94.1,226.2L82.3,217.6L70.6,226.2L75.1,212.4L63.3,203.8L77.8,203.8ZM164.7,190L169.2,203.8L183.7,203.8L171.9,212.4L176.4,226.2L164.7,217.6L152.9,226.2L157.4,212.4L145.6,203.8L160.2,203.8ZM247,190L251.5,203.8L266,203.8L254.3,212.4L258.8,226.2L247,217.6L235.2,226.2L239.7,212.4L228,203.8L242.5,203.8ZM329.3,190L333.8,203.8L348.4,203.8L336.6,212.4L341.1,226.2L329.3,217.6L317.6,226.2L322.1,212.4L310.3,203.8L324.8,203.8ZM411.7,190L416.2,203.8L430.7,203.8L418.9,212.4L423.4,226.2L411.7,217.6L399.9,226.2L404.4,212.4L392.6,203.8L407.2,203.8ZM41.2,225L45.7,238.8L60.2,238.8L48.4,247.4L52.9,261.2L41.2,252.6L29.4,261.2L33.9,247.4L22.1,238.8L36.7,238.8ZM123.5,225L128,238.8L142.5,238.8L130.8,247.4L135.3,261.2L123.5,252.6L111.7,261.2L116.2,247.4L104.5,238.8L119,238.8ZM205.8,225L210.3,238.8L224.9,238.8L213.1,247.4L217.6,261.2L205.8,252.6L194.1,261.2L198.6,247.4L186.8,238.8L201.3,238.8ZM288.2,225L292.7,238.8L307.2,238.8L295.4,247.4L299.9,261.2L288.2,252.6L276.4,261.2L280.9,247.4L269.1,238.8L283.7,238.8ZM370.5,225L375,238.8L389.5,238.8L377.8,247.4L382.3,261.2L370.5,252.6L358.7,261.2L363.2,247.4L351.5,238.8L366,238.8ZM452.8,225L457.3,238.8L471.9,238.8L460.1,247.4L464.6,261.2L452.8,252.6L441.1,261.2L445.6,247.4L433.8,238.8L448.3,238.8ZM82.3,260L86.8,273.8L101.4,273.8L89.6,282.4L94.1,296.2L82.3,287.6L70.6,296.2L75.1,282.4L63.3,273.8L77.8,273.8ZM164.7,260L169.2,273.8L183.7,273.8L171.9,282.4L176.4,296.2L164.7,287.6L152.9,296.2L157.4,282.4L145.6,273.8L160.2,273.8ZM247,260L251.5,273.8L266,273.8L254.3,282.4L258.8,296.2L247,287.6L235.2,296.2L239.7,282.4L228,273.8L242.5,273.8ZM329.3,260L333.8,273.8L348.4,273.8L336.6,282.4L341.1,296.2L329.3,287.6L317.6,296.2L322.1,282.4L310.3,273.8L324.8,273.8ZM411.7,260L416.2,273.8L430.7,273.8L418.9,282.4L423.4,296.2L411.7,287.6L399.9,296.2L404.4,282.4L392.6,273.8L407.2,273.8ZM41.2,295L45.7,308.8L60.2,308.8L48.4,317.4L52.9,331.2L41.2,322.6L29.4,331.2L33.9,317.4L22.1,308.8L36.7,308.8ZM123.5,295L128,308.8L142.5,308.8L130.8,317.4L135.3,331.2L123.5,322.6L111.7,331.2L116.2,317.4L104.5,308.8L119,308.8ZM205.8,295L210.3,308.8L224.9,308.8L213.1,317.4L217.6,331.2L205.8,322.6L194.1,331.2L198.6,317.4L186.8,308.8L201.3,308.8ZM288.2,295L292.7,308.8L307.2,308.8L295.4,317.4L299.9,331.2L288.2,322.6L276.4,331.2L280.9,317.4L269.1,308.8L283.7,308.8ZM370.5,295L375,308.8L389.5,308.8L377.8,317.4L382.3,331.2L370.5,322.6L358.7,331.2L363.2,317.4L351.5,308.8L366,308.8ZM452.8,295L457.3,308.8L471.9,308.8L460.1,317.4L464.6,331.2L452.8,322.6L441.1,331.2L445.6,317.4L433.8,308.8L448.3,308.8Z'/%3E%3C/svg%3E")}
/* Back-to-top button: sits above the language menu, shown by assets/site.js after scrolling down */
.back-to-top{position:fixed;right:22px;bottom:76px;z-index:110;display:grid;place-items:center;width:48px;height:44px;padding:0;border:1px solid rgba(11,47,102,.14);border-radius:12px;background:rgba(255,255,255,.97);color:var(--navy);box-shadow:0 12px 34px rgba(7,31,70,.18);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease,box-shadow .25s ease}
.back-to-top.visible{opacity:1;visibility:visible;transform:none}
.back-to-top.visible:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(7,31,70,.24)}
.floating-language-menu.open+.back-to-top{opacity:0;visibility:hidden}
.back-to-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* 12. COOKIE CONSENT BANNER (created by assets/site.js) */
.cookie-consent{position:fixed;left:20px;right:20px;bottom:20px;z-index:10000;display:flex;justify-content:center;pointer-events:none}
.cookie-consent-inner{width:min(760px,100%);background:#fff;border:1px solid rgba(10,54,110,.14);border-radius:16px;box-shadow:0 18px 55px rgba(9,37,75,.2);padding:18px 20px;display:flex;align-items:center;gap:20px;pointer-events:auto}
.cookie-consent p{margin:0;line-height:1.55;font-size:.94rem;color:#26384d;flex:1}
.cookie-consent a{color:#0b4d9b;text-decoration:underline;text-underline-offset:3px}
.cookie-consent-actions{display:flex;gap:10px;flex-shrink:0}
.cookie-consent button{font:inherit;cursor:pointer}
.cookie-consent-actions button{min-width:150px}
.cookie-reject,.cookie-accept{border-radius:10px;padding:10px 14px;font-weight:700;background:#0b4d9b;border:1px solid #0b4d9b;color:#fff;box-shadow:none}
.cookie-reject:hover,.cookie-accept:hover{background:#083d7c;transform:translateY(-1px);box-shadow:0 7px 18px rgba(11,77,155,.18)}

/* 13. REVEAL-ON-SCROLL ANIMATIONS (class "visible" is added by assets/site.js) */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.from-left{transform:translateX(-40px)}
.reveal.from-right{transform:translateX(40px)}
.reveal.visible,.reveal.from-left.visible,.reveal.from-right.visible{opacity:1;transform:none} /* beats the mobile from-left/right offset below */

/* 14. RESPONSIVE */
@media(min-width:881px){
  /* Fixed column geometry so the menu does not jump when switching language */
  .nav{display:grid;grid-template-columns:180px minmax(0,1fr) auto;column-gap:24px;align-items:center}
  .logo{justify-self:start}
  .navlinks{justify-self:end;display:grid;grid-template-columns:82px 148px 118px 62px 138px;gap:12px;align-items:center}
  .navlinks>a{justify-self:center;text-align:center;white-space:nowrap}
  .navlinks .nav-contact-cta{justify-self:end}
  .langs{justify-self:end}
  /* Legal footer on one row */
  .footer-bottom .container{flex-wrap:wrap;justify-content:center;gap:2px 6px;white-space:nowrap;width:min(1320px,96%);max-width:none;font-size:.80rem}
  .footer-legal-left{flex:0 0 auto;min-width:0} /* plain text flow keeps the spaces around the company link */
  .footer-legal-right{display:inline-flex;align-items:center;flex:0 0 auto;min-width:0}
  .footer-legal-right{justify-content:flex-start}
}
@media(min-width:681px){
  .cookie-consent{left:24px;right:24px;bottom:24px;align-items:flex-end}
  .cookie-consent-inner{width:min(880px,calc(100vw - 48px));padding:20px 22px;border-radius:18px;gap:24px;background:rgba(255,255,255,.98);box-shadow:0 20px 60px rgba(7,31,70,.22)}
  .cookie-consent p{font-size:.95rem;line-height:1.6}
  .cookie-consent-actions{align-items:center}
  .cookie-reject,.cookie-accept{min-height:42px;padding:10px 16px;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
}
@media(max-width:880px){
  .navlinks{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;flex-direction:column;padding:18px;box-shadow:0 20px 35px rgba(0,0,0,.08)}
  .navlinks.open{display:flex}
  .navlinks a{padding:9px}
  .navlinks .nav-contact-cta{display:inline-flex;width:max-content;margin-left:0;margin-top:8px}
  .menu{display:block}
  .hero{padding:64px 0}
  .hero h1{font-size:2.8rem}
  section{padding:60px 0}
  .hero-grid,.split,.contact-wrap{grid-template-columns:1fr}
  .service-cards,.blog-grid,.steps,.features,.accounting-cards{grid-template-columns:1fr}
  .photo img{min-height:260px}
  .accounting-card,.features .relocation-card{min-height:auto}
  .step:hover,.accounting-card:hover,.features .relocation-card:hover{transform:none}
  .form{grid-template-columns:1fr}
  .field.full{grid-column:auto}
  .testimonial-shell{min-height:390px;padding:8px 52px}
  .testimonial-shell .testimonial{left:52px;right:52px}
  .footer-main{grid-template-columns:1fr;gap:30px}
  .footer-main>div:nth-child(1),.footer-main>div:nth-child(2),.footer-main>div:nth-child(3){order:initial}
  .footer-bottom .container{flex-direction:column;gap:8px;text-align:center}
  .footer-legal-right{white-space:normal;flex-wrap:wrap;justify-content:center}
  .floating-language-menu{right:14px;bottom:14px}
  .back-to-top{right:14px;bottom:68px}
  .cookie-consent-actions button{min-width:0}
  .reveal.from-left,.reveal.from-right{transform:translateY(20px)}
}
@media(max-width:680px){
  .cookie-consent{left:12px;right:12px;bottom:12px}
  .cookie-consent-inner{align-items:stretch;flex-direction:column;gap:14px;padding:16px}
  .cookie-consent-actions{display:grid;grid-template-columns:1fr 1fr}
  .cookie-consent-actions button{width:100%}
}
@media(max-width:520px){
  .testimonial-shell{min-height:470px;padding-left:56px;padding-right:56px}
  .testimonial-shell .testimonial{left:56px;right:56px} /* keep text clear of the arrow buttons */
  .testimonial blockquote{font-size:1.08rem}
}

/* 15. REDUCED MOTION */
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
  .navlinks .nav-contact-cta,.floating-language-trigger,.floating-language-options,.language-option,
  .card-link,.card-link::after,.accounting-card,.features .relocation-card,.mini-icon,.relocation-icon,.back-to-top{transform:none!important}
  .testimonial-shell .testimonial{transform:translate(0,-50%)!important}
}
