:root{
  --color-primary:#2A8C9C;
  --color-secondary:#50D0E0;
  --color-bg:#FFFFFF;
  --color-bg-alt:#F7FAFB;
  --color-text:#0A1628;
  --color-text-secondary:#4A5568;
  --color-border:#E2E8F0;
  --color-button:#2A8C9C;
  --color-button-hover:#226F7C;
  --gradient-hero:linear-gradient(135deg,#50D0E0 0%,#2A8C9C 100%);
  --shadow-card:0 4px 24px rgba(10,22,40,.06);
  --shadow-card-hover:0 8px 32px rgba(10,22,40,.10);
}
html{scroll-behavior:smooth;}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--color-text);background:var(--color-bg);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6{font-family:'Outfit','Inter',sans-serif;color:var(--color-text);letter-spacing:0;word-spacing:.04em;}
h1{font-size:48px;font-weight:600;line-height:1.25;letter-spacing:-.005em;word-spacing:.06em;}
h2{font-size:39px;font-weight:600;line-height:1.25;letter-spacing:0;word-spacing:.05em;}
h3{font-size:31px;font-weight:600;line-height:1.35;letter-spacing:0;word-spacing:.04em;}
h4{font-size:20px;font-weight:600;line-height:1.4;}
h5{font-size:18px;font-weight:500;line-height:1.45;}
h6{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;}
@media(max-width:1024px){h1{font-size:37px;}h2{font-size:31px;}h3{font-size:25px;}}
@media(max-width:640px){h1{font-size:30px;}h2{font-size:24px;}h3{font-size:20px;}}
.eyebrow{font-family:'Outfit',sans-serif;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:14px 28px;font-family:'Outfit',sans-serif;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.06em;border-radius:9999px;transition:all .2s ease;cursor:pointer;text-decoration:none;}
.btn-primary{background:var(--color-button);color:#fff;}
.btn-primary:hover{background:var(--color-button-hover);transform:translateY(-1px);box-shadow:0 8px 24px rgba(42,140,156,.25);}
.btn-outline{background:transparent;color:#fff;border:2px solid #fff;}
.btn-outline:hover{background:#fff;color:var(--color-primary);}
.btn-outline-dark{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);}
.btn-outline-dark:hover{background:var(--color-primary);color:#fff;}
.gradient-hero{background:var(--gradient-hero);}
.card{background:#fff;border-radius:16px;box-shadow:var(--shadow-card);transition:all .3s ease;}
.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px);}
.section{padding:96px 0;}
@media(max-width:768px){.section{padding:64px 0;}}
.container-x{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px;}
.hero-overlay{position:relative;}
.hero-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,22,40,.65),rgba(42,140,156,.55));z-index:1;}
.hero-overlay>*{position:relative;z-index:2;}
.faq-item summary{cursor:pointer;list-style:none;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item[open] summary .faq-chevron{transform:rotate(180deg);}
.faq-chevron{transition:transform .25s ease;}
.dotted-path{background-image:radial-gradient(circle,var(--color-secondary) 1.5px,transparent 1.5px);background-size:16px 16px;background-repeat:repeat-x;background-position:center;height:2px;}
.text-primary{color:var(--color-primary);}
.text-secondary{color:var(--color-text-secondary);}
.bg-primary{background-color:var(--color-primary);}
.bg-alt{background-color:var(--color-bg-alt);}
.icon-circle{width:56px;height:56px;border-radius:9999px;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.icon-circle-lg{width:96px;height:96px;}
.icon-circle-light{background:#E6F4F6;color:var(--color-primary);}
.prose-blog p{margin-bottom:1.25rem;color:var(--color-text-secondary);line-height:1.75;}
.prose-blog h2{margin-top:2.5rem;margin-bottom:1rem;}
.prose-blog h3{margin-top:2rem;margin-bottom:.75rem;}
.prose-blog ul{margin-bottom:1.25rem;padding-left:1.5rem;list-style:disc;color:var(--color-text-secondary);}
.prose-blog ul li{margin-bottom:.5rem;line-height:1.75;}
.prose-blog a{color:var(--color-primary);text-decoration:underline;font-weight:500;}
.prose-blog a:hover{color:var(--color-button-hover);}
.toc{background:var(--color-bg-alt);border-left:4px solid var(--color-primary);border-radius:8px;padding:24px;}
.toc ol{padding-left:1.25rem;}
.toc a{color:var(--color-primary);text-decoration:none;}
.toc a:hover{text-decoration:underline;}
