
            body, input, select, textarea {
                font-family: "Source Sans Pro", sans-serif !important;
                color: #444;
            }
            section, #header, hr, .major {
                border: none !important;
                box-shadow: none !important;
                padding: 0 !important;
            }
            #sidebar {
                position: fixed !important;
                top: 0;
                left: 0;
                height: 100vh !important;
                width: 18em !important;
                overflow: hidden !important;
                z-index: 10000;
                background: #fff;
                border-right: 1px solid #f2f2f2 !important;
            }
            #wrapper {
                padding-left: 18em !important;
            }
            .inner {
                padding: 2.2em 5em 0 !important;
                max-width: 1600px !important;
                margin: auto;
                width: 100%;
                box-sizing: border-box;
            }
            .header-left {
                text-align: left;
                margin-bottom: 2em;
                margin-top: 0 !important;
            }
            .header-left h1 {
                font-size: 2.5em;
                font-weight: 900;
                color: #1a1a1a;
                letter-spacing: -1.5px;
                line-height: 1.1;
                margin: 10px 0 !important;
            }
            .category-label {
                font-size: 0.65em;
                font-weight: 900;
                text-transform: uppercase;
                letter-spacing: 4px;
                color: #bbb;
                display: block;
            }
            .context-switcher {
                display: flex;
                gap: 15px;
                margin-top: 20px;
            }
            .context-switcher a {
                font-size: 0.7em;
                font-weight: 900;
                text-transform: uppercase;
                letter-spacing: 1px;
                text-decoration: none !important;
                border-bottom: none !important;
                padding-bottom: 5px;
            }
            .context-active-green {
                color: #1a1a1a !important;
                border-bottom: 2px solid #2e7d32 !important;
            }
            .context-inactive {
                color: #bbb !important;
                transition: color 0.3s;
            }
            .context-inactive:hover {
                color: #2e7d32 !important;
            }
            .hero-guide {
                max-width: 610px;
                margin-top: 1.35em;
            }
            .hero-guide p {
                margin: 0;
                color: #d7e3dc;
                font-size: 0.86em;
                line-height: 1.55;
            }
            .observatory-hero {
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(270px, 390px);
                gap: 4em;
                align-items: start;
                margin-bottom: 2.8em;
            }
            .observatory-visual {
                width: 100%;
                max-width: 390px;
                aspect-ratio: 1;
                border-radius: 50%;
                justify-self: center;
                overflow: hidden;
                box-sizing: border-box;
                background: #edf2eb url("/images/observatorio-portugal.webp") center/cover no-repeat;
                box-shadow: 0 30px 80px rgba(45, 65, 51, 0.18);
            }

            .overview {
                background: #f4f9f5;
                padding: 2.2em;
                border-radius: 15px;
                margin: 1.5em 0 2em;
            }
            .overview h2 {
                margin: 0 0 12px;
                font-size: 1em;
                text-transform: uppercase;
                letter-spacing: 1px;
                color: #2e7d32;
            }
            .overview p {
                margin: 0;
                line-height: 1.75;
                color: #45634a;
                font-size: 1em;
            }
            .scope-note {
                display: block;
                margin-top: 12px;
                color: #738577;
                font-size: 0.7em;
            }

            .summary-grid {
                display: grid;
                grid-template-columns: repeat(4, 1fr);
                gap: 16px;
                margin: 2em 0 3em;
            }
            .summary-card {
                border: 1px solid #eee;
                border-radius: 12px;
                padding: 1.5em;
                background: #fff;
            }
            .summary-card h3 {
                font-size: 0.68em;
                text-transform: uppercase;
                margin: 0 0 12px;
                color: #777;
            }
            .summary-value {
                display: block;
                font-size: 1.8em;
                font-weight: 900;
                color: #1a1a1a;
                line-height: 1.1;
            }
            .summary-card p {
                margin: 10px 0 0;
                font-size: 0.75em;
                line-height: 1.55;
                color: #666;
            }

            .section-heading {
                margin: 3.5em 0 1.4em;
            }
            .section-heading h2 {
                margin: 0 0 8px;
                font-size: 1.45em;
                color: #1a1a1a;
            }
            .section-heading p {
                margin: 0;
                color: #777;
                font-size: 0.86em;
            }
            .chart-grid {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 24px;
            }
            .chart-box {
                background: #fdfdfd;
                border: 1px solid #f2f2f2;
                padding: 1.5em;
                border-radius: 12px;
                min-height: 390px;
                display: flex;
                flex-direction: column;
            }
            .chart-box h3 {
                font-size: 0.75em;
                font-weight: 900;
                text-transform: uppercase;
                color: #555;
                margin: 0 0 5px;
            }
            .chart-meta {
                font-size: 0.62em;
                color: #999;
                margin-bottom: 14px;
            }
            .chart-container {
                flex-grow: 1;
                height: 235px;
                position: relative;
            }
            .chart-explanation {
                font-size: 0.76em;
                line-height: 1.55;
                color: #666;
                margin: 15px 0 0;
                border-top: 1px solid #eee;
                padding-top: 11px;
            }
            .source-link {
                font-size: 0.6em;
                font-weight: 800;
                color: #2e7d32;
                text-transform: uppercase;
                margin-top: 8px;
                text-decoration: none;
            }

            .territory-grid, .conclusion-grid {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 18px;
            }
            .territory-card, .conclusion-card {
                border: 1px solid #eee;
                border-radius: 12px;
                padding: 1.5em;
                background: #fff;
            }
            .territory-card h3, .conclusion-card h3 {
                font-size: 0.85em;
                margin: 0 0 10px;
                color: #222;
            }
            .territory-value {
                font-size: 1.45em;
                font-weight: 900;
                color: #2e7d32;
                display: block;
                margin-bottom: 8px;
            }
            .territory-card p, .conclusion-card p {
                font-size: 0.78em;
                line-height: 1.65;
                color: #666;
                margin: 7px 0;
            }
            .conclusion-card details {
                margin-top: 12px;
                border-top: 1px solid #eee;
                padding-top: 9px;
            }
            .conclusion-card summary {
                cursor: pointer;
                color: #2e7d32;
                font-size: 0.66em;
                font-weight: 900;
                text-transform: uppercase;
            }
            .conclusion-card details p {
                font-size: 0.7em;
                color: #777;
            }
            .reading-box {
                margin-top: 2.5em;
                padding: 2em;
                border-left: 4px solid #2e7d32;
                background: #f7faf8;
                border-radius: 0 12px 12px 0;
            }
            .reading-box h3 {
                font-size: 0.8em;
                text-transform: uppercase;
                margin: 0 0 12px;
            }
            .reading-box ul {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 8px 25px;
                margin: 0;
                padding-left: 1.2em;
            }
            .reading-box li {
                font-size: 0.76em;
                line-height: 1.5;
                color: #666;
            }
            .data-error {
                padding: 2em;
                background: #fff4f4;
                color: #8a3030;
                border-radius: 12px;
            }
            .footer {
                padding: 4em 5em 2em;
                border-top: 1px solid var(--line);
                opacity: 0.4;
                text-align: right;
                box-sizing: border-box;
            }

            .footer-wordmark {
                display: flex;
                justify-content: flex-end;
            }

            .bio-wordmark {
                display: inline-block;
                text-align: center;
                line-height: 1;
                font-family: "Georgia", "Times New Roman", serif;
            }

            .bio-wordmark strong {
                display: block;
                font-size: 1.15em;
                font-weight: 400;
                letter-spacing: -0.4px;
                color: #81966e;
                line-height: 1;
                font-family: inherit;
            }

            .bio-wordmark small {
                display: block;
                margin-top: 2px;
                font-size: 0.43em;
                font-weight: 700;
                letter-spacing: 1.8px;
                text-transform: uppercase;
                color: #a66f50;
                line-height: 1;
                font-family: inherit;
            }

            @media screen and (max-width: 1280px) {
                #sidebar {
                    position: relative !important;
                    width: 100% !important;
                    height: auto !important;
                }
                #wrapper {
                    padding-left: 0 !important;
                }
                .observatory-hero {
                    grid-template-columns: 1fr;
                }
                .observatory-visual {
                    max-width: 330px;
                }
                .summary-grid {
                    grid-template-columns: repeat(2, 1fr);
                }
            }
            @media screen and (max-width: 900px) {
                .chart-grid, .territory-grid, .conclusion-grid {
                    grid-template-columns: 1fr;
                }
            }
            @media screen and (max-width: 736px) {
                .inner {
                    padding: 1.5em !important;
                }
                .observatory-hero {
                    gap: 2em;
                }
                .observatory-visual {
                    max-width: 260px;
                }
                .summary-grid, .reading-box ul {
                    grid-template-columns: 1fr;
                }
            }
