/* ═══════════════════════════════════════════════════════════════
   isiomedia – Global Stylesheet
   Geteilt von allen Seiten. Seitenspezifisches CSS bleibt inline.
   ═══════════════════════════════════════════════════════════════ */

/* ── FONTS ── */
@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:block;src:url('data:font/woff2;base64,d09GMgABAAAAABFoABAAAAAAJQAAABEIAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbhCQcKgZgP1NUQVRBAIIcEQgKoSSdcwuBFgABNgIkA4FgBCAFhDYHIBsFIKOirAF2N4YedsT/5wSyMWgY6LiVq/7+n9zy/YuAHchomCT7XON/7NLy/ymB5UjZkJWsVGLGDRnY6Ug3l7AYUpRKvWmbdtsufyjVYmv8dznBPdRGGMcXQnB0I4YAeN3+32OzXSAkEGYkWOKXhMLGHh8f/PquX/vC4hBZ6WR5ykjyFm/1bHyxe9bfvWHvb6o/AJF3zzF0b/hzTTuuhcYR/XPTYQqSaBYqAgCxeoCwcLFDO63c5+ft5gAyCGRzJFfliNxOCWoIlWdRKlQFDgE+t0P13PcVqx3K1bSHmGUKNqaFOmDSM3M+T3N5eYAhDYCEQhCFGEiHDJhVAklS9MNMTUgCG9G8E3kFmWS7uWHYq2Olk7+z/vwnDThSJYhIJyAAAxojRK/NfD5jfuVpyAULJnAc2GcE6OvD4lB+gCh/TlpPO41ycgYR0P2CXpBQrUAKihAAwHqIKxR5IHNHngCSWqEQrVCUbph5JF6YeSxJjD0FDuEsb7YIZ7jB/m0iPCi4kJgWVpMsqfpCN1JITAvRHH8Q78S4Y+VKwuNS04lkL5CLhm+JK5IUUklVUtla61X0sUYe6NNjnoGmWCqWZZaY5vdzjvtumtu+uN/bIXuFNfrTtfIJ0YJCVKlqaRdj96x4ieJn3YByYPxTiOMAJGCGUkRBhBLlwhMAI5iIYhSoM7hpijyb3aqUVKkHnAOmpqlJwXuWEpKapERzU5qsdbKSmKKtLGmqpF8kq3PnnthJc+8k2AP6LHSJzE2ZxZcOEipcoRZ/yrZFopp6r6mhhijrk++KzIMqvtcLfMoyJGEuIljqBNmHjJpSu08BJr0GaIkeZYYMUVGW2cCeqpkFJlqo23hcH+h2w6yjk0fVqb8jxwBuq4i1f4UqLK66+FTr16N+5Z4LjmcIEkGJbLT2Qj7NKVXqW3Fy2BpYS9RTL2J0nHr2VBl1vU/eYdx8v1Cl3F78gy3XuZaWjDM28rHQiMsSE4j8NPfXuL/sLhz5pyDoGaM+oX94GRo9GtxuVLGGUEYycoiRTKyKpJKk+oSi/DqV0j7E8Hj16jbo0mug0ZaY61t9rjkHqw+Bze7Gy84lnrKuWrYaYYSqjSbRHclkabJEmRLlmqwyyDl+OkK6647T60N7D7D4ERjsJ45VVCxYUUkUJUcY10MsMCC+MJH9YYj3L4hxN/dGc7bVOvW12vlY/6JUyeEi1mklikSIlOvZ+R2I3EaZJkypKdJ1eSvELlqkpV01ij+7a+9s+zI3bZ7Zhz0d/I5lLnuhV4H47+yx3Ru7H3X7uuJVUUpVKZDXWWPc/RIKj0LcwAgA=') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:block;src:url('data:font/woff2;base64,d09GMgABAAAAABGYABAAAAAAJTgAABE9AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGIEXHB4cKgZgP1NUQVRBAIIcEQgKoUCddQuBFgABNgIkA4FgBCAFhEAHIBsFIKOirCnY7WmEhx0CMUBY3aIKt+j/cwLZGDQsdNzPbf+HxhJEGgn+12YnfwBQrAD1iOpuqoJqQA1F2FGl3bbttn9eoJrtGv8TBd88xVHT4e3DYgUiODqSQAC8bv/tsV0tEBIIM5JYIo9EwsYeXx/88q5+ZfRCkigvPQ9B7kp6N9K3/K4+cH8Ij4gJYNSG/Rf+TBP+s4nBKj+iauY3vIR35MGKgI5FwjBgmBR8P+jgoO9c2MCIockcXyEYsQCqKRRSkpUdRqlcoCAIECN8b1fN5g0vLArNlN/z1VyiTLVsMopY5oce0NdjdDlhcSA/9jcPGwQgjgCQYhiRIIjJ6pkELDcJZu4Ol7j2USvLxN2rPsULTVyd7Z/38TBp2oEiUkEpCRAYwRo1fm35wxv/O05ALFk7geHDMCdHXh8Wh/ABV/py0nnYa5eQMI+HjLXtDobqAVRShAYD1EFcockJnp7wAJLVAEVqhGN0w8kg9MfJYA5h8ih3COV/sEMwJsYRKRHhRdQGwKi0m2dN0hO6kEJgXoji+oV+J8MfKlYPGJacSSFshT4wNJalIcUoVUipNS63V0sUYe6PNjng2M8QUiy2z2l6Puu2E62655Z7/PxbhT7TRne4X5YRCGmmpM50baDAnRZbpk5A8WO+0n7P54LgjkCNChFBMGkVRYSSJcAXHiJQmJuZos6t2avlqZB6wjtoaueLFrljJKapER6089qKkaJFUkjRHqhaLK922CvMD4b9G4CWMQP3JhzNvwYULk6oTd0Y+S2aGClrp/IyDpppp7p0Kj9lsr8/KPKqzxgHPyzyuYCwjMeIkTiWd2PFSlI8/+8FnnpshYaaNVrrqnc+KrHGIu2UeFTGSEC9xBG3CxEsuXaGFl1iDNkOMNMcCK66oauPcUUeFVCpTbbwtDPY/ZNNRzqHp08bUF4E3UM9dvMKXElVefyt06tW/S88ExzOHCSTBslp6II/kkqr0LLmldA0sJeopVjHbTzx6K4263qfvMG6+X6hS7i7+wZbrXEuPxhkb+VhoxGWJCUR+mvtr3F/2F478UxD0jFGf0D+8DI0eDSE7q1hFKCMZOcRIJlZF0klSfUJRfh1KaR9ieLx69etX79+E837DTTOOusdcsFdWH2+bnY3XnCMjNRz1bDXDCVUaTaJ7komTZMlSZcsVWEWwctx0hVX3HYMUA/Y/RMg3OFcxSqh4kKKSCGquEbaGWOBBU+FD2uMRzn8w4k/urOdDpnXrefKR/0SJk+JFjNJKJKkRKfe2CJ+J3GaJJmy5OTJF6awULma0jX1aPTeVrf+eXbELrsdc672G9Fc6lw3glPh6L/cEb0bez/u9nPHrYSqJcoMNdYz/x8JjiKbwgQA') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:block;src:url('data:font/woff2;base64,d09GMgABAAAAABGQABAAAAAAJUAAABEzAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbhCQcKgZgP1NUQVRBAIIcEQgKoTydcwuBFgABNgIkA4FgBCAFhEAHIBsFIKOirBXY7WmEvx0CMUBZ3aIMt+j/SwJZGTQshN2vuv9DYwkijQT/azOTP4DYLrqmrqvroJJ0qiSd1Nvt2G7b5wWq2a7xP1HwzVMcPR3ePjhWIIKjIwkEwOv23x7b1QIhgTAjiSXySCRs7PH1wSvv7ldGL0qJ8tLzEOSupHcjfcvv6gP3h/CImACn7ZD/yod50nc+IUD1T3zF9JaP+J50UBHIuUCIFgSLgv8fFRzsnRsTETmkiOMjFCMWQCWNUlKiqtcoFQgIBNwY1/t5g0nLQ7tmd/33VCmTLFsNo5Q6oulVdjdDlxcSA/9jcPGwQgjgCQYhiRIIjJ6pkELDcJZu4Ol7j2USvLxN2rPsULTVyd7Z/38TBp2oEiUkEpCRAYwRo1fm35wxv/O05ALFk7geHDMCdHXh8Wh/ABV/py0nnYa5eQMI+HjLXtDobqAVRShAYD1EFcockJnp7wAJLVCEVqhGN0w8kg9MfJYExh6ij3CeV/sEM0JsdSViPCi6gJgVVpMsqfpCN1JITAvRHH8Q78S4Y+VK4uMS04lkL5CLhm+JK5IcUplUSpNS63V0sUYe6PNjng2M8Q0iy2z2l6PuO2k62655Z7/Pxfhz7TRne4X5YRCGmmps50baDAnRZbpk5A8WO+0n7P54LgjkCNChFBMGkVRYSSJcAXHiJQmJuZos6t2avlqZB6wjtoaueLFrljJKapER6089qKkaJFUkjRHqhaLK922CvMD4b9G4CWMQP3Jh3NvwYULk6oTd0Y+S2aGClrp/IyDpppprl3Kj1ms70+K/OYzho73ynzuIKxjMSIkziVd2LHS1E+/uwHn3luhpSZNlrpqnc+K7LGIe6WeVTESEK8xBG0CRMvuXSFFl5iDdoMMdIcC6y4oqqNc0cdFVKpTLXxtjDY/5BNRzmHpk8bU18E3kA9d/EKX0pUefWt0KlX/y49ExzPHCaQBMtq6YE8kkuq0rPkltI1sJSop1jFbD/x6K0063qfvMO4+X6hSrm7+AdbrnMtPRpvbORjoRGXJSYQ+Wnur3F/2V848k9B0DNGf0L/8DI0ejSE7q1hFaGMZOQQI5lYFUknSfUJRfl1KKV9iOHx6tWr37BhE837DTLOOmsddsEdWH2+bnY/XnCMjNRz1bDXDCVUaTaJ7komTZMlSZcsVWEWwctx0hVX3HYM0AzY/ROQUJ5iOUqoeJAiUogqrpF2RltgwRPh4xrjUQ7/cOKP7mynQ+Z163nyUb+EyVOixUwSiiQp0ak3/BG/kzhNkkxZcvLkC1NYqFxN6Zp69OjXq9u//nH2xC67HXMu+hvZXOpcd4JT4ei/3BG9G3s/7vZzx62EqiXKDDXWc/8fCY4iu8IEAA==') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:block;src:url('data:font/woff2;base64,d09GMgABAAAAABGgABAAAAAAJVgAABFDAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbhCQcKgZgP1NUQVRBAIIcEQgKoUCdeAuBFgABNgIkA4FgBCAFhFAHIBsFIKOirC3Y7WmEjx0CMUBY3aIKt+j/UwLZGTQsFNxPk/0fGksQaST4X5uZ/AHEdtE1dV1dB5WkUyXppN5ux3bbPi9QzXaN/4mCb57i6Onw9sGxAhEcHUkgAF63//bYrhYICYQZSSyRRyJhY4+vD155d78yemFKlJeehyB3Jb0b6Vt+Vx+4P4RHxAQ4bYf8Vz7Mk77ziQKqf+Iqprd8xPekg4pAzgVCtCBYFPz/qOBg79yYiMghRRwfoRixACpplJIiVR1FuVQgIBBwY1zv5w0mLQ/tmt3031OlTLJsNYxS6oim19jdDF1eSAz8j83Nw4ohgCcYhCRKIDBypsIqDcNZuoGn7z2WSfDyNmnPskPRVid7Z//3TRh2okiUkEhABgYwRoxemf98xvzO05ALFk7geHDMCdHXh8Wh/ABV/py0nnYa5eQMI+HjLXtDobqAVRShAYD1EFcockJnp7wAJLVCEVqhGN0w8kg9MfJYExh6ij3CeV/sEM0JsdQVi/Ci6gJgVVpMsqfpCN1JITAvRHH8Q78S4Y+VKweNS04lkL5CLhm+JK5IcUplUSpNS63V0sUYe6PNjng2M8R0iy2z2l6PuO2k62655Z7/PxfhT7TRne4X5YRCGmmps50baDAnRZbpk5A8WO+0n7P54LgjkCNChFBMGkVRYSSJcAXHiJQmJuZos6t2avlqZB6wjtoaueLFrljJKapER6089qKkaJFUkjRHqhaLK922CvMD4b9G4CWMQP3Jh7NvwYULk6oTd0Y+S2aGClrp/IyDpppprl3Kj1ms70+K/OYzho73ynzuIKxjMSIkziVd2LHS1E+/uwHn3luhpSZNlrpqnc+K7LGIe6WeVTESEK8xBG0CRMvuXSFFl5iDdoMMdIcC6y4oqqNc0cdFVKpTLXxtjDY/5BNRzmHpk8bU18E3kA9d/EKX0pUefWt0KlX/y49ExzPHCaQBMtq6YE8kkuq0rPkltI1sJSop1jFbD/x6K0063qfvMO4+X6hSrm7+AdbrnMtPRpvbORjoRGXJSYQ+Wnur3F/2V848k/BUHPGf0J/cPL0OjRkLq3hlWEMpKRQ4xkYlUknSTVJxTl16GU9iGGx6tXr37Dho0073ewsdZZ66BL7sDq83Wz+/GCY2Sknquevewoj5xNYruSSdNkSdIlSxWcRfBynHTFFbcdA3QDtv8FJJSXWI4SKh6kiBSiimuknTEWWPBU+LjGeJTDP5z4ozvb6ZB53XqefNQvYfKUaDGThCJJSnTqjX/E7yROkyRTlpw8+cIUFipXU7qmHj369en2r3+cPbHLbseci/5GNpc6153gVDj6L3dE78bej7v93HEroWqJMkON9dz/R4KjyK4wAQA=') format('woff2');}

