 *,
 *::before,
 *::after {
     box-sizing: border-box;
     margin: 0;
     padding: 0;
     scroll-behavior: smooth
 }





 .ahp-ref-pl-pag-des {
     font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
     background: #fff;
     color: #0f172a;
     -webkit-font-smoothing: antialiased;
     line-height: 1.6;
 }


 img {
     max-width: 100%;
     display: block
 }

 a {
     color: inherit
 }

 /* ─── HEADER STUB ─── */
 .ref-pol-pag-des-ahp-header-stub {
     height: 64px;
     background: #0a0e1a;
     display: flex;
     align-items: center;
     justify-content: center;
     color: rgba(255, 255, 255, .5);
     font-size: 12px;
     letter-spacing: .06em;
     text-transform: uppercase;
     font-weight: 600;
 }

 /* ─── BREADCRUMB ─── */
 .ref-pol-pag-des-ahp-breadcrumb {
     background: #fff;
     border-bottom: 1px solid #f1f5f9;
     padding: 14px 24px;
 }

 .ref-pol-pag-des-ahp-breadcrumb__inner {
     max-width: 1200px;
     margin: 0 auto;
     font-size: 13px;
     color: #64748b;
     display: flex;
     align-items: center;
     gap: 8px;
     flex-wrap: wrap;
 }

 .ref-pol-pag-des-ahp-breadcrumb a {
     color: #475569;
     text-decoration: none;
     transition: color .15s
 }

 .ref-pol-pag-des-ahp-breadcrumb a:hover {
     color: #e64a19
 }

 .ref-pol-pag-des-ahp-breadcrumb__sep {
     color: #cbd5e1
 }

 .ref-pol-pag-des-ahp-breadcrumb__current {
     color: #0a0e1a;
     font-weight: 600
 }

 /* ─── HERO ─── */
 .ref-pol-pag-des-ahp-hero {
     position: relative;
     background:
         radial-gradient(50% 60% at 90% 0%, rgba(255, 87, 34, .06), transparent 55%),
         radial-gradient(50% 50% at 0% 100%, rgba(59, 130, 246, .10), transparent 55%),
         linear-gradient(180deg, #eef4ff, #f8fafc);
     padding: 64px 24px 72px;
     overflow: hidden;
     text-align: center;
 }

 .ref-pol-pag-des-ahp-hero::before {
     content: '';
     position: absolute;
     inset: 0;
     background-image:
         linear-gradient(rgba(59, 130, 246, .04) 1px, transparent 1px),
         linear-gradient(90deg, rgba(59, 130, 246, .04) 1px, transparent 1px);
     background-size: 42px 42px;
     mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, #000, transparent);
     -webkit-mask-image: radial-gradient(ellipse 60% 50% at 50% 50%, #000, transparent);
     pointer-events: none;
 }

 .ref-pol-pag-des-ahp-hero__inner {
     max-width: 780px;
     margin: 0 auto;
     position: relative
 }

 .ref-pol-pag-des-ahp-hero__eyebrow {
     display: inline-flex;
     align-items: center;
     gap: 7px;
     font-size: 11px;
     font-weight: 700;
     letter-spacing: .10em;
     text-transform: uppercase;
     color: #e64a19;
     background: #fff;
     border: 1px solid rgba(255, 87, 34, .2);
     padding: 6px 14px;
     border-radius: 100px;
     margin-bottom: 18px;
     box-shadow: 0 4px 14px -6px rgba(255, 87, 34, .2);
 }

 .ref-pol-pag-des-ahp-hero__eyebrow svg {
     width: 13px;
     height: 13px;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-hero h1 {
     font-family: 'Fraunces', Georgia, serif;
     font-size: clamp(34px, 5.5vw, 56px);
     font-weight: 600;
     color: #0a0e1a;
     letter-spacing: -1.6px;
     line-height: 1.05;
     margin-bottom: 18px;
 }

 .ref-pol-pag-des-ahp-hero h1 em {
     font-style: italic;
     background: linear-gradient(135deg, #ff5722, #e64a19);
     -webkit-background-clip: text;
     background-clip: text;
     -webkit-text-fill-color: transparent;
     color: transparent;
 }

 .ref-pol-pag-des-ahp-hero__sub {
     font-size: 17px;
     color: #475569;
     line-height: 1.6;
     max-width: 620px;
     margin: 0 auto 26px;
 }

 .ref-pol-pag-des-ahp-hero__meta {
     display: inline-flex;
     align-items: center;
     gap: 18px;
     flex-wrap: wrap;
     justify-content: center;
     font-size: 12.5px;
     color: #64748b;
     background: #fff;
     border: 1px solid #e2e8f0;
     border-radius: 100px;
     padding: 8px 18px;
     box-shadow: 0 4px 14px -8px rgba(15, 23, 42, .12);
 }

 .ref-pol-pag-des-ahp-hero__meta-item {
     display: inline-flex;
     align-items: center;
     gap: 6px
 }

 .ref-pol-pag-des-ahp-hero__meta-item svg {
     width: 13px;
     height: 13px;
     color: #ff5722;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-hero__meta-sep {
     width: 1px;
     height: 14px;
     background: #e2e8f0
 }

 /* ─── MAIN LAYOUT ─── */
 .ref-pol-pag-des-ahp-main {
     max-width: 1200px;
     margin: 0 auto;
     padding: 56px 24px 72px;
     display: grid;
     grid-template-columns: 260px 1fr;
     gap: 48px;
     align-items: start;
 }

 /* ─── SIDEBAR ─── */
 .ref-pol-pag-des-ahp-sidebar {
     position: sticky;
     top: 75px
 }

 .ref-pol-pag-des-ahp-toc {
     background: #fff;
     border: 1px solid #e2e8f0;
     border-radius: 14px;
     overflow: hidden;
     box-shadow: 0 4px 14px -10px rgba(15, 23, 42, .08);
 }

 .ref-pol-pag-des-ahp-toc__head {
     background: #0a0e1a;
     padding: 14px 18px;
     display: flex;
     align-items: center;
     gap: 9px;
 }

 .ref-pol-pag-des-ahp-toc__head svg {
     width: 14px;
     height: 14px;
     color: #ff5722;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-toc__head-title {
     font-size: 11px;
     font-weight: 700;
     color: #fff;
     letter-spacing: .10em;
     text-transform: uppercase;
 }

 .ref-pol-pag-des-ahp-toc__list {
     list-style: none;
     padding: 8px 0
 }

 .ref-pol-pag-des-ahp-toc__list a {
     display: flex;
     align-items: center;
     gap: 10px;
     padding: 9px 18px;
     font-size: 13px;
     color: #475569;
     text-decoration: none;
     border-left: 2px solid transparent;
     font-weight: 500;
     transition: background .15s, color .15s, border-color .15s;
 }

 .ref-pol-pag-des-ahp-toc__list a:hover,
 .ref-pol-pag-des-ahp-toc__list a.ref-pol-pag-des-ahp-active {
     color: #e64a19;
     background: #fff5f1;
     border-left-color: #ff5722;
 }

 .ref-pol-pag-des-ahp-toc__num {
     font-family: 'JetBrains Mono', Menlo, monospace;
     width: 22px;
     height: 22px;
     border-radius: 6px;
     display: grid;
     place-items: center;
     font-size: 10.5px;
     font-weight: 600;
     background: #f8fafc;
     color: #64748b;
     flex-shrink: 0;
     transition: background .15s, color .15s;
 }

 .ref-pol-pag-des-ahp-toc__list a:hover .ref-pol-pag-des-ahp-toc__num,
 .ref-pol-pag-des-ahp-toc__list a.ref-pol-pag-des-ahp-active .ref-pol-pag-des-ahp-toc__num {
     background: #ff5722;
     color: #fff;
 }

 .ref-pol-pag-des-ahp-trust {
     margin-top: 18px;
     background: linear-gradient(140deg, #fff5f1, #fff);
     border: 1px solid rgba(255, 87, 34, .2);
     border-radius: 14px;
     padding: 18px 20px;
 }

 .ref-pol-pag-des-ahp-trust__title {
     display: flex;
     align-items: center;
     gap: 8px;
     font-size: 12.5px;
     font-weight: 700;
     color: #0a0e1a;
     margin-bottom: 12px;
 }

 .ref-pol-pag-des-ahp-trust__title svg {
     width: 14px;
     height: 14px;
     color: #ff5722;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-trust__list {
     list-style: none;
     display: flex;
     flex-direction: column;
     gap: 9px
 }

 .ref-pol-pag-des-ahp-trust__item {
     display: flex;
     align-items: flex-start;
     gap: 9px;
     font-size: 12px;
     color: #475569;
     line-height: 1.5;
 }

 .ref-pol-pag-des-ahp-trust__item svg {
     width: 13px;
     height: 13px;
     color: #10b981;
     flex-shrink: 0;
     margin-top: 2px
 }

 .ref-pol-pag-des-ahp-help {
     margin-top: 18px;
     background: #0a0e1a;
     border-radius: 14px;
     padding: 20px;
 }

 .ref-pol-pag-des-ahp-help__title {
     font-size: 13.5px;
     font-weight: 700;
     color: #fff;
     margin-bottom: 6px;
 }

 .ref-pol-pag-des-ahp-help__sub {
     font-size: 12px;
     color: rgba(255, 255, 255, .55);
     line-height: 1.5;
     margin-bottom: 14px;
 }

 .ref-pol-pag-des-ahp-help__cta {
     display: block;
     text-align: center;
     background: linear-gradient(135deg, #ff5722, #e64a19);
     color: #fff;
     text-decoration: none;
     font-size: 12.5px;
     font-weight: 700;
     padding: 10px 14px;
     border-radius: 8px;
     letter-spacing: .02em;
     transition: transform .15s, box-shadow .2s;
 }

 .ref-pol-pag-des-ahp-help__cta:hover {
     transform: translateY(-1px);
     box-shadow: 0 8px 18px -6px rgba(255, 87, 34, .5);
 }

 /* ─── CONTENT ─── */
 .ref-pol-pag-des-ahp-content {
     min-width: 0
 }

 .ref-pol-pag-des-ahp-updated {
     display: flex;
     align-items: center;
     gap: 10px;
     background: #fff;
     border: 1px solid #e2e8f0;
     border-left: 3px solid #ff5722;
     border-radius: 10px;
     padding: 12px 16px;
     margin-bottom: 36px;
     font-size: 13px;
     color: #475569;
 }

 .ref-pol-pag-des-ahp-updated svg {
     width: 14px;
     height: 14px;
     color: #ff5722;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-updated strong {
     color: #0a0e1a;
     font-weight: 600
 }

 .ref-pol-pag-des-ahp-section {
     margin-bottom: 48px;
     scroll-margin-top: 24px;
 }

 .ref-pol-pag-des-ahp-section__head {
     display: flex;
     align-items: flex-start;
     gap: 14px;
     margin-bottom: 18px;
     padding-bottom: 14px;
     border-bottom: 1px solid #e2e8f0;
 }

 .ref-pol-pag-des-ahp-section__num {
     font-family: 'JetBrains Mono', Menlo, monospace;
     flex-shrink: 0;
     width: 36px;
     height: 36px;
     background: linear-gradient(135deg, #ff5722, #e64a19);
     color: #fff;
     border-radius: 10px;
     display: grid;
     place-items: center;
     font-size: 13px;
     font-weight: 600;
     letter-spacing: .02em;
     box-shadow: 0 4px 10px -4px rgba(255, 87, 34, .5);
 }

 .ref-pol-pag-des-ahp-section__title {
     font-family: 'Fraunces', Georgia, serif;
     font-size: 24px;
     font-weight: 600;
     color: #000000;
     letter-spacing: -.6px;
     line-height: 1.2;
     padding-top: 3px;
     padding-left: 0px !important;
     margin: 0px !important;
 }


 .ref-pol-pag-des-ahp-section__title::before {
     content: '';
     background: none !important;
 }

 .ref-pol-pag-des-ahp-section__sub {
     font-family: 'Fraunces', Georgia, serif;
     font-style: italic;
     font-size: 18px;
     font-weight: 500;
     color: #475569;
     letter-spacing: -.3px;
     line-height: 1.3;
     margin: 24px 0 14px;
 }

 .ref-pol-pag-des-ahp-prose p {
     font-size: 15.5px;
     color: #475569;
     line-height: 1.8;
     margin-bottom: 16px;
 }

 .ref-pol-pag-des-ahp-prose p:last-child {
     margin-bottom: 0
 }

 .ref-pol-pag-des-ahp-prose strong {
     color: #0a0e1a;
     font-weight: 600
 }

 .ref-pol-pag-des-ahp-prose a {
     color: #e64a19;
     text-decoration: underline;
     text-underline-offset: 2px
 }

 .ref-pol-pag-des-ahp-prose a:hover {
     color: #ff5722
 }

 .ref-pol-pag-des-ahp-list {
     list-style: none;
     margin: 18px 0;
     display: flex;
     flex-direction: column;
     gap: 2px;
 }

 .ref-pol-pag-des-ahp-list li {
     display: flex;
     align-items: flex-start;
     gap: 12px;
     padding: 12px 14px;
     border-radius: 8px;
     background: transparent;
     font-size: 15px;
     color: #475569;
     line-height: 1.7;
     transition: background .15s;
 }

 .ref-pol-pag-des-ahp-list li:hover {
     background: #f8fafc
 }

 .ref-pol-pag-des-ahp-list li::before {
     content: '';
     flex-shrink: 0;
     width: 6px;
     height: 6px;
     border-radius: 50%;
     background: #ff5722;
     margin-top: 10px;
     box-shadow: 0 0 0 3px #fff5f1;
 }

 .ref-pol-pag-des-ahp-list li strong {
     color: #0a0e1a;
     font-weight: 600
 }

 .ref-pol-pag-des-ahp-callout {
     background: linear-gradient(140deg, #0a0e1a 0%, #111827 100%);
     border-radius: 14px;
     padding: 22px 24px;
     margin: 24px 0;
     color: rgba(255, 255, 255, .78);
     position: relative;
     overflow: hidden;
 }

 .ref-pol-pag-des-ahp-callout::before {
     content: '';
     position: absolute;
     top: -30px;
     right: -30px;
     width: 140px;
     height: 140px;
     background: radial-gradient(circle, rgba(255, 87, 34, .18), transparent 70%);
     pointer-events: none;
 }

 .ref-pol-pag-des-ahp-callout__label {
     display: inline-flex;
     align-items: center;
     gap: 7px;
     font-size: 11px;
     font-weight: 700;
     letter-spacing: .10em;
     text-transform: uppercase;
     color: #ff5722;
     margin-bottom: 10px;
 }

 .ref-pol-pag-des-ahp-callout__label svg {
     width: 13px;
     height: 13px;
     flex-shrink: 0
 }

 .ref-pol-pag-des-ahp-callout p {
     font-size: 14.5px;
     line-height: 1.7;
     color: rgba(255, 255, 255, .78);
     margin-bottom: 0;
 }

 .ref-pol-pag-des-ahp-callout strong {
     color: #fff;
     font-weight: 600
 }

 .ref-pol-pag-des-ahp-rule {
     border: none;
     border-top: 1px dashed #e2e8f0;
     margin: 8px 0 36px
 }

 /* Sub-section card */
 .ref-pol-pag-des-ahp-subcard {
     background: #f8fafc;
     border: 1px solid #e2e8f0;
     border-radius: 12px;
     padding: 20px 22px;
     margin: 18px 0;
 }

 .ref-pol-pag-des-ahp-subcard__title {
     font-family: 'Fraunces', Georgia, serif;
     font-style: italic;
     font-size: 18px;
     font-weight: 500;
     color: #0a0e1a;
     margin-bottom: 12px;
     letter-spacing: -.3px;
 }

 .ref-pol-pag-des-ahp-subcard .ref-pol-pag-des-ahp-list {
     margin: 0
 }

 .ref-pol-pag-des-ahp-subcard .ref-pol-pag-des-ahp-list li:hover {
     background: #fff
 }

 /* ─── FINAL CTA ─── */
 .ref-pol-pag-des-ahp-final {
     background: linear-gradient(135deg, #0a0e1a, #111827);
     color: #fff;
     padding: 64px 24px;
     text-align: center;
     position: relative;
     overflow: hidden;
 }

 .ref-pol-pag-des-ahp-final::before {
     content: '';
     position: absolute;
     top: -100px;
     left: 50%;
     transform: translateX(-50%);
     width: 600px;
     height: 300px;
     background: radial-gradient(ellipse, rgba(255, 87, 34, .18), transparent 70%);
     pointer-events: none;
 }

 .ref-pol-pag-des-ahp-final__inner {
     position: relative;
     max-width: 680px;
     margin: 0 auto
 }

 .ref-pol-pag-des-ahp-final__eyebrow {
     display: inline-flex;
     align-items: center;
     gap: 7px;
     font-size: 11px;
     font-weight: 700;
     letter-spacing: .10em;
     text-transform: uppercase;
     color: #ff5722;
     background: rgba(255, 87, 34, .12);
     border: 1px solid rgba(255, 87, 34, .25);
     padding: 6px 14px;
     border-radius: 100px;
     margin-bottom: 18px;
 }

 .ref-pol-pag-des-ahp-final h2 {
     font-family: 'Fraunces', Georgia, serif;
     font-size: clamp(28px, 4vw, 40px);
     font-weight: 600;
     color: #fff;
     letter-spacing: -1px;
     line-height: 1.15;
     margin-bottom: 14px;
 }

 .ref-pol-pag-des-ahp-final h2 em {
     font-style: italic;
     background: linear-gradient(135deg, #ff5722, #ff8a65);
     -webkit-background-clip: text;
     background-clip: text;
     -webkit-text-fill-color: transparent;
     color: transparent;
 }

 .ref-pol-pag-des-ahp-final p {
     font-size: 15.5px;
     line-height: 1.65;
     color: rgba(255, 255, 255, .65);
     margin-bottom: 24px;
 }

 .ref-pol-pag-des-ahp-final__ctas {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 10px;
     flex-wrap: wrap;
 }

 .ref-pol-pag-des-ahp-btn {
     display: inline-flex;
     align-items: center;
     gap: 7px;
     padding: 13px 24px;
     font-size: 13px;
     font-weight: 700;
     letter-spacing: .04em;
     text-transform: uppercase;
     border-radius: 10px;
     text-decoration: none;
     transition: transform .15s, box-shadow .2s, background .15s;
 }

 .ref-pol-pag-des-ahp-btn--primary {
     color: #fff;
     background: linear-gradient(135deg, #ff5722, #e64a19);
     box-shadow: 0 8px 22px -6px rgba(255, 87, 34, .55);
 }

 .ref-pol-pag-des-ahp-btn--primary:hover {
     transform: translateY(-2px);
     box-shadow: 0 12px 28px -6px rgba(255, 87, 34, .7);
     color: #fff;
 }

 .ref-pol-pag-des-ahp-btn--ghost {
     color: #fff;
     background: rgba(255, 255, 255, .08);
     border: 1px solid rgba(255, 255, 255, .18);
 }

 .ref-pol-pag-des-ahp-btn--ghost:hover {
     background: rgba(255, 255, 255, .14);
     transform: translateY(-2px);
     color: #fff;
 }

 .ref-pol-pag-des-ahp-btn svg {
     width: 13px;
     height: 13px;
     flex-shrink: 0
 }

 /* ─── FOOTER STUB ─── */
 .ref-pol-pag-des-ahp-footer-stub {
     height: 80px;
     background: #0a0e1a;
     display: flex;
     align-items: center;
     justify-content: center;
     color: rgba(255, 255, 255, .4);
     font-size: 12px;
     letter-spacing: .06em;
     text-transform: uppercase;
     font-weight: 600;
     border-top: 1px solid rgba(255, 255, 255, .06);
 }

 /* ─── RESPONSIVE ─── */
 @media (max-width:960px) {
     .ref-pol-pag-des-ahp-main {
         grid-template-columns: 1fr;
         gap: 32px;
         padding: 40px 20px 56px
     }

     .ref-pol-pag-des-ahp-sidebar {
         position: static;
         order: 2
     }

     .ref-pol-pag-des-ahp-toc {
         position: static
     }

     .ref-pol-pag-des-ahp-content {
         order: 1
     }
 }

 @media (max-width:640px) {
     .ref-pol-pag-des-ahp-hero {
         padding: 44px 20px 52px
     }

     .ref-pol-pag-des-ahp-hero__meta {
         padding: 8px 14px;
         font-size: 11.5px;
         gap: 12px
     }

     .ref-pol-pag-des-ahp-section__head {
         gap: 12px
     }

     .ref-pol-pag-des-ahp-section__num {
         width: 32px;
         height: 32px;
         font-size: 12px
     }

     .ref-pol-pag-des-ahp-section__title {
         font-size: 20px
     }

     .ref-pol-pag-des-ahp-final {
         padding: 48px 20px
     }
 }