.idn-home { --navy:#08263d; --blue:#0879d9; --sky:#55b7ff; --gold:#ffbd24; --ink:#142b42; --muted:#536a7e; color:var(--ink); overflow:hidden; }
.idn-home * { box-sizing:border-box; }
.idn-home a { text-decoration:none; }
.idn-home .wrap { width:min(1180px,calc(100% - 36px)); margin:auto; }
.idn-home .hero { background:linear-gradient(115deg,#071d31,#0b3656 65%,#14517b); color:white; padding:58px 0; position:relative; isolation:isolate; }
.idn-home .hero:after { content:""; position:absolute; z-index:-1; width:600px; height:600px; right:-180px; top:-250px; border-radius:50%; background:radial-gradient(circle,rgba(85,183,255,.3),transparent 68%); }
.idn-home .hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:34px; align-items:center; }
.idn-home .eyebrow { display:inline-block; border:1px solid #ffffff55; background:#ffffff12; border-radius:30px; padding:8px 13px; font-size:.8rem; font-weight:800; }
.idn-home h1 { font-size:clamp(2.3rem,4.4vw,4rem); line-height:1.06; letter-spacing:-.04em; margin:20px 0; color:white; }
.idn-home h1 span { color:var(--sky); }
.idn-home .lead { font-size:1.1rem; line-height:1.65; color:#e0edf7; }
.idn-home .hero p { max-width:650px; line-height:1.6; }
.idn-home .actions { display:flex; gap:12px; flex-wrap:wrap; margin:24px 0 14px; }
.idn-home .btnx { display:inline-flex; align-items:center; justify-content:center; gap:9px; border-radius:30px; padding:13px 19px; font-weight:800; }
.idn-home .gold { background:var(--gold); color:#10283a; box-shadow:0 8px 24px #ffbd2433; }
.idn-home .outline { border:1px solid #ffffff99; color:white; background:#ffffff08; }
.idn-home .small { font-size:.85rem; color:#c7d9e7; }
.idn-home .art { position:relative; min-height:350px; display:grid; place-items:center; }
.idn-home .house-card { width:min(100%,440px); padding:18px; border:1px solid #ffffff55; border-radius:26px; background:#ffffff18; box-shadow:0 28px 70px #0004; transform:rotate(1deg); }
.idn-home .scene { height:215px; border-radius:19px; position:relative; display:grid; place-items:center; overflow:hidden; background:linear-gradient(#9edbff 0 64%,#b7dfad 64%); }
.idn-home .sun { position:absolute; right:32px; top:23px; width:44px; height:44px; border-radius:50%; background:#ffcf64; box-shadow:0 0 0 12px #ffcf6425; }
.idn-home .house { position:relative; margin-top:36px; width:195px; height:112px; border:4px solid #d7e3e9; border-radius:8px 8px 10px 10px; background:#fff8e9; box-shadow:0 12px 0 #10435c22; }
.idn-home .roof { position:absolute; left:-17px; top:-62px; width:0; height:0; border-left:111px solid transparent; border-right:111px solid transparent; border-bottom:70px solid #1769a5; filter:drop-shadow(0 5px 0 #0d426d); }
.idn-home .door { position:absolute; bottom:0; left:76px; width:38px; height:61px; background:#f3b743; border:3px solid #e6a32a; border-radius:6px 6px 0 0; }
.idn-home .window { position:absolute; top:21px; width:32px; height:32px; background:#8bd5ff; border:4px solid #1769a5; border-radius:4px; }
.idn-home .left { left:15px; }
.idn-home .right { right:15px; }
.idn-home .match { position:absolute; right:0; top:0; background:white; color:var(--navy); padding:13px 16px; border-radius:17px; box-shadow:0 14px 35px #0003; transform:rotate(4deg); font-weight:800; }
.idn-home .match strong { display:block; color:var(--blue); font-size:1.45rem; line-height:1.1; }
.idn-home .match span { font-size:.8rem; }
.idn-home .float { position:absolute; left:0; bottom:0; max-width:205px; padding:13px 15px; border-radius:15px; background:white; color:var(--ink); box-shadow:0 12px 30px #0003; font-size:.9rem; font-weight:800; }
.idn-home .float em { font-style:normal; color:var(--blue); }
.idn-home .stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:23px; }
.idn-home .stat { padding:12px; border-left:2px solid #55b7ff; background:#ffffff0b; border-radius:0 10px 10px 0; }
.idn-home .stat strong { display:block; color:white; font-size:.92rem; }
.idn-home .stat span { font-size:.78rem; color:#c7d9e7; }
.idn-home .section { padding:58px 0; }
.idn-home .pale { background:linear-gradient(#f4f9fd,#eaf3fa); }
.idn-home .white { background:#fff; }
.idn-home .section-head { display:flex; justify-content:space-between; gap:28px; align-items:end; margin-bottom:26px; }
.idn-home .kicker { color:var(--blue); font-size:.76rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; margin-bottom:9px; }
.idn-home .section h2 { font-size:clamp(1.8rem,3vw,2.55rem); line-height:1.12; letter-spacing:-.03em; color:var(--navy); margin:0 0 10px; }
.idn-home .section-head p { max-width:500px; color:var(--muted); line-height:1.65; margin:0; }
.idn-home .steps { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.idn-home .step,.idn-home .actor { background:white; border:1px solid #dfebf4; border-radius:20px; padding:21px; box-shadow:0 12px 30px #133f5e0c; }
.idn-home .num { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--blue); color:white; font-weight:900; margin-bottom:12px; }
.idn-home .illus { height:90px; display:grid; place-items:center; margin-bottom:10px; }
.idn-home .illus svg { width:112px; height:88px; }
.idn-home .step h3,.idn-home .actor h3 { font-size:1.08rem; color:var(--navy); margin:0 0 9px; }
.idn-home .step p,.idn-home .actor p { font-size:.92rem; line-height:1.55; color:var(--muted); margin:0; }
.idn-home .actors { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.idn-home .actor-icon { width:52px; height:52px; border-radius:15px; background:#e5f3ff; display:grid; place-items:center; color:var(--blue); font-size:1.65rem; margin-bottom:15px; }
.idn-home .checks { padding:0; margin:15px 0 0; list-style:none; display:grid; gap:8px; }
.idn-home .checks li { padding-left:23px; position:relative; color:#29455e; font-size:.9rem; }
.idn-home .checks li:before { content:"✓"; position:absolute; left:0; color:var(--blue); font-weight:900; }
.idn-home .control { display:grid; grid-template-columns:.8fr 1.2fr; gap:28px; align-items:center; background:white; border:1px solid #e0ebf3; border-radius:25px; padding:28px; box-shadow:0 15px 38px #133f5e0c; }
.idn-home .doc-art { min-height:210px; display:grid; place-items:center; border-radius:18px; background:linear-gradient(145deg,#dff2ff,#f5fbff); font-size:6rem; }
.idn-home .control p { line-height:1.7; color:var(--muted); }
.idn-home .textlink { font-weight:800; color:var(--blue); }
.idn-home .cta { background:linear-gradient(110deg,#061f34,#0b4167); color:white; padding:46px 0; }
.idn-home .cta-inner { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.idn-home .cta h2 { font-size:clamp(1.8rem,3vw,2.5rem); color:white; margin:0 0 10px; }
.idn-home .cta p { max-width:680px; line-height:1.6; color:#d5e5f1; margin:0; }
.idn-home .disclaimer { font-size:.82rem; color:#b7cad9; margin-top:12px; }
.idn-concept { --idn-navy:#102b46; --idn-blue:#1769aa; --idn-blue-light:#eaf3fb; --idn-gold:#d5a64a; --idn-text:#344456; color:var(--idn-text); }
.idn-concept .concept-hero { position:relative; overflow:hidden; padding:clamp(3.5rem,7vw,6rem) 1.25rem; background:linear-gradient(135deg,#102b46 0%,#174c76 65%,#1769aa 100%); color:#fff; border-radius:0 0 28px 28px; }
.idn-concept .concept-hero-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr); align-items:center; gap:clamp(2rem,5vw,4rem); }
.idn-concept .eyebrow { margin:0 0 .8rem; color:#f1cc7b; font-size:.8rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.idn-concept h1,.idn-concept h2,.idn-concept h3 { color:var(--idn-navy); line-height:1.2; }
.idn-concept .concept-hero h1 { max-width:760px; margin:0 0 1.2rem; color:#fff; font-size:clamp(2.15rem,4.8vw,3.8rem); letter-spacing:-.035em; }
.idn-concept .concept-hero .lead { max-width:700px; margin:0; color:#edf5fc; font-size:clamp(1.05rem,1.7vw,1.25rem); line-height:1.75; }
.idn-concept .concept-hero strong { color:#fff; }
.idn-concept .concept-visual { display:flex; justify-content:center; align-items:center; min-height:260px; }
.idn-concept .idn-document { width:min(100%,310px); padding:1.25rem; background:#fff; color:var(--idn-navy); border:1px solid rgba(255,255,255,.55); border-radius:18px; box-shadow:0 24px 60px rgba(0,0,0,.22); transform:rotate(2deg); }
.idn-concept .document-top { display:flex; align-items:center; gap:.75rem; padding-bottom:1rem; border-bottom:1px solid #e4ebf2; }
.idn-concept .document-mark { display:grid; place-items:center; flex:0 0 44px; height:44px; border-radius:12px; background:var(--idn-blue-light); color:var(--idn-blue); font-size:1.25rem; font-weight:900; }
.idn-concept .document-name { font-weight:800; }
.idn-concept .document-subtitle { margin-top:.2rem; color:#6a7b8c; font-size:.8rem; }
.idn-concept .document-line { height:9px; margin-top:.85rem; border-radius:20px; background:#eaf0f5; }
.idn-concept .document-line.short { width:58%; }
.idn-concept .document-status { display:inline-block; margin-top:1rem; padding:.35rem .65rem; border-radius:999px; background:#edf7f1; color:#26734d; font-size:.75rem; font-weight:750; }
.idn-concept .concept-section { max-width:1100px; margin:0 auto; padding:clamp(3rem,6vw,5rem) 1.25rem; }
.idn-concept .section-heading { max-width:780px; margin:0 auto 2.2rem; text-align:center; }
.idn-concept .section-heading h2 { margin:0 0 .9rem; font-size:clamp(1.7rem,3.2vw,2.5rem); letter-spacing:-.025em; }
.idn-concept .section-heading p { margin:0; font-size:1.05rem; line-height:1.8; }
.idn-concept .concept-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.15rem; }
.idn-concept .concept-card { padding:1.6rem; border:1px solid #e0e8ef; border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(16,43,70,.055); }
.idn-concept .concept-number { display:grid; place-items:center; width:42px; height:42px; margin-bottom:1.1rem; border-radius:12px; background:var(--idn-blue-light); color:var(--idn-blue); font-weight:850; }
.idn-concept .concept-card h3 { margin:0 0 .65rem; font-size:1.2rem; }
.idn-concept .concept-card p { margin:0; line-height:1.75; }
.idn-concept .compatibility-panel { padding:clamp(2rem,4vw,3rem); border-radius:24px; background:var(--idn-blue-light); }
.idn-concept .compatibility-panel h2 { margin:0 0 1rem; font-size:clamp(1.7rem,3vw,2.35rem); }
.idn-concept .compatibility-panel p { max-width:900px; line-height:1.8; }
.idn-concept .criteria-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem 1.5rem; margin:1.5rem 0 0; padding:0; list-style:none; }
.idn-concept .criteria-list li { position:relative; padding-left:1.8rem; line-height:1.6; }
.idn-concept .criteria-list li::before { content:"✓"; position:absolute; left:0; top:0; color:var(--idn-blue); font-weight:900; }
.idn-concept .concept-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; counter-reset:concept-step; }
.idn-concept .concept-step { position:relative; padding:1.3rem; border-top:3px solid var(--idn-gold); border-radius:0 0 14px 14px; background:#f7f9fb; }
.idn-concept .concept-step .step-label { display:block; margin-bottom:.7rem; color:var(--idn-blue); font-size:.76rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.idn-concept .concept-step h3 { margin:0 0 .55rem; font-size:1.05rem; }
.idn-concept .concept-step p { margin:0; line-height:1.65; font-size:.95rem; }
.idn-concept .trust-note { margin-top:1.5rem; padding:1.2rem 1.35rem; border-left:4px solid var(--idn-gold); border-radius:0 12px 12px 0; background:#fffaf0; line-height:1.75; }
.idn-concept .concept-closing { padding:clamp(2.5rem,5vw,4rem) 1.25rem; background:var(--idn-navy); color:#fff; text-align:center; }
.idn-concept .concept-closing-inner { max-width:850px; margin:0 auto; }
.idn-concept .concept-closing h2 { margin:0 0 1rem; color:#fff; font-size:clamp(1.7rem,3.3vw,2.5rem); }
.idn-concept .concept-closing p { margin:0; color:#e7eff7; line-height:1.8; }
.idn-faq { --faq-navy:#102b46; --faq-blue:#1769aa; --faq-blue-light:#eaf3fb; --faq-gold:#d5a64a; --faq-text:#344456; color:var(--faq-text); }
.idn-faq .faq-hero { padding:clamp(3.25rem,6vw,5rem) 1.25rem; color:#fff; background:linear-gradient(135deg,#102b46 0%,#174c76 65%,#1769aa 100%); border-radius:0 0 26px 26px; }
.idn-faq .faq-hero-inner,.idn-faq .faq-content { max-width:1050px; margin:0 auto; }
.idn-faq .faq-eyebrow { margin:0 0 .8rem; color:#f1cc7b; font-size:.8rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.idn-faq .faq-hero h1 { max-width:850px; margin:0 0 1rem; color:#fff; font-size:clamp(2.15rem,4.6vw,3.5rem); line-height:1.15; letter-spacing:-.035em; }
.idn-faq .faq-hero p { max-width:760px; margin:0; color:#edf5fc; font-size:clamp(1.05rem,1.7vw,1.2rem); line-height:1.75; }
.idn-faq .faq-content { padding:clamp(2.75rem,5vw,4.5rem) 1.25rem; }
.idn-faq .faq-intro { max-width:790px; margin:0 auto 2rem; text-align:center; }
.idn-faq .faq-intro h2 { margin:0 0 .75rem; color:var(--faq-navy); font-size:clamp(1.65rem,3vw,2.35rem); line-height:1.2; }
.idn-faq .faq-intro p { margin:0; line-height:1.8; }
.idn-faq .faq-list { display:grid; gap:.9rem; }
.idn-faq .faq-item { overflow:hidden; border:1px solid #dfe8f0; border-radius:15px; background:#fff; box-shadow:0 6px 20px rgba(16,43,70,.045); }
.idn-faq .faq-item summary { position:relative; padding:1.2rem 3.4rem 1.2rem 1.35rem; color:var(--faq-navy); font-weight:800; line-height:1.5; cursor:pointer; list-style:none; }
.idn-faq .faq-item summary::-webkit-details-marker { display:none; }
.idn-faq .faq-item summary::after { content:"+"; position:absolute; top:50%; right:1.25rem; display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:var(--faq-blue-light); color:var(--faq-blue); font-size:1.2rem; font-weight:700; transform:translateY(-50%); }
.idn-faq .faq-item[open] summary { border-bottom:1px solid #e7edf3; }
.idn-faq .faq-item[open] summary::after { content:"−"; }
.idn-faq .faq-answer { padding:1rem 1.35rem 1.25rem; line-height:1.8; }
.idn-faq .faq-answer p { margin:0; }
.idn-faq .faq-answer p+p { margin-top:.8rem; }
.idn-faq .faq-principle { margin-top:2.25rem; padding:clamp(1.5rem,3vw,2.3rem); border-radius:20px; background:var(--faq-blue-light); }
.idn-faq .faq-principle h2 { margin:0 0 .8rem; color:var(--faq-navy); font-size:clamp(1.4rem,2.5vw,1.9rem); }
.idn-faq .faq-principle p { margin:0; line-height:1.8; }
.idn-faq .faq-bottom { padding:2.5rem 1.25rem; background:var(--faq-navy); color:#fff; text-align:center; }
.idn-faq .faq-bottom-inner { max-width:800px; margin:0 auto; }
.idn-faq .faq-bottom h2 { margin:0 0 .8rem; color:#fff; font-size:clamp(1.55rem,3vw,2.2rem); }
.idn-faq .faq-bottom p { margin:0; color:#e7eff7; line-height:1.8; }
.idn-security { --sec-navy:#102b46; --sec-blue:#1769aa; --sec-light:#eaf3fb; --sec-gold:#d5a64a; --sec-text:#344456; color:var(--sec-text); }
.idn-security .security-hero { overflow:hidden; padding:clamp(3.25rem,6.5vw,5.5rem) 1.25rem; color:#fff; background:linear-gradient(135deg,#102b46 0%,#174c76 65%,#1769aa 100%); border-radius:0 0 28px 28px; }
.idn-security .security-hero-inner { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr); align-items:center; gap:clamp(2rem,5vw,4rem); max-width:1100px; margin:0 auto; }
.idn-security .security-eyebrow { margin:0 0 .8rem; color:#f1cc7b; font-size:.8rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.idn-security .security-hero h1 { max-width:760px; margin:0 0 1.1rem; color:#fff; font-size:clamp(2.15rem,4.6vw,3.55rem); line-height:1.15; letter-spacing:-.035em; }
.idn-security .security-hero p { max-width:690px; margin:0; color:#edf5fc; font-size:clamp(1.05rem,1.7vw,1.2rem); line-height:1.8; }
.idn-security .security-hero strong { color:#fff; }
.idn-security .security-visual { display:flex; align-items:center; justify-content:center; min-height:270px; }
.idn-security .shield-scene { position:relative; display:grid; place-items:center; width:min(100%,330px); aspect-ratio:1 / 1; }
.idn-security .shield-orbit { position:absolute; width:92%; height:92%; border:1px solid rgba(255,255,255,.24); border-radius:50%; }
.idn-security .shield-orbit::before,.idn-security .shield-orbit::after { position:absolute; content:""; border:1px solid rgba(255,255,255,.15); border-radius:50%; }
.idn-security .shield-orbit::before { inset:10%; }
.idn-security .shield-orbit::after { inset:22%; }
.idn-security .shield-core { position:relative; display:grid; place-items:center; width:44%; aspect-ratio:1 / 1; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.5); border-radius:28% 28% 35% 35%; box-shadow:0 18px 55px rgba(0,0,0,.18); clip-path:polygon(50% 0,91% 16%,88% 61%,72% 82%,50% 100%,28% 82%,12% 61%,9% 16%); }
.idn-security .shield-core svg { width:47%; height:47%; }
.idn-security .orbit-dot { position:absolute; width:13px; height:13px; border:3px solid #fff; border-radius:50%; background:var(--sec-gold); box-shadow:0 0 0 6px rgba(255,255,255,.08); }
.idn-security .orbit-dot.dot-one { top:12%; left:27%; }
.idn-security .orbit-dot.dot-two { right:9%; top:45%; }
.idn-security .orbit-dot.dot-three { bottom:13%; left:29%; }
.idn-security .security-section { max-width:1100px; margin:0 auto; padding:clamp(3rem,6vw,4.75rem) 1.25rem; }
.idn-security .security-heading { max-width:790px; margin:0 auto 2.1rem; text-align:center; }
.idn-security .security-heading h2 { margin:0 0 .85rem; color:var(--sec-navy); font-size:clamp(1.7rem,3.1vw,2.4rem); line-height:1.2; }
.idn-security .security-heading p { margin:0; line-height:1.8; }
.idn-security .security-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; }
.idn-security .security-card { padding:1.55rem; border:1px solid #dfe8f0; border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(16,43,70,.05); }
.idn-security .security-icon { display:grid; place-items:center; width:46px; height:46px; margin-bottom:1rem; border-radius:13px; background:var(--sec-light); color:var(--sec-blue); }
.idn-security .security-icon svg { width:24px; height:24px; }
.idn-security .security-card h3 { margin:0 0 .65rem; color:var(--sec-navy); font-size:1.18rem; }
.idn-security .security-card p { margin:0; line-height:1.75; }
.idn-security .security-control { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.72fr); gap:2rem; align-items:center; padding:clamp(1.6rem,4vw,2.7rem); border-radius:24px; background:var(--sec-light); }
.idn-security .security-control h2 { margin:0 0 .9rem; color:var(--sec-navy); font-size:clamp(1.65rem,3vw,2.3rem); line-height:1.2; }
.idn-security .security-control p { margin:0; line-height:1.8; }
.idn-security .control-visual { display:grid; gap:.7rem; }
.idn-security .control-row { display:flex; align-items:center; gap:.8rem; padding:.85rem 1rem; border:1px solid #dbe7f1; border-radius:13px; background:#fff; color:var(--sec-navy); font-weight:750; }
.idn-security .control-check { display:grid; place-items:center; flex:0 0 30px; height:30px; border-radius:9px; background:#edf7f1; color:#26734d; font-weight:900; }
.idn-security .security-note { margin-top:1.5rem; padding:1.15rem 1.3rem; border-left:4px solid var(--sec-gold); border-radius:0 12px 12px 0; background:#fffaf0; line-height:1.75; }
.idn-security .security-closing { padding:clamp(2.5rem,5vw,4rem) 1.25rem; background:var(--sec-navy); color:#fff; text-align:center; }
.idn-security .security-closing-inner { max-width:850px; margin:0 auto; }
.idn-security .security-closing h2 { margin:0 0 .9rem; color:#fff; font-size:clamp(1.7rem,3.2vw,2.4rem); }
.idn-security .security-closing p { margin:0; color:#e7eff7; line-height:1.8; }

.social-share-section {padding:32px 20px;text-align:center;background:#fff;}
.social-share-section p {margin-bottom:18px;color:#183149;font-size:16px;font-weight:700;}
.social-share-section .social-share {display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin:20px auto;}
.social-share-section .social-share a {display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;border:2px solid transparent;border-radius:10px;color:#fff !important;text-decoration:none;font-size:15px;font-weight:700;box-shadow:0 4px 10px rgba(0,0,0,0.15);transition:transform 0.2s ease,box-shadow 0.2s ease;}
.social-share-section .social-share a:first-child {background:#1877F2 !important;border-color:#1877F2;}
.social-share-section .social-share a:last-child {background:#0A66C2 !important;border-color:#0A66C2;}
.social-share-section .social-share a:hover {color:#fff !important;transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,0.22);}
.social-share-section .social-share a svg {width:22px;height:22px;flex-shrink:0;}

@media (max-width:900px) {
    .idn-home .hero-grid { grid-template-columns:1fr; }
    .idn-home .art { min-height:320px; }
    .idn-home .steps { grid-template-columns:repeat(2,1fr); }
    .idn-home .actors { grid-template-columns:1fr; }
    .idn-home .section-head { display:block; }
    .idn-home .section-head p { margin-top:10px; }
    .idn-home .control { grid-template-columns:1fr; }
    .idn-home .cta-inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width:800px) {
    .idn-concept .concept-hero-inner { grid-template-columns:1fr; }
    .idn-concept .concept-visual { min-height:auto; }
    .idn-concept .idn-document { max-width:340px; }
    .idn-concept .concept-grid { grid-template-columns:1fr; }
    .idn-concept .concept-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .idn-security .security-hero-inner,.idn-security .security-control { grid-template-columns:1fr; }
    .idn-security .security-visual { min-height:220px; }
    .idn-security .shield-scene { max-width:280px; }
    .idn-security .security-grid { grid-template-columns:1fr; }
}
@media (max-width:560px) {
    .idn-home .wrap { width:calc(100% - 28px); }
    .idn-home .hero { padding:38px 0; }
    .idn-home h1 { font-size:2.35rem; }
    .idn-home .art { min-height:280px; }
    .idn-home .scene { height:175px; }
    .idn-home .house { transform:scale(0.82); margin-top:25px; }
    .idn-home .match { padding:10px 12px; }
    .idn-home .match strong { font-size:1.5rem; }
    .idn-home .float { font-size:0.78rem; max-width:170px; }
    .idn-home .stats { grid-template-columns:1fr; gap:7px; }
    .idn-home .section { padding:40px 0; }
    .idn-home .steps { grid-template-columns:1fr; }
    .idn-home .actions { flex-direction:column; align-items:stretch; }
    .idn-home .btnx { width:100%; }
    .idn-home .control { padding:18px; }
    .idn-concept .concept-steps,.idn-concept .criteria-list { grid-template-columns:1fr; }
    .idn-concept .concept-hero,.idn-faq .faq-hero,.idn-security .security-hero { border-radius:0 0 18px 18px; }
    .idn-faq .faq-item summary { padding-left:1rem; padding-right:3rem; }
    .idn-faq .faq-answer { padding-left:1rem; padding-right:1rem; }
}
@media (prefers-reduced-motion:reduce) {
    .idn-home .btnx { transition:none; }
}
