:root { --ink:#f1eee7; --muted:#aaa5b3; --void:#07080d; --panel:#10111a; --line:#2b2938; --violet:#a84cf4; --magenta:#dd4bc9; --gold:#d9a34a; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--void); }
body { margin:0; background:radial-gradient(circle at 75% 20%,rgba(111,43,139,.08),transparent 28%),var(--void); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
body::before { content:""; position:fixed; z-index:30; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,#a84cf4 35%,#dd4bc9 65%,transparent); opacity:.8; pointer-events:none; }
button,a { font:inherit; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
.nav-shell { position:absolute; z-index:5; top:16px; left:50%; width:min(1440px,calc(100% - 32px)); transform:translateX(-50%); display:flex; align-items:center; justify-content:space-between; padding:13px 16px 13px 18px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(9,9,15,.68); box-shadow:0 18px 50px rgba(0,0,0,.28); backdrop-filter:blur(18px) saturate(1.25); }
.brand { display:flex; align-items:center; gap:12px; font-size:13px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.brand-mark { display:grid; place-items:center; width:35px; height:35px; border:1px solid #b866fa; color:#e7b4ff; background:#190d27; font-size:11px; box-shadow:inset 0 0 18px rgba(190,74,255,.2); }
nav { display:flex; align-items:center; gap:4px; color:#c5bfcb; font-size:12px; }
nav a { padding:10px 14px; border-radius:9px; transition:.2s ease; }
nav a:hover { color:white; background:rgba(255,255,255,.07); }
.nav-download { margin-left:8px; border:1px solid rgba(206,119,255,.45); border-radius:9px; background:linear-gradient(135deg,rgba(137,44,196,.65),rgba(188,50,159,.55)); color:white; padding:10px 18px; box-shadow:inset 0 1px rgba(255,255,255,.12); }
.language-control { display:flex; align-items:center; gap:7px; min-height:38px; margin-left:6px; padding:5px 9px; border:1px solid #393542; border-radius:9px; background:#111019; color-scheme:dark; }
.language-control>span { color:#cda4df; font-size:10px; font-weight:800; white-space:nowrap; }
#google_translate_element { min-width:112px; line-height:1; }
.goog-te-gadget { color:transparent!important; font-size:0!important; }
.goog-te-gadget .goog-te-combo { max-width:132px; height:27px; margin:0!important; padding:0 28px 0 9px; border:1px solid #383340; border-radius:6px; outline:0; background-color:#17151e!important; color:#ded8e2!important; color-scheme:dark; font:600 11px Arial,sans-serif; cursor:pointer; }
.goog-te-gadget .goog-te-combo:hover,.goog-te-gadget .goog-te-combo:focus { border-color:#76508a; background-color:#1d1925!important; }
.goog-te-gadget .goog-te-combo option { background:#17151e!important; color:#eee8f1!important; }
.goog-te-gadget-simple { padding:4px 6px!important; border:0!important; border-radius:6px; background:#17151e!important; }
.goog-te-gadget-simple img,.goog-te-gadget-icon { display:none!important; }
.goog-te-gadget-simple span { color:#ded8e2!important; border:0!important; font:600 11px Arial,sans-serif!important; }
body { top:0!important; }
.goog-te-banner-frame.skiptranslate,.skiptranslate iframe { display:none!important; }
.hero { position:relative; min-height:820px; display:flex; align-items:center; overflow:hidden; border-bottom:1px solid var(--line); }
.hero>img { position:absolute; inset:-5%; width:110%; height:110%; object-fit:cover; object-position:center; animation:citadel-drift 20s ease-in-out infinite alternate; will-change:transform,filter; }
@keyframes citadel-drift {
  0% { transform:scale(1.01) translate3d(-2.6%, -.7%, 0); filter:brightness(.88) saturate(.96); }
  50% { transform:scale(1.085) translate3d(.2%, .8%, 0); filter:brightness(1.04) saturate(1.12); }
  100% { transform:scale(1.045) translate3d(2.6%, -.35%, 0); filter:brightness(.94) saturate(1.04); }
}
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,6,11,.98) 0%,rgba(5,6,11,.94) 32%,rgba(5,6,11,.42) 68%,rgba(5,6,11,.1)),linear-gradient(0deg,#07080d 0%,transparent 25%); }
.hero-content { position:relative; z-index:2; width:min(760px,90vw); margin-left:clamp(22px,8vw,145px); padding-top:80px; }
.eyebrow,.kicker { color:#d5a3ff; font-size:11px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.eyebrow { display:flex; gap:10px; align-items:center; }
.eyebrow span { width:26px; height:1px; background:var(--violet); }
h1 { margin:22px 0 22px; max-width:720px; font-family:Georgia,serif; font-size:clamp(54px,6.2vw,94px); line-height:.93; letter-spacing:-.045em; font-weight:500; }
h1 strong { color:#fff; font-weight:800; text-shadow:0 5px 35px rgba(0,0,0,.6); }
h1 em { color:#d9a4f8; font-style:normal; text-shadow:0 0 40px rgba(188,70,255,.25); }
.hero-tagline { margin:-5px 0 17px; color:#edc9ff; font:600 17px Georgia,serif; letter-spacing:.03em; }
.hero-copy { max-width:635px; color:#c8c3cd; font-size:18px; line-height:1.7; }
.hero-actions { display:flex; gap:14px; margin-top:34px; flex-wrap:wrap; }
.text-action { display:inline-flex; align-items:center; min-height:50px; padding:0 8px; color:#bbaec2; font-size:11px; font-weight:700; text-decoration:underline; text-decoration-color:#624a6e; text-underline-offset:5px; }
.text-action:hover { color:#e5c8f2; text-decoration-color:#b86bda; }
.primary,.secondary { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:50px; padding:0 24px; border:1px solid transparent; font-weight:800; font-size:13px; }
.primary { background:linear-gradient(135deg,#9d35e8,#d047bd); color:white; box-shadow:0 12px 34px rgba(166,45,214,.22); }
.primary:hover { filter:brightness(1.12); transform:translateY(-1px); }
.secondary { border-color:#4a4657; color:#e0dce5; background:rgba(6,6,11,.55); }
.hero-facts { display:flex; gap:45px; margin-top:54px; }
.hero-facts div { display:flex; flex-direction:column; gap:5px; }
.hero-facts strong { color:white; font:600 20px Georgia,serif; }
.hero-facts span { color:#88828f; font-size:10px; text-transform:uppercase; letter-spacing:.13em; }
.warning-strip { display:grid; grid-template-columns:220px 1fr; gap:25px; align-items:center; padding:28px clamp(22px,8vw,145px); background:linear-gradient(90deg,#1c0d17,#130f1c 58%,#0c0d13); border-top:1px solid #5b2949; border-bottom:1px solid #4b294b; box-shadow:inset 0 1px rgba(255,255,255,.025); }
.warning-strip strong { color:#f0b1dc; text-transform:uppercase; letter-spacing:.14em; font-size:11px; }
.warning-strip p { margin:0; color:#bcb1bf; font-size:14px; line-height:1.6; }
.warning-strip em { color:#f0d7ed; font-style:normal; font-weight:700; }
.gameplay-risk { padding-top:34px; padding-bottom:34px; background:radial-gradient(circle at 12% 50%,rgba(204,64,118,.12),transparent 23%),linear-gradient(90deg,#1d0d17,#130f1c 58%,#0c0d13); }
.gameplay-risk>strong { color:#ff9fc4; font-size:12px; }
.gameplay-risk b { color:#f4dbe8; }
.section { width:min(1240px,calc(100% - 44px)); margin:0 auto; }
.intro { display:grid; grid-template-columns:1.35fr .65fr; gap:90px; padding:120px 0 85px; }
.section-heading h2,.control-zone h2,.ethics h2,.download-band h2,.modal h2 { margin:12px 0 20px; font:500 clamp(38px,4vw,60px)/1.03 Georgia,serif; letter-spacing:-.03em; }
.section-heading>p:last-child,.control-zone>div>p:last-child,.ethics-copy>p:last-child { color:var(--muted); line-height:1.75; max-width:700px; }
.consequence-note { margin-top:26px; padding:18px 20px; border-left:2px solid #c04c92; background:linear-gradient(90deg,rgba(114,34,79,.16),transparent); color:#bfb4c2!important; font-size:14px; }
.consequence-note strong { color:#f0bddf; }
.requirement-card { align-self:end; padding:30px; background:linear-gradient(145deg,#17131d,#0d0e15); border:1px solid #413349; border-top:2px solid var(--violet); }
.card-label,.guide-index { color:#8d8492; font-size:10px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.requirement-card h3 { font:500 27px Georgia,serif; margin:12px 0; }
.requirement-card p { color:#aaa4af; line-height:1.65; font-size:14px; }
.requirement-card a,.guide a { color:#d9a0ff; font-weight:800; font-size:13px; }
.manual-method { padding:70px 0 90px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.manual-header { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:38px; }
.manual-header h2 { margin:11px 0 15px; font:500 clamp(36px,4vw,56px)/1.05 Georgia,serif; letter-spacing:-.03em; }
.manual-header p:last-child { max-width:720px; margin-bottom:0; color:var(--muted); line-height:1.7; }
.manual-badge { flex:none; padding:9px 12px; border:1px solid #4e3a58; border-radius:99px; color:#c99cdd; background:#17101d; font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.manual-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:32px; align-items:start; }
.manual-shot { position:sticky; top:24px; display:block; width:100%; margin:0; }
.manual-shot img { aspect-ratio:auto; }
.manual-shot span { padding:17px 8px 8px; }
.manual-steps { margin:0; padding:0; list-style:none; border-top:1px solid #37323e; }
.manual-steps li { display:grid; grid-template-columns:50px 1fr; gap:16px; padding:20px 4px; border-bottom:1px solid #302d37; }
.manual-steps li>span { color:#805993; font:500 15px Georgia,serif; }
.manual-steps strong { color:#ece6ee; font-size:14px; }
.manual-steps p { margin:7px 0 0; color:#99929f; font-size:12px; line-height:1.65; }
.manual-steps b { color:#d3b2df; }
.manual-steps kbd { min-width:auto; padding:5px 8px; }
.manual-note { margin:28px 0 0; padding:17px 19px; border-left:2px solid #8d4aac; background:linear-gradient(90deg,rgba(118,52,145,.13),transparent); color:#a9a1ae; font-size:12px; line-height:1.65; }
.manual-note strong { color:#dcb3ed; }
.guide-page-nav { position:relative; width:min(1440px,calc(100% - 32px)); margin:16px auto 0; display:flex; justify-content:space-between; align-items:center; padding:13px 16px 13px 18px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(9,9,15,.82); backdrop-filter:blur(18px); }
.guide-page-nav .secondary { min-height:40px; }
.manual-page-main { min-height:80vh; }
.manual-page-hero { width:min(1240px,calc(100% - 44px)); margin:0 auto; padding:100px 0 70px; }
.manual-page-hero h1 { margin-bottom:26px; }
.manual-page-hero>p:last-child { max-width:760px; color:#aaa5b3; font-size:17px; line-height:1.75; }
.manual-risk { width:min(1240px,calc(100% - 44px)); margin:0 auto 20px; padding:24px; border:1px solid #5b2949; border-radius:12px; background:linear-gradient(90deg,#1c0d17,#130f1c); }
.manual-risk strong { display:block; margin-bottom:8px; color:#ff9fc4; font-size:10px; letter-spacing:.15em; text-transform:uppercase; }
.manual-risk p { margin:0; color:#bcb1bf; line-height:1.65; }
.manual-shot-static { position:sticky; top:24px; padding:10px; border:1px solid #34303e; border-radius:12px; background:#101119; }
.manual-shot-static img { display:block; width:100%; border-radius:7px; }
.manual-shot-static span { display:flex; flex-direction:column; gap:7px; padding:17px 9px 9px; }
.manual-shot-static strong { color:#eee7f1; font:500 20px Georgia,serif; }
.manual-shot-static small { color:#918a97; font-size:11px; }
.steps { border-top:1px solid var(--line); }
.step { display:grid; grid-template-columns:100px 1fr; gap:20px; padding:34px 22px; border-bottom:1px solid var(--line); transition:background .25s ease,transform .25s ease,border-color .25s ease; }
.step:hover { background:linear-gradient(90deg,rgba(166,67,213,.08),transparent 72%); border-color:#4a3852; transform:translateX(4px); }
.step>span { color:#78518d; font:500 24px Georgia,serif; }
.step h3 { margin:0 0 8px; font:500 23px Georgia,serif; }
.step p { margin:0; color:var(--muted); line-height:1.65; max-width:850px; }
.pet-warning { margin:18px 0; border:1px solid #653744!important; border-radius:14px; background:radial-gradient(circle at 85% 50%,rgba(202,68,91,.13),transparent 28%),linear-gradient(135deg,#1b1017,#0e0d13)!important; }
.pet-warning:hover { border-color:#9c4b5e!important; background:radial-gradient(circle at 85% 50%,rgba(202,68,91,.18),transparent 32%),linear-gradient(135deg,#211119,#0e0d13)!important; }
.pet-warning>span { color:#ff899b; font-size:35px; }
.step-alert { margin-bottom:8px!important; color:#ef8294!important; font-size:9px; font-weight:900; letter-spacing:.18em; text-transform:uppercase; }
.pet-warning h3 { color:#ffd9de; font-size:29px; }
.pet-callout { display:flex; align-items:center; gap:16px; margin-top:20px; padding:14px 16px; border-left:3px solid #d95870; background:rgba(130,31,50,.14); }
.pet-callout strong { color:#ffb9c3; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.pet-callout span { color:#9f8990; font-size:11px; }
.pet-note-step { margin:10px 0; border:1px solid #403a32!important; border-radius:11px; background:linear-gradient(135deg,rgba(57,46,30,.22),rgba(13,13,18,.35))!important; }
.pet-note-step:hover { border-color:#655947!important; background:linear-gradient(135deg,rgba(70,55,33,.28),rgba(13,13,18,.4))!important; }
.pet-note-step>span { color:#a8946c; font:700 10px Arial,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.pet-note-step .step-alert { color:#a8946c!important; }
.pet-note-step h3 { color:#e6dfd2; font-size:23px; }
.pet-note-step .pet-callout { display:inline-flex; background:rgba(115,91,47,.09); border-left-color:#8e784f; }
.pet-note-step .pet-callout strong { color:#c7b78f; }
.step p strong { color:#eee7f1; }
.steam-profile-link { display:grid; grid-template-columns:42px 1fr auto; gap:14px; align-items:center; width:min(510px,100%); margin-top:22px; padding:13px 15px; border:1px solid #344657; border-radius:11px; background:linear-gradient(135deg,#142230,#0d1118); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.steam-profile-link:hover { transform:translateY(-3px); border-color:#5d8bb0; box-shadow:0 16px 38px rgba(0,0,0,.25); }
.steam-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:linear-gradient(145deg,#1b5c8c,#102b43); color:white; font:700 17px Georgia,serif; box-shadow:inset 0 0 0 1px rgba(255,255,255,.14); }
.steam-profile-link>span:nth-child(2) { display:flex; flex-direction:column; gap:4px; }
.steam-profile-link strong { color:#e4f1fa; font-size:13px; }
.steam-profile-link small { color:#8297a8; font-size:10px; }
.steam-profile-link b { color:#8dbbdc; font-size:18px; }
.guide-shot { display:grid; grid-template-columns:minmax(220px,360px) 1fr; gap:20px; align-items:center; width:min(820px,100%); margin-top:24px; padding:10px; border:1px solid #34303e; border-radius:12px; background:linear-gradient(145deg,#12131b,#0a0b10); overflow:hidden; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.guide-shot:hover { transform:translateY(-3px); border-color:#76508a; box-shadow:0 18px 50px rgba(0,0,0,.3); }
.guide-shot img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:7px; border:1px solid #282530; }
.guide-shot.wide img { aspect-ratio:16/9; }
.guide-shot span { display:flex; flex-direction:column; gap:8px; padding:12px 16px 12px 2px; }
.guide-shot strong { color:#eee7f1; font:500 20px Georgia,serif; }
.guide-shot small { color:#918a97; font-size:11px; line-height:1.6; }
.extract-step { background:linear-gradient(90deg,rgba(60,84,112,.08),transparent 72%); }
.extract-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; width:min(920px,100%); margin-top:24px; }
.extract-gallery .guide-shot { grid-template-columns:150px 1fr; margin:0; }
.extract-gallery .guide-shot img { aspect-ratio:4/3; }
.calibration-panel { width:min(920px,100%); margin-top:28px; border:1px solid #45354e; border-radius:14px; overflow:hidden; background:linear-gradient(145deg,#13101a,#0b0c12); box-shadow:0 22px 60px rgba(0,0,0,.2); }
.calibration-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 20px; border-bottom:1px solid #45354e; background:linear-gradient(90deg,rgba(149,58,193,.18),rgba(91,32,101,.05)); }
.calibration-heading span { color:#d9a6f0; font-size:10px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.calibration-heading strong { color:#e7e0e9; font-size:13px; }
.calibration-list { margin:0; padding:0; list-style:none; counter-reset:calibration; }
.calibration-list li { counter-increment:calibration; display:grid; grid-template-columns:150px 1fr; gap:20px; align-items:start; padding:20px; border-bottom:1px solid #2c2934; }
.calibration-list li::before { content:"0" counter(calibration); position:absolute; color:#5e4a68; font:500 11px Georgia,serif; }
.calibration-list kbd { margin-top:20px; min-width:130px; }
.calibration-list div>strong { display:block; margin-bottom:6px; color:#efe9f1; font-size:14px; }
.calibration-list p { font-size:12px; line-height:1.6; }
.calibration-tip { max-width:none!important; padding:18px 20px; background:rgba(187,63,136,.08); color:#bdb2c0!important; font-size:12px; }
.calibration-tip strong { color:#efb7d8; }
.image-lightbox { position:fixed; z-index:40; inset:0; display:grid; place-items:center; padding:60px 28px 32px; background:rgba(3,3,7,.76); backdrop-filter:blur(9px); opacity:0; transition:opacity .22s ease; }
.image-lightbox[hidden] { display:none; }
.image-lightbox.visible { opacity:1; }
.image-lightbox figure { max-width:min(1500px,96vw); max-height:88vh; margin:0; transform:scale(.965); opacity:0; transition:transform .25s ease,opacity .25s ease; }
.image-lightbox.visible figure { transform:scale(1); opacity:1; }
.image-lightbox img { display:block; max-width:100%; max-height:82vh; margin:auto; object-fit:contain; border:1px solid #62536b; border-radius:10px; box-shadow:0 30px 100px #000; }
.image-lightbox figcaption { padding:13px 5px 0; color:#d1cbd5; text-align:center; font-size:12px; letter-spacing:.04em; }
.lightbox-close { position:fixed; z-index:2; top:22px; right:26px; width:44px; height:44px; border:1px solid rgba(255,255,255,.24); border-radius:50%; background:rgba(15,13,21,.78); color:white; font-size:29px; line-height:1; backdrop-filter:blur(10px); }
.lightbox-close:hover { background:#8e39b8; border-color:#d29fea; transform:rotate(4deg); }
.control-zone { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding:110px 0; }
.control-grid { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); }
.control-grid div { min-height:105px; display:flex; align-items:center; gap:15px; padding:22px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(145deg,#11121a,#0b0c12); transition:transform .2s ease,border-color .2s ease,filter .2s ease; }
.control-grid>div:hover { position:relative; z-index:1; transform:translateY(-2px); border-color:#594263; filter:brightness(1.12); }
kbd { min-width:48px; padding:8px; color:#edcdff; text-align:center; background:#1d1126; border:1px solid #4f2d62; box-shadow:0 3px 0 #09060d; font-weight:800; }
.control-grid span { color:#aaa4af; font-size:13px; }
.control-grid span small { display:block; margin-top:5px; color:#77717e; font-size:9px; line-height:1.4; }
.control-grid .emergency-control { background:linear-gradient(135deg,#241015,#120c12); border-color:#67303a; }
.emergency-control kbd { color:#ffd7dc; background:#351018; border-color:#9b4050; box-shadow:0 0 20px rgba(211,55,79,.16),0 3px 0 #09060d; }
.emergency-control span { display:flex; flex-direction:column; gap:5px; }
.emergency-control strong { color:#ffb8c2; text-transform:uppercase; letter-spacing:.07em; }
.emergency-control small { color:#9e8287; font-size:10px; line-height:1.4; }
.ethics { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; padding:100px 0; border-top:1px solid var(--line); }
.rules { border-top:1px solid var(--line); }
.rules>div { display:grid; grid-template-columns:52px 1fr; gap:15px; padding:25px 0; border-bottom:1px solid var(--line); }
.rules span { color:var(--gold); font:500 19px Georgia,serif; }
.rules p { margin:0; color:#aaa4af; line-height:1.65; font-size:14px; }
.rules strong { color:#eee9f0; }
.guides { padding:100px 0 120px; border-top:1px solid var(--line); }
.compact { max-width:700px; margin-bottom:45px; }
.guide-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.guide { position:relative; min-height:315px; padding:30px; overflow:hidden; background:linear-gradient(145deg,#11121a,#0b0c12); border:1px solid var(--line); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.guide::after { content:""; position:absolute; width:150px; height:150px; right:-70px; bottom:-80px; border:1px solid rgba(172,80,220,.15); transform:rotate(45deg); }
.guide:hover { transform:translateY(-6px); border-color:#674577; box-shadow:0 24px 60px rgba(0,0,0,.28); }
.guide.featured { background:linear-gradient(145deg,#1a1122,#0d0e15); border-color:#603773; }
.status { display:inline-block; padding:7px 9px; border:1px solid #3a3541; color:#938d99; font-size:9px; text-transform:uppercase; letter-spacing:.13em; }
.status.live { border-color:#5a356c; color:#d6a4ed; }
.guide-index { margin-top:65px; }
.guide h3 { font:500 27px Georgia,serif; margin:12px 0; }
.guide>p:last-of-type { color:#97919e; line-height:1.65; font-size:14px; }
.download-band { display:flex; justify-content:space-between; gap:40px; align-items:center; padding:75px max(22px,calc((100% - 1240px)/2)); background:radial-gradient(circle at 78% 50%,rgba(161,57,205,.16),transparent 28%),linear-gradient(90deg,#16101d,#0b0c12); border-top:1px solid #51335f; border-bottom:1px solid #3f2c4b; }
.download-band h2 { margin-bottom:8px; }
.download-band p:last-child { color:#9e96a5; }
.download-band .refund-notice { max-width:650px; margin-top:17px; padding-left:13px; border-left:2px solid #d9a34a; color:#aaa1ad; font-size:12px; line-height:1.6; }
.refund-notice strong { color:#efd093; text-transform:uppercase; letter-spacing:.06em; }
footer { display:grid; grid-template-columns:1fr 1.6fr .6fr; gap:30px; align-items:center; padding:45px clamp(22px,5vw,78px); color:#77717e; font-size:11px; }
footer>p { margin:0; line-height:1.6; }
.mic { text-align:right; }
.mic strong { color:#d7acd8; }
.modal-backdrop { position:fixed; z-index:20; inset:0; display:grid; place-items:center; padding:20px; background:rgba(3,3,7,.87); backdrop-filter:blur(10px); }
.modal-backdrop[hidden] { display:none; }
.modal { position:relative; width:min(720px,100%); max-height:92vh; overflow:auto; padding:40px; background:#11121a; border:1px solid #51405c; box-shadow:0 30px 100px #000; }
.close { position:absolute; right:17px; top:12px; border:0; background:none; color:#9f97a5; font-size:30px; }
.modal h2 { font-size:42px; }
.modal-intro,.fine-print { color:#9f99a4; line-height:1.6; }
.checks { display:grid; gap:11px; margin:26px 0; }
.checks label { display:grid; grid-template-columns:24px 1fr; gap:12px; padding:15px; border:1px solid #302d39; background:#0b0c12; color:#c2bdc7; line-height:1.5; font-size:13px; cursor:pointer; }
.checks input { position:absolute; opacity:0; }
.custom-check { display:grid; place-items:center; width:22px; height:22px; border:1px solid #69457c; color:#f4d8ff; background:#180d20; }
.modal-actions { display:flex; gap:12px; flex-wrap:wrap; }
.disabled { opacity:.35; pointer-events:none; filter:grayscale(1); }
.fine-print { font-size:10px; margin-top:22px; }
@media (max-width:900px) {
  nav a { display:none; } .nav-shell { padding:13px; } .language-control { margin-left:0; } #google_translate_element { min-width:92px; } .goog-te-gadget .goog-te-combo { max-width:105px; } .hero { min-height:760px; } .hero-content { margin:0 22px; }
  .hero-shade { background:linear-gradient(90deg,rgba(5,6,11,.96),rgba(5,6,11,.62)),linear-gradient(0deg,#07080d,transparent 35%); }
  .warning-strip,.intro,.control-zone,.ethics,.manual-layout { grid-template-columns:1fr; gap:35px; }
  .warning-strip { padding:24px 22px; } .intro,.control-zone,.ethics { padding:75px 0; }
  .manual-header { align-items:flex-start; flex-direction:column; } .manual-shot,.manual-shot-static { position:relative; top:auto; } .guide-grid { grid-template-columns:1fr; } .guide { min-height:250px; } .guide-index { margin-top:40px; }
  .download-band { flex-direction:column; align-items:flex-start; } footer { grid-template-columns:1fr; } .mic { text-align:left; }
}
@media (max-width:560px) {
  h1 { font-size:50px; } .brand span:last-child { display:none; } .hero-facts { gap:20px; } .hero-facts strong { font-size:16px; }
  .step { grid-template-columns:48px 1fr; } .guide-shot,.extract-gallery,.extract-gallery .guide-shot { grid-template-columns:1fr; } .guide-shot span { padding:8px; } .calibration-heading { align-items:flex-start; flex-direction:column; } .calibration-list li { grid-template-columns:1fr; gap:8px; } .calibration-list kbd { width:max-content; } .control-grid { grid-template-columns:1fr; } .modal { padding:32px 20px; } .modal h2 { font-size:34px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } .hero>img { animation:none; } }
