:root{--dark-blue: #032a5c;--blue-900: #021f45;--accent-orange: #ed570c;--light-gray: #f6f8fa;--soft-blue: #e9f0f7;--white: #ffffff;--ink: #17324d;--muted: #61758a;--card-border: rgba(3, 42, 92, .12);--shadow: 0 18px 40px rgba(3, 42, 92, .1);--shadow-soft: 0 10px 24px rgba(3, 42, 92, .08);--radius: 18px;--max-width: 1180px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Raleway,sans-serif;color:var(--dark-blue);line-height:1.6;background:var(--white);overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--accent-orange);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:34px;height:2px;background:var(--accent-orange);border-radius:99px}header{background:radial-gradient(circle at 82% 26%,rgba(237,87,12,.18),transparent 30%),radial-gradient(circle at 14% 18%,rgba(255,255,255,.1),transparent 34%),linear-gradient(135deg,var(--blue-900),var(--dark-blue));color:#fff;padding:44px 20px 72px;text-align:center;position:relative;overflow:hidden}header:after{content:"";position:absolute;left:50%;bottom:-74px;transform:translate(-50%);width:1180px;height:148px;background:#ffffff14;border-radius:50% 50% 0 0;filter:blur(.5px)}.hero-inner{max-width:970px;margin:0 auto;position:relative;z-index:1}header img{width:180px;height:auto;margin:0 auto 22px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.12))}header h1{font-size:clamp(2.05rem,4vw,4rem);font-weight:700;line-height:1.1;margin-bottom:20px}header p{font-size:clamp(1rem,1.45vw,1.18rem);max-width:840px;margin:0 auto;color:#ffffffe6}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border-radius:999px;font-weight:800;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-primary{color:var(--white);background:var(--accent-orange);box-shadow:0 14px 30px #ed570c42}.button-secondary{color:var(--white);border:1px solid rgba(255,255,255,.35);background:#ffffff12}nav{position:sticky;top:0;background-color:#fffffff2;backdrop-filter:blur(12px);padding:10px 20px;box-shadow:0 2px 10px #032a5c14;z-index:1000;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}nav ul{grid-column:2;list-style:none;display:flex;justify-content:center;gap:clamp(14px,4vw,46px);flex-wrap:wrap}nav a{text-decoration:none;color:var(--dark-blue);font-weight:800;transition:color .2s,opacity .2s;white-space:nowrap}nav a:hover,nav a.active{color:var(--accent-orange)}.lang-switch{grid-column:3;justify-self:end;border:2px solid var(--dark-blue);border-radius:999px;padding:5px 12px;font-size:.82rem;letter-spacing:.08em}.lang-switch:hover{background:var(--dark-blue);color:var(--white)}section{padding:74px 20px;position:relative}section h2{font-size:clamp(1.85rem,3vw,2.7rem);line-height:1.15;color:var(--accent-orange);margin:10px 0 18px}section h3{color:var(--dark-blue);font-size:1.22rem;line-height:1.25;margin-bottom:10px}.container{max-width:var(--max-width);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:44px}.text{flex:1 1 390px;min-width:280px}.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:var(--ink);max-width:860px;margin-bottom:18px}.muted{color:var(--muted)}.section-media{flex:0 1 470px;min-width:280px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--white);border:1px solid rgba(255,255,255,.5)}.section-media img{width:100%;height:auto}.timeline{position:absolute;left:30px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent-orange),var(--dark-blue));opacity:.85}.marker{position:absolute;left:22px;top:78px;width:14px;height:14px;background:var(--accent-orange);border-radius:50%;box-shadow:0 0 0 7px #ed570c1f}.intro{background:linear-gradient(180deg,#fff,var(--light-gray));padding-top:58px}.intro-grid,.case-grid,.feature-grid{max-width:var(--max-width);margin:34px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.intro-card,.feature-card,.case-card{background:var(--white);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow-soft);overflow:hidden}.intro-card,.feature-card{padding:24px}.intro-card strong,.feature-card strong{display:block;color:var(--accent-orange);font-size:2rem;line-height:1;margin-bottom:12px}.concept-band{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(3,42,92,.14);border-radius:999px;padding:10px 14px;color:var(--dark-blue);background:var(--white);font-weight:800;box-shadow:0 8px 18px #032a5c0f}.pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent-orange)}.section-header{max-width:var(--max-width);margin:0 auto 34px}.section-header.center{text-align:center}.section-header.center .eyebrow{justify-content:center}.section-header.center .eyebrow:after{content:"";width:34px;height:2px;background:var(--accent-orange);border-radius:99px}.section-header.center .lead{margin-left:auto;margin-right:auto}.dark-section{background:radial-gradient(circle at 8% 16%,rgba(237,87,12,.13),transparent 24%),linear-gradient(145deg,var(--blue-900),var(--dark-blue));color:var(--white)}.dark-section h2,.dark-section h3,.dark-section .lead{color:var(--white)}.dark-section .muted,.dark-section p{color:#ffffffd6}.dark-section .feature-card,.dark-section .case-card{background:#ffffff14;border-color:#ffffff24;box-shadow:none}.dark-section .feature-card h3,.dark-section .case-card h3{color:var(--white)}.dark-section .timeline{background:linear-gradient(to bottom,var(--accent-orange),rgba(255,255,255,.65))}.iottly-logo-card{display:flex;align-items:center;justify-content:center;padding:46px;background:radial-gradient(circle at 48% 52%,rgba(237,87,12,.1),transparent 32%),var(--white)}.iottly-logo-card img{width:min(310px,74vw);margin:auto;filter:drop-shadow(0 16px 22px rgba(3,42,92,.1))}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.case-card{display:flex;flex-direction:column;min-height:100%;transition:transform .22s ease,box-shadow .22s ease}.case-card:hover{transform:translateY(-5px);box-shadow:0 22px 45px #032a5c24}.case-image{position:relative;background:#fff;aspect-ratio:16 / 9;overflow:hidden;border-bottom:1px solid var(--card-border)}.case-image img{width:100%;height:100%;object-fit:cover}.case-body{padding:22px;flex:1;display:flex;flex-direction:column}.case-meta{margin-bottom:10px;color:var(--accent-orange);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em}.case-body p{color:var(--ink);margin-bottom:16px}.dark-section .case-body p{color:#ffffffd6}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.tag{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;background:var(--soft-blue);color:var(--dark-blue);font-size:.78rem;font-weight:800}.dark-section .tag{background:#ffffff21;color:var(--white)}.split-note{max-width:var(--max-width);margin:38px auto 0;padding:26px;border-radius:var(--radius);background:var(--white);border:1px solid var(--card-border);box-shadow:var(--shadow-soft);display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}.dark-section .split-note{background:#ffffff14;border-color:#ffffff24;box-shadow:none}.split-note ul{margin-left:20px}.split-note li+li{margin-top:8px}.footer-cta{background:var(--light-gray);padding-bottom:84px}.contact-panel{max-width:var(--max-width);margin:0 auto;border-radius:28px;background:radial-gradient(circle at 88% 18%,rgba(237,87,12,.16),transparent 34%),var(--dark-blue);color:var(--white);padding:clamp(28px,5vw,52px);display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;box-shadow:var(--shadow)}.contact-panel h2{color:var(--white);margin-top:0}.contact-list{list-style:none;display:grid;gap:10px;color:#ffffffdb}.contact-list a{color:var(--white);font-weight:800;text-decoration:none}footer{background-color:var(--dark-blue);color:#fff;text-align:center;padding:20px;font-size:.9rem}footer p{color:#ffffffd6}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease var(--reveal-delay, 0s),transform .6s ease var(--reveal-delay, 0s)}.reveal.visible{opacity:1;transform:translateY(0)}.left-nav{position:fixed;left:22px;top:0;height:100vh;width:24px;z-index:900;pointer-events:none}.left-nav-line{position:absolute;top:18vh;bottom:18vh;left:50%;transform:translate(-50%);width:2px;background:linear-gradient(to bottom,var(--accent-orange),var(--dark-blue));opacity:.25;border-radius:2px}.left-nav-thumb{position:absolute;left:50%;top:22vh;transform:translate(-50%) translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--accent-orange);box-shadow:0 0 0 5px #ed570c2e;transition:top .45s cubic-bezier(.4,0,.2,1);pointer-events:none}.left-nav-dot{position:absolute;left:50%;transform:translate(-50%) translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;text-decoration:none;pointer-events:all;cursor:pointer}.left-nav-dot:nth-child(3){top:22vh}.left-nav-dot:nth-child(4){top:40vh}.left-nav-dot:nth-child(5){top:58vh}.left-nav-dot:nth-child(6){top:76vh}.left-nav-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#032a5c33;transition:background .3s ease}.left-nav-dot:after{content:attr(data-label);position:absolute;left:calc(100% + 12px);white-space:nowrap;background:var(--dark-blue);color:#fff;font-family:Raleway,sans-serif;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .2s ease}.left-nav-dot:hover:after{opacity:1}@media (max-width: 900px){.left-nav{display:none}}@media (max-width: 980px){.intro-grid,.feature-grid,.case-grid,.split-note,.contact-panel{grid-template-columns:1fr}.container{gap:32px}}@media (max-width: 768px){header{padding:36px 18px 56px}header p{font-size:1rem}nav ul{gap:15px}section{padding:52px 18px}.timeline,.marker{display:none}.case-body,.intro-card,.feature-card{padding:20px}.case-grid{gap:18px}}
