:root {
    --sg-bg: #ececec;
    --sg-text: #1a1a1a;
    --sg-red: #ff3b30;
    --sg-blue: #007aff;
    --sg-border: #cccccc;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    background-color: var(--sg-bg); color: var(--sg-text);
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 1.4;
}
a { text-decoration: none; color: inherit; }

/* Swiss Grid Layout */
.sg-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(100px, auto);
    gap: 1px;
    background: var(--sg-border);
    max-width: 1400px;
    margin: 40px auto;
    border: 1px solid var(--sg-border);
}
.sg-cell { background: var(--sg-bg); padding: 40px; }

/* Typography */
h1 { font-size: 80px; font-weight: 700; letter-spacing: -2px; line-height: 0.95;}
h2 { font-size: 32px; font-weight: 700; margin-bottom: 20px;}
h3 { font-size: 24px; font-weight: 700; margin-bottom: 15px;}
p { font-size: 16px; color: #444; max-width: 600px;}
.txt-red { color: var(--sg-red); }
.txt-blue { color: var(--sg-blue); }

/* specific cells */
.cell-header { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; padding: 20px 40px;}
.sg-nav { display: flex; gap: 30px; font-weight: bold; font-size: 14px; text-transform: uppercase;}
.sg-nav a:hover { color: var(--sg-red); }
.btn-swiss { background: var(--sg-text); color: var(--sg-bg); padding: 10px 20px; font-weight: bold; text-transform: uppercase;}
.btn-swiss:hover { background: var(--sg-red); }

.cell-hero { grid-column: 1 / 9; grid-row: 2 / 5; display: flex; flex-direction: column; justify-content: space-between; background: #fff;}
.cell-hero p { font-size: 24px; line-height: 1.3; font-weight: 300; margin-bottom: 40px; margin-top: 40px;}

.cell-stat-1 { grid-column: 9 / 13; grid-row: 2 / 4; background: var(--sg-blue); color: #fff;}
.cell-stat-2 { grid-column: 9 / 13; grid-row: 4 / 5; background: var(--sg-red); color: #fff;}
.s-num { font-size: 64px; font-weight: 700; line-height: 1;}
.s-lbl { font-size: 18px; font-weight: bold;}

.cell-feat { grid-column: span 4; background: #fff;}
.cell-feat p { color: #666; font-size: 15px;}

.cell-nodes { grid-column: 1 / 7; }
.node-table { width: 100%; border-collapse: collapse; margin-top: 20px;}
.node-table td { padding: 15px 0; border-bottom: 1px solid var(--sg-border); font-size: 18px; font-weight: bold;}
.node-table td:last-child { text-align: right; color: var(--sg-red);}

.cell-trust { grid-column: 7 / 13; background: #fff;}
.trust-list { list-style: none; }
.trust-list li { font-size: 24px; font-weight: bold; padding: 20px 0; border-bottom: 1px solid var(--sg-border);}
.trust-list li::before { content: '■'; margin-right: 15px; color: var(--sg-blue);}

.cell-faq { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px;}
.faq-wrap { margin-top: 20px; }
.faq-box h4 { font-size: 18px; font-weight: bold; margin-bottom: 10px;}
.faq-box p { font-size: 14px; color: #666;}

.cell-footer { grid-column: 1 / -1; padding: 20px 40px; font-size: 12px; font-weight: bold; text-transform: uppercase; border-top: 1px solid var(--sg-border); background: #fff;}

@media (max-width: 1024px) {
    .cell-hero { grid-column: 1 / -1; }
    .cell-stat-1, .cell-stat-2 { grid-column: span 6; grid-row: auto; }
    .cell-feat { grid-column: span 6; }
    .cell-nodes, .cell-trust { grid-column: 1 / -1; }
    .cell-faq { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .sg-nav { display: none; }
    .cell-stat-1, .cell-stat-2 { grid-column: 1 / -1; }
    .cell-feat { grid-column: 1 / -1; }
    h1 { font-size: 50px; }
    .cell-hero p { font-size: 18px; }
}