
:root{--bg:#000;--fg:#f5f5f7;--muted:#a1a1a6;--gap:24px}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:18px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial}
a{color:#2997ff;text-decoration:none} a:hover{text-decoration:underline}
.top{position:sticky;top:0;z-index:60;background:rgba(0,0,0,.78);backdrop-filter:saturate(140%) blur(14px)}
.top .inner{max-width:1360px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{font-weight:1000;letter-spacing:.6px;font-size:56px;color:#f5f5f7}
.tagline{font-size:14px;color:#a1a1a6;margin-top:-6px}
nav a{color:#f5f5f7;margin:0 10px;opacity:.9}
.hero{position:relative;min-height:76vh;display:grid;place-items:end start}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42}
.hero .copy{position:relative;max-width:1360px;margin:0 auto;padding:88px 24px}
.hero .mark{font-size:72px;font-weight:1000;letter-spacing:.6px;margin:0 0 8px}
h1{font-size:56px;line-height:1.05;margin:0 0 10px}
.lead{color:#d2d2d7;margin:0 0 18px}
.container{max-width:1360px;margin:0 auto;padding:72px 24px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--gap)}
.tile{position:relative}
.tile img{width:100%;height:340px;object-fit:cover;display:block}
.tile h3{position:absolute;left:16px;bottom:50px;margin:0;font-size:22px;text-shadow:0 1px 12px rgba(0,0,0,.6)}
.tile .cta{position:absolute;left:16px;bottom:18px;color:#a1a1a6}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:100;overflow:auto}
.modal:target{display:block}
.modal .box{max-width:1200px;margin:0 auto;padding:24px}
.modal .close{position:sticky;top:10px;display:inline-block;margin-bottom:10px;border:1px solid #2a3856;background:#0f1624;color:#eaf5ff;padding:10px 12px;border-radius:10px}
.scroller{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}
.scroller img{height:72vh;object-fit:cover;border-radius:16px;border:1px solid #222;background:#0a0a0a;scroll-snap-align:center}
.cards{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.card{background:#111;border-radius:18px;padding:22px;border:1px solid #222;position:relative;overflow:hidden}
.card .wm{position:absolute;inset:0;pointer-events:none;transform:rotate(-24deg);display:flex;align-items:center;justify-content:center;opacity:.16}
.card .wm span{font-weight:700;font-size:22px;color:#fff;letter-spacing:.5px}
.card .thumb{width:100%;height:260px;object-fit:cover;display:block;border-radius:12px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.cta-quiet{padding:10px 14px;border-radius:12px;border:1px solid #2a2a2e;background:#0b0b0c;color:#f5f5f7}
.cta-primary{display:block;text-align:center;padding:16px 18px;border-radius:14px;background:#f5f5f7;color:#000;font-weight:700;border:0}
.cta-primary:hover{text-decoration:none;opacity:.9}
.badge{display:inline-block;padding:4px 10px;border:1px solid #2a2a2e;border-radius:999px;font-size:12px;color:#a1a1a6}
ul.mini{margin:10px 0 0 18px;padding:0;color:#c7c7cc}
ul.mini li{margin:4px 0}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:900px){form .row{grid-template-columns:1fr}}
input,select,textarea{width:100%;padding:18px 20px;background:#0b0b0c;color:#f5f5f7;border:1px solid #2a2a2e;border-radius:14px;font-size:18px}
input,select{height:60px}
textarea{min-height:240px;resize:vertical}
input::placeholder, textarea::placeholder{color:#9aa0a6}
input[type=file]{padding:12px 18px;height:auto}
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill{ -webkit-text-fill-color:#f5f5f7; box-shadow:0 0 0px 1000px #0b0b0c inset; transition:background-color 5000s ease-in-out 0s; }
input:focus,select:focus,textarea:focus{outline:none;border-color:#3a3f46}
small.hint{color:#a1a1a6}
.alert{background:#102a14;border:1px solid #1d4b29;color:#e2f6e9;border-radius:12px;padding:12px 14px;margin:12px 0;display:none}
.alert.error{background:#2a1010;border-color:#4b1d1d;color:#ffdede;display:block}
footer{border-top:1px solid #111}
.footer{max-width:1360px;margin:0 auto;padding:16px 24px;color:#a1a1a6;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}
.simple header,.simple nav{display:none}