/* ── COLOR SYSTEM ── */
:root{
  --bg:#ffffff;--bg-2:#f7f9fc;--bg-card:#edf0f4;--brd:#e2e8f0;
  --accent:#0e7a8f;--accent-light:#e0f4f8;--text:#1a2b32;--muted:#526872;--dim:#94b0b8;
  --nav-bg:rgba(255,255,255,.88);--card-hover:#f0f6f8;
  --accent-warm:#c96a1a;--accent-green:#1f8f52;
  --glow-2:#06b6d4;--glow-3:#8b5cf6;
  --radius:12px;--radius-sm:8px;--radius-xs:6px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
  --shadow-md:0 4px 16px rgba(14,122,143,.08),0 2px 6px rgba(0,0,0,.04);
  --shadow-lg:0 12px 40px rgba(14,122,143,.1),0 4px 12px rgba(0,0,0,.05);
  --shadow-glow:0 0 40px rgba(14,122,143,.12);
}
[data-theme="dark"]{
  --bg:#08121f;--bg-2:#0c1c2e;--bg-card:#0f2033;--brd:rgba(62,201,230,.12);
  --accent:#3ec9e6;--accent-light:rgba(62,201,230,.08);--text:#e8edf2;--muted:#8aadba;--dim:rgba(62,201,230,.06);
  --nav-bg:rgba(8,18,31,.94);--card-hover:#162030;
  --accent-warm:#e07840;--accent-green:#3ec97a;
  --glow-2:#06b6d4;--glow-3:#8b5cf6;
  --shadow-sm:0 1px 3px rgba(0,0,0,.2);
  --shadow-md:0 4px 16px rgba(0,0,0,.3);
  --shadow-lg:0 12px 40px rgba(0,0,0,.4);
  --shadow-glow:0 0 40px rgba(62,201,230,.15);
}
[data-theme="dark"] .icon-sun{display:block}[data-theme="dark"] .icon-moon{display:none}
[data-theme="light"] .icon-sun{display:none}[data-theme="light"] .icon-moon{display:block}

