/* ═══════════════════════════════════════════════════════════════
   DTTASA POLICY FRAMEWORK PAGE · scoped to #dtpolicy
   (preserves the Squarespace source styling verbatim, only scoped
    so generic class names cannot collide with other pages)
   ═══════════════════════════════════════════════════════════════ */

#dtpolicy {
  --dttasa-dark: #0a3d2f;
  --dttasa-bright: #1ecb68;
  --dttasa-teal: #0b7285;
  --dttasa-cream: #f4fcf7;
  --transition: all 0.3s ease;
}

#dtpolicy * { box-sizing: border-box; }

#dtpolicy.policy-page { font-family: 'Open Sans', sans-serif; color: #333; background-color: #fff; padding-bottom: 80px; }
#dtpolicy .content-wrap { max-width: 1100px; margin: 0 auto; padding: 0 5%; }
#dtpolicy .center { text-align: center; }

/* Hero Section */
#dtpolicy .policy-hero { padding: 80px 0 40px; }
#dtpolicy .policy-badge { display: inline-block; padding: 6px 16px; background: var(--dttasa-cream); color: var(--dttasa-teal); border-radius: 50px; font-weight: 700; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 20px; border: 1px solid var(--dttasa-bright); }
#dtpolicy .premium-title { font-family: 'Montserrat', sans-serif; font-size: 2.5rem; font-weight: 800; color: var(--dttasa-teal); margin: 0; text-transform: uppercase; }
#dtpolicy .association-name { font-family: 'Montserrat', sans-serif; font-size: 1.5rem; color: var(--dttasa-bright); margin-top: 5px; font-weight: 400; }
#dtpolicy .title-accent { width: 80px; height: 4px; background: var(--dttasa-bright); margin: 20px auto; border-radius: 2px; }
#dtpolicy .hero-sub { font-size: 1.1rem; color: #666; max-width: 750px; margin: 0 auto; line-height: 1.7; }

/* Policy Container */
#dtpolicy .policy-container { background: white; border-radius: 25px; border: 1px solid #eee; padding: 50px; position: relative; overflow: hidden; }
#dtpolicy .policy-header { margin-bottom: 40px; border-bottom: 1px solid #f0f0f0; padding-bottom: 25px; }
#dtpolicy .policy-header h3 { font-family: 'Montserrat', sans-serif; font-size: 1.6rem; color: var(--dttasa-dark); display: flex; align-items: center; gap: 15px; }
#dtpolicy .policy-header h3 i { color: var(--dttasa-bright); }
#dtpolicy .policy-header p { color: #888; font-weight: 600; font-size: 0.9rem; }

/* Grid Layout */
#dtpolicy .policy-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
#dtpolicy .policy-item { display: flex; gap: 20px; margin-bottom: 30px; transition: var(--transition); }
#dtpolicy .policy-item i { font-size: 1.4rem; color: var(--dttasa-bright); background: var(--dttasa-cream); width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; border-radius: 12px; flex-shrink: 0; }
#dtpolicy .policy-item h4 { margin: 0 0 5px 0; font-family: 'Montserrat', sans-serif; font-size: 1.05rem; color: var(--dttasa-dark); font-weight: 700; }
#dtpolicy .policy-item p { margin: 0; font-size: 0.9rem; color: #555; line-height: 1.5; }

#dtpolicy .policy-item:hover { transform: translateX(10px); }

/* Footer */
#dtpolicy .policy-footer { margin-top: 30px; padding-top: 20px; border-top: 1px solid #f0f0f0; text-align: center; font-style: italic; color: #999; font-size: 0.85rem; }

/* Mobile adjustments */
@media (max-width: 768px) {
  #dtpolicy .policy-grid { grid-template-columns: 1fr; }
  #dtpolicy .policy-container { padding: 30px 20px; }
  #dtpolicy .premium-title { font-size: 1.8rem; }
  #dtpolicy .association-name { font-size: 1.1rem; }
}
