:root {
    --doc-bg: #ffffff;
    --doc-text: #333333;
    --doc-primary: #2c3e50; /* Dark Slate */
    --doc-secondary: #f8f9fa;
    --doc-accent: #3498db; /* Blue */
    --doc-border: #e9ecef;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    background-color: var(--doc-bg); color: var(--doc-text);
    font-family: 'Georgia', serif; /* Serif for document/policy feel */
    line-height: 1.8; overflow-x: hidden;
}

.doc-container { max-width: 800px; margin: 0 auto; padding: 0 40px;}

/* Header */
.doc-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 40px 0; margin-bottom: 40px; border-bottom: 2px solid var(--doc-primary);
}
.doc-brand {
    font-size: 26px; font-weight: bold; color: var(--doc-primary);
    font-family: 'Helvetica Neue', sans-serif; letter-spacing: 1px;
}
.doc-nav { display: flex; gap: 20px; font-family: 'Helvetica Neue', sans-serif;}
.doc-nav a {
    font-size: 14px; font-weight: bold; color: #777; text-decoration: none;
    text-transform: uppercase; transition: color 0.2s;
}
.doc-nav a:hover, .doc-nav a.active { color: var(--doc-accent); }

/* Hero / Title */
.doc-hero {
    text-align: center; margin-bottom: 60px; padding: 40px 0;
    border-bottom: 1px solid var(--doc-border);
}
.doc-hero h1 {
    font-size: 36px; color: var(--doc-primary); margin-bottom: 15px; font-weight: normal;
}
.doc-hero p { font-size: 16px; color: #777; font-style: italic;}

/* Content Sections */
.doc-section { margin-bottom: 50px; }
.doc-section h2 {
    font-size: 24px; color: var(--doc-primary); margin-bottom: 20px;
    padding-bottom: 10px; border-bottom: 1px solid var(--doc-border);
}
.doc-section p { margin-bottom: 15px; font-size: 16px; color: #444; text-align: justify;}
.doc-section ul { margin-left: 20px; margin-bottom: 20px;}
.doc-section li { margin-bottom: 10px; font-size: 16px; color: #444;}

.highlight-box {
    background: var(--doc-secondary); padding: 25px; border-left: 4px solid var(--doc-accent);
    margin-bottom: 30px; font-style: italic; color: #555;
}

.btn-doc {
    display: inline-block; padding: 12px 30px; font-size: 14px; font-weight: bold;
    color: #fff; background: var(--doc-primary); border: none; font-family: 'Helvetica Neue', sans-serif;
    text-decoration: none; transition: background 0.2s; text-transform: uppercase;
}
.btn-doc:hover { background: var(--doc-accent); }

/* FAQ */
.doc-faq { margin-bottom: 80px; }
.doc-faq h2 { font-size: 24px; color: var(--doc-primary); margin-bottom: 30px; border-bottom: 1px solid var(--doc-border); padding-bottom: 10px;}
.d-faq-item { margin-bottom: 25px; }
.d-fq { font-size: 18px; font-weight: bold; color: var(--doc-primary); margin-bottom: 10px;}
.d-fa { font-size: 16px; color: #555; text-align: justify;}

footer {
    text-align: center; padding: 30px 0; color: #999; font-size: 12px;
    border-top: 1px solid var(--doc-border); font-family: 'Helvetica Neue', sans-serif;
    text-transform: uppercase; letter-spacing: 1px;
}

@media (max-width: 768px) {
    .doc-header { flex-direction: column; gap: 20px; }
    .doc-container { padding: 0 20px; }
    .doc-hero h1 { font-size: 28px; }
}