/* ── RESET + BASE ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:clip;scrollbar-gutter:stable}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;font-weight:300;font-size:16px;line-height:1.7;overflow-x:hidden;transition:background .35s,color .35s;padding-top:70px}
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");opacity:.018}
body::after{content:"";position:fixed;top:0;left:0;right:0;height:60vh;pointer-events:none;z-index:1}
[data-theme="dark"] body::after{background:radial-gradient(ellipse 80% 60% at 70% 10%,rgba(14,53,85,.5) 0%,transparent 55%)}
[data-theme="light"] body::after{background:radial-gradient(ellipse 80% 60% at 70% 10%,rgba(14,122,143,.07) 0%,transparent 55%)}
::selection{background:rgba(62,201,230,.22);color:var(--text)}
[data-theme="light"] ::selection{background:rgba(14,122,143,.18);color:var(--text)}
.skip-link{position:absolute;top:-100%;left:1rem;background:var(--accent);color:#fff;padding:.5rem 1.2rem;font-size:.85rem;font-weight:500;z-index:9999;border-radius:0 0 4px 4px;transition:top .2s}.skip-link:focus{top:0}

/* ── SCROLL PROGRESS ── */
#scroll-progress{position:fixed;top:0;left:0;z-index:10000;height:2px;width:0%;background:linear-gradient(90deg,var(--accent),var(--glow-2),var(--glow-3));transition:width .08s linear;pointer-events:none;box-shadow:0 0 6px rgba(62,201,230,.35)}

/* ── NAV ── */
nav.main-nav{position:fixed;top:0;left:0;right:0;z-index:99;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:1.2rem 2.5rem;background:var(--nav-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--brd);transition:background .35s,border-color .35s}
.nav-logo{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;position:relative}
.nav-icon{width:24px;height:24px;flex-shrink:0;color:var(--accent)}
.ni-neg{fill:var(--bg)}
.nav-logo-text{font-size:1.3rem;font-weight:600;letter-spacing:.04em;color:var(--text);position:relative;overflow:hidden}
.nav-logo-text span{background:linear-gradient(90deg,var(--accent) 0%,#7ee8f8 40%,var(--accent) 60%,var(--accent) 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:background-position .5s ease}
.nav-logo:hover .nav-logo-text span{background-position:-100% center}
[data-theme="light"] .nav-logo-text span{background:linear-gradient(90deg,#0e7a8f 0%,#1295b0 40%,#0e7a8f 60%,#0e7a8f 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
[data-theme="light"] .nav-logo span{background:linear-gradient(90deg,#0e7a8f 0%,#1295b0 40%,#0e7a8f 60%,#0e7a8f 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.nav-right{display:flex;align-items:stretch;gap:.8rem}
.theme-toggle{background:none;border:1px solid var(--brd);width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);transition:all .25s;border-radius:var(--radius-xs)}
.theme-toggle:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}
.theme-toggle svg{width:15px;height:15px}
.nav-cta{font-size:.78rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-decoration:none;border:1px solid var(--brd);padding:.45rem 1.1rem;transition:all .25s;display:inline-flex;align-items:center;border-radius:var(--radius-xs);white-space:nowrap}
.nav-cta:hover,.nav-cta.active{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}
.lang-switch{display:flex;align-items:center;gap:0;border:1px solid var(--brd);overflow:hidden;border-radius:var(--radius-xs)}
.lang-switch a{font-size:.72rem;font-weight:500;letter-spacing:.12em;padding:.35rem .7rem;color:var(--muted);text-decoration:none;transition:all .2s}
.lang-switch a.active{background:var(--accent);color:#fff;font-weight:600}
.lang-switch .lang-div{width:1px;height:1rem;background:var(--brd);flex-shrink:0}
.nav-dropdown{position:relative}
.nav-dropdown::after{content:'';position:absolute;top:100%;left:-4px;right:-4px;height:12px;z-index:99}
.nav-submenu{position:absolute;top:calc(100% + 8px);left:0;background:var(--nav-bg);border:1px solid var(--brd);backdrop-filter:blur(20px) saturate(1.4);min-width:200px;display:flex;flex-direction:column;z-index:100;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s .3s,visibility .15s .3s;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);overflow:hidden}
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;pointer-events:auto}
.nav-dropdown.open .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transition:none}
.nav-submenu a{font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:.6rem 1rem;transition:all .2s;white-space:nowrap;border-bottom:1px solid var(--brd)}
.nav-submenu a:last-child{border-bottom:none}
.nav-submenu a:hover,.nav-submenu a:focus-visible,.nav-submenu a.active{color:var(--accent);background:var(--accent-light)}
.nav-burger{display:none;background:none;border:1px solid var(--brd);width:34px;height:34px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0;border-radius:var(--radius-xs)}
.nav-burger span{display:block;width:16px;height:1.5px;background:var(--muted);transition:all .3s}
.nav-burger:hover span{background:var(--accent)}
.nav-burger:hover{border-color:var(--accent)}
.nav-burger.open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.nav-mobile{display:none;position:fixed;top:62px;left:0;right:0;background:var(--nav-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--brd);padding:.5rem 1.5rem;flex-direction:column;z-index:98}
.nav-mobile.open{display:flex}
.nav-mobile a{font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:.6rem 0;border-bottom:1px solid var(--brd);transition:color .2s}
.nav-mobile a:last-child{border-bottom:none}
.nav-mobile a:hover,.nav-mobile a:active{color:var(--accent)}
.nav-mobile-sub{padding-left:2rem;font-size:.68rem !important;padding-top:.35rem;padding-bottom:.35rem}
.nav-mobile-sub::before{content:'→';margin-right:.5rem;color:var(--accent);font-size:.55rem}

/* ── FOOTER ── */
footer.main-footer{padding:1.5rem 2.5rem 2rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--brd);font-size:.8rem;color:var(--muted);flex-wrap:wrap;gap:1rem;transition:background .35s,border-color .35s}
footer.main-footer a{color:var(--muted);text-decoration:none}
footer.main-footer a:hover{color:var(--accent)}
footer.main-footer .foot-links{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding-right:3rem}
footer.main-footer .foot-links span{opacity:.4}

/* ── UTILS ── */
.inner{max-width:1100px;margin:0 auto;padding:0 2.5rem;width:100%}
.section-label{font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:1.5rem;display:inline-flex;align-items:center;gap:.8rem;background:var(--accent-light);padding:.4rem 1rem .4rem .8rem;border-radius:100px}
.section-label::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}
.section-label::after{display:none}
h1 em,h2 em{font-style:normal;background:linear-gradient(135deg,var(--accent),var(--glow-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease}
.reveal.vis{opacity:1;transform:none}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}.reveal-d3{transition-delay:.3s}
section[id]{scroll-margin-top:80px}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--accent) 0%,var(--glow-2) 100%);color:#fff;font-size:.82rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;text-decoration:none;transition:all .3s;flex-shrink:0;position:relative;overflow:hidden;border-radius:var(--radius-xs);box-shadow:0 4px 14px rgba(14,122,143,.25)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(14,122,143,.3)}
.btn-primary::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);opacity:0;transition:opacity .3s}
.btn-primary:hover::after{opacity:1}
.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--muted);font-size:.82rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;text-decoration:none;border:1px solid var(--brd);transition:all .3s;flex-shrink:0;border-radius:var(--radius-xs)}
.btn-ghost:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-light);transform:translateY(-1px)}
.btn-warm{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--accent-warm);font-size:.82rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;text-decoration:none;border:1px solid rgba(224,120,64,.35);transition:all .3s;flex-shrink:0;border-radius:var(--radius-xs)}
.btn-warm:hover{background:rgba(224,120,64,.08);border-color:var(--accent-warm)}

/* ── SCROLL UP ── */
#scrollUp{position:fixed;bottom:2rem;right:2rem;z-index:200;width:42px;height:42px;background:rgba(8,18,31,.7);border:1px solid rgba(62,201,230,.3);color:var(--accent);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s,background .2s,border-color .2s;backdrop-filter:blur(8px);border-radius:var(--radius-xs);box-shadow:var(--shadow-md)}
[data-theme="light"] #scrollUp{background:rgba(255,255,255,.9);border-color:rgba(14,122,143,.3)}
#scrollUp.vis{opacity:1;pointer-events:auto}
#scrollUp:hover{background:rgba(62,201,230,.15);border-color:var(--accent)}
#scrollUp svg{width:16px;height:16px}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes blobFloat1{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-40px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}
@keyframes blobFloat2{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(-25px,35px) scale(1.08)}66%{transform:translate(15px,-25px) scale(.92)}}
@keyframes blobFloat3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(20px,15px) scale(1.04)}}

/* ── HERO BLOBS ── */
.hero-blobs{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.hero-blob{position:absolute;border-radius:50%;filter:blur(80px);will-change:transform}
[data-theme="dark"] .hero-blob{opacity:.15}
[data-theme="light"] .hero-blob{opacity:.35}
.hero-blob-1{width:500px;height:500px;background:radial-gradient(circle,rgba(14,122,143,.4) 0%,transparent 70%);top:-10%;right:10%;animation:blobFloat1 18s ease-in-out infinite}
.hero-blob-2{width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.3) 0%,transparent 70%);bottom:0%;left:15%;animation:blobFloat2 22s ease-in-out infinite}
.hero-blob-3{width:300px;height:300px;background:radial-gradient(circle,rgba(139,92,246,.2) 0%,transparent 70%);top:30%;left:50%;animation:blobFloat3 15s ease-in-out infinite}

/* ── FORMS (shared across all contact forms) ── */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{display:flex;flex-direction:column;gap:.32rem}
.form-group label{font-size:.73rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.form-group input,.form-group textarea{background:var(--bg-card);border:1px solid var(--brd);color:var(--text);font-family:'Inter',sans-serif;font-size:.93rem;font-weight:300;padding:.72rem 1rem;outline:none;resize:none;transition:border-color .2s;width:100%}
.form-group input:focus,.form-group textarea:focus{border-color:var(--accent)}
.form-group input:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[data-theme="light"] .form-group input,[data-theme="light"] .form-group textarea{background:#fff;color:#111a19;border-color:#c0bbb4}
.req{color:var(--accent-warm)}.opt{color:var(--muted);font-size:.72rem;opacity:.75}
.form-submit{display:inline-flex;align-items:center;gap:.6rem;background:linear-gradient(135deg,var(--accent) 0%,var(--glow-2) 100%);color:#fff;border:none;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2rem;cursor:pointer;transition:all .3s;align-self:flex-start;border-radius:var(--radius-xs);box-shadow:0 4px 14px rgba(14,122,143,.25);position:relative;overflow:hidden}
.form-submit:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(14,122,143,.3)}
.form-submit:disabled{opacity:.5;cursor:wait}
.form-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.form-check{display:flex;align-items:flex-start;gap:.65rem;margin-top:.5rem}
.form-check input[type="checkbox"]{width:16px;height:16px;accent-color:var(--accent);margin-top:2px;flex-shrink:0;cursor:pointer}
.form-check input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.form-check .check-text{font-size:.82rem;color:var(--muted);line-height:1.65}
.form-check .check-text a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.form-feedback{display:none;align-items:center;gap:.5rem;font-size:.88rem;padding:.75rem 1rem;border:1px solid}
.form-feedback.visible{display:flex}
.form-success{border-color:#4ade80;color:#4ade80}
.form-error{border-color:#d96060;color:#d96060}
.form-note{font-size:.68rem;color:var(--muted)}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .nav-cta,.nav-dropdown{display:none}
  .nav-burger{display:flex}
}
@media(max-width:960px){
  .inner{padding:0 2rem}
}
@media(max-width:760px){
  nav.main-nav,footer.main-footer{padding-left:1.5rem;padding-right:1.5rem}
  footer.main-footer{flex-direction:column;align-items:flex-start}
  footer.main-footer .foot-links{padding-right:0}
  .btn-primary,.btn-ghost,.btn-warm{justify-content:center;width:100%}
  .form-row{grid-template-columns:1fr}
  #scrollUp{bottom:1rem;right:1rem}
  .hero-blob-1{width:300px;height:300px}
  .hero-blob-2{width:250px;height:250px}
  .hero-blob-3{width:200px;height:200px}
}
