.journal-hero { padding: 92px 0 78px; color: #fff; background: #061529; }
.journal-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 70px; }
.journal-hero h1, .article-hero h1 { max-width: 900px; margin: 0; font-size: clamp(3.2rem, 8vw, 6.8rem); line-height: .9; letter-spacing: -.075em; }
.journal-hero h1 em, .article-hero h1 em { color: #60e1ef; font-family: Georgia, serif; font-weight: 400; }
.journal-lead { max-width: 620px; margin: 25px 0 0; color: #b8c5cb; font-size: 1.14rem; line-height: 1.75; }
.journal-note { padding: 24px; border: 1px solid rgba(255,255,255,.15); border-radius: 24px; background: rgba(255,255,255,.06); }
.journal-note strong { display: block; color: #18d5e7; font-size: 2.2rem; letter-spacing: -.05em; }
.journal-note span { display: block; margin-top: 8px; color: #b8c5cb; line-height: 1.55; }
.journal-main { padding: 100px 0 120px; }
.story-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-top: 48px; }
.story-card { position: relative; display: flex; min-height: 420px; flex-direction: column; padding: 34px; overflow: hidden; border: 1px solid #dfe5e7; border-radius: 28px; background: #fff; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.story-card:hover { transform: translateY(-5px); box-shadow: 0 24px 70px rgba(7,16,24,.1); }
.story-card:nth-child(3n+2) { background: #d8f9ff; }
.story-card:nth-child(3n) { color: #fff; border-color: #061529; background: #061529; }
.story-index { color: #126f89; font-size: .76rem; font-weight: 950; letter-spacing: .13em; text-transform: uppercase; }
.story-card:nth-child(3n) .story-index { color: #60e1ef; }
.story-card h2 { max-width: 500px; margin: 42px 0 18px; font-size: clamp(1.8rem, 3.6vw, 2.8rem); line-height: 1; letter-spacing: -.055em; }
.story-card p { margin: 0; color: #5d6a74; line-height: 1.7; }
.story-card:nth-child(3n) p { color: #b8c5cb; }
.story-link { margin-top: auto; padding-top: 32px; font-weight: 900; }
.story-link span { color: #126f89; }
.story-card:nth-child(3n) .story-link span { color: #18d5e7; }

.article-hero { padding: 74px 0 86px; color: #fff; background: #061529; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 48px; color: #8fa1aa; font-size: .82rem; font-weight: 750; }
.breadcrumbs a { color: #18d5e7; text-decoration: none; }
.article-hero h1 { max-width: 1050px; font-size: clamp(3rem, 7vw, 6rem); }
.article-meta { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 30px; color: #aebcc4; font-size: .88rem; font-weight: 750; }
.article-meta span::before { content: "•"; margin-right: 9px; color: #60e1ef; }
.article-layout { display: grid; grid-template-columns: minmax(0, 760px) 280px; justify-content: space-between; gap: 80px; padding: 86px 0 120px; }
.article-body { font-family: Georgia, "Times New Roman", serif; color: #26343d; font-size: 1.12rem; line-height: 1.88; }
.article-body .intro { margin: 0 0 55px; color: #061529; font-size: 1.4rem; line-height: 1.65; }
.article-body h2 { margin: 64px 0 20px; color: #061529; font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: clamp(1.9rem, 4vw, 2.8rem); line-height: 1.06; letter-spacing: -.045em; }
.article-body h2:first-of-type { margin-top: 0; }
.article-body h3 { margin: 40px 0 14px; color: #061529; font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: 1.3rem; }
.article-body p { margin: 0 0 24px; }
.article-body ul { display: grid; gap: 13px; margin: 25px 0 32px; padding-left: 25px; }
.takeaway { margin: 55px 0; padding: 30px; border-left: 5px solid #18d5e7; border-radius: 0 20px 20px 0; color: #fff; background: #061529; font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.takeaway strong { display: block; margin-bottom: 8px; color: #18d5e7; }
.takeaway p { margin: 0; color: #d2dde1; line-height: 1.65; }
.article-aside { position: sticky; top: 120px; align-self: start; padding: 26px; border: 1px solid #dfe5e7; border-radius: 24px; background: #fff; }
.article-aside h2 { margin: 0 0 13px; font-size: 1.2rem; letter-spacing: -.03em; }
.article-aside p { margin: 0; color: #5d6a74; line-height: 1.6; }
.article-aside .button { width: 100%; margin-top: 20px; }
.legal-main { padding: 85px 0 120px; }
.legal-shell { display: grid; grid-template-columns: 280px minmax(0, 760px); gap: 80px; }
.legal-nav { position: sticky; top: 120px; align-self: start; display: grid; gap: 11px; padding: 24px; border: 1px solid #dfe5e7; border-radius: 22px; background: #fff; }
.legal-nav a { color: #5d6a74; text-decoration: none; font-size: .9rem; font-weight: 750; }
.legal-content h1 { margin: 0 0 18px; font-size: clamp(2.8rem, 6vw, 5rem); line-height: .95; letter-spacing: -.065em; }
.legal-content .updated { margin-bottom: 50px; color: #126f89; font-weight: 850; }
.legal-content h2 { margin: 48px 0 14px; font-size: 1.6rem; letter-spacing: -.035em; }
.legal-content p, .legal-content li { color: #4d5b65; line-height: 1.75; }
.legal-content ul { display: grid; gap: 10px; }

.page-hero { position: relative; overflow: hidden; padding: 82px 0 92px; color: #fff; background: #061529; }
.page-hero::after { position: absolute; top: -35%; right: -10%; width: 680px; height: 680px; border-radius: 50%; content: ""; background: radial-gradient(circle, rgba(37,99,235,.34), rgba(24,213,231,.08) 42%, transparent 70%); pointer-events: none; }
.page-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.25fr .75fr; align-items: end; gap: 80px; }
.page-hero .breadcrumbs { margin-bottom: 42px; }
.page-hero h1 { max-width: 870px; margin: 0; font-size: clamp(3.1rem, 7.2vw, 6.2rem); line-height: .9; letter-spacing: -.07em; }
.page-lead { max-width: 720px; margin: 28px 0 0; color: #b8c8d4; font-size: 1.16rem; line-height: 1.72; }
.page-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.page-hero-aside { padding: 28px; border: 1px solid rgba(96,225,239,.22); border-radius: 26px; background: rgba(255,255,255,.055); box-shadow: inset 0 1px 0 rgba(255,255,255,.09); }
.page-hero-aside span { color: #60e1ef; font-size: .74rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.page-hero-aside strong { display: block; margin-top: 20px; font-size: 1.45rem; line-height: 1.22; }
.page-hero-aside p { margin: 16px 0 0; color: #9eb2c2; line-height: 1.65; }
.service-promise { position: relative; overflow: hidden; padding: 58px 0; color: #fff; background: linear-gradient(115deg, #123c6c, #0d2744); }
.service-promise::after { position: absolute; top: -130px; right: 6%; width: 330px; height: 330px; border-radius: 50%; content: ""; background: rgba(24,213,231,.12); filter: blur(8px); }
.service-promise-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 70px; }
.promise-label { color: #60e1ef; font-size: .74rem; font-weight: 950; letter-spacing: .13em; text-transform: uppercase; }
.service-promise h2 { max-width: 760px; margin: 13px 0 0; font-size: clamp(2rem, 4vw, 3.5rem); line-height: .98; letter-spacing: -.052em; }
.service-promise p { margin: 0; color: #c2d3df; font-size: 1.03rem; line-height: 1.72; }
.service-overview { padding: 100px 0; background: #f7f8f4; }
.service-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.service-card { min-height: 340px; padding: 34px; border: 1px solid #dce4e9; border-radius: 28px; background: #fff; box-shadow: 0 18px 50px rgba(6,21,41,.05); }
.service-index { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 15px; color: #061529; background: #18d5e7; font-weight: 950; }
.service-card h2 { margin: 44px 0 16px; font-size: 1.55rem; line-height: 1.1; letter-spacing: -.04em; }
.service-card p { margin: 0; color: #536472; line-height: 1.72; }
.service-pricing { padding: 105px 0 120px; background: #eaf8fb; }
.service-heading h2 { margin: 0; font-size: clamp(2.7rem, 5.5vw, 4.8rem); letter-spacing: -.06em; }
.compact-price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 52px; }
.compact-price { display: flex; min-height: 470px; flex-direction: column; padding: 32px; border: 1px solid #d9e4ea; border-radius: 28px; background: #fff; }
.compact-price.preferred { color: #fff; border-color: #061529; background: #061529; box-shadow: 0 28px 70px rgba(6,21,41,.22); transform: translateY(-12px); }
.compact-price > span { color: #126f89; font-size: .76rem; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.compact-price.preferred > span { color: #60e1ef; }
.compact-price strong { display: block; margin-top: 28px; font-size: 3.8rem; line-height: 1; letter-spacing: -.07em; }
.compact-price small { display: block; margin-top: 10px; color: #667785; font-weight: 750; }
.compact-price.preferred small { color: #9eb2c2; }
.compact-price ul { display: grid; gap: 13px; margin: 30px 0; padding: 24px 0 0 20px; border-top: 1px solid #dfe5e7; color: #475866; line-height: 1.5; }
.compact-price.preferred ul { color: #d8e5eb; border-color: rgba(255,255,255,.14); }
.compact-price .button { margin-top: auto; }
.service-process { padding: 105px 0; background: #eaf8fb; }
.process-row { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: center; }
.process-row h2 { margin: 0; font-size: clamp(2.7rem, 5.5vw, 4.8rem); line-height: .96; letter-spacing: -.06em; }
.process-row ol { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.process-row li { display: flex; min-height: 82px; align-items: center; gap: 20px; padding: 20px 24px; border: 1px solid #d7e3e9; border-radius: 20px; background: rgba(255,255,255,.8); font-weight: 850; }
.process-row li span { color: #2563eb; font-size: .75rem; font-weight: 950; letter-spacing: .1em; }
.contact-panel { padding: 100px 0; background: #eaf8fb; }
.contact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.contact-method { min-height: 220px; padding: 30px; border: 1px solid #d7e3e9; border-radius: 26px; background: #fff; text-decoration: none; }
.contact-method > span { color: #126f89; font-size: .75rem; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; }
.contact-method strong { display: block; margin-top: 42px; overflow-wrap: anywhere; font-size: 1.35rem; }
.contact-method small { display: block; margin-top: 30px; color: #2563eb; font-weight: 850; }
.service-cta { padding: 82px 0; color: #fff; background: #0d2744; }
.service-cta-row { display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.service-cta h2 { max-width: 760px; margin: 0; font-size: clamp(2.3rem, 4.7vw, 4rem); line-height: .98; letter-spacing: -.055em; }
.service-cta .eyebrow { color: #60e1ef; }

@media (max-width: 900px) {
  .journal-hero-grid, .article-layout, .legal-shell, .page-hero-grid, .process-row, .service-promise-grid { grid-template-columns: 1fr; }
  .journal-note { max-width: 500px; }
  .article-aside, .legal-nav { position: static; }
  .article-aside { max-width: 520px; }
  .legal-nav { grid-template-columns: repeat(2, 1fr); }
  .service-card-grid, .compact-price-grid, .contact-grid { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; }
  .compact-price.preferred { order: -1; transform: none; }
}
@media (max-width: 640px) {
  .journal-hero, .article-hero { padding: 58px 0 64px; }
  .journal-hero h1, .article-hero h1 { font-size: clamp(3rem, 15vw, 4.3rem); }
  .story-grid { grid-template-columns: 1fr; }
  .story-card { min-height: 380px; padding: 28px; }
  .article-layout { gap: 50px; padding: 62px 0 86px; }
  .article-body { font-size: 1.03rem; }
  .article-body .intro { font-size: 1.22rem; }
  .legal-nav { grid-template-columns: 1fr; }
  .page-hero { padding: 58px 0 66px; }
  .page-hero h1 { font-size: clamp(3rem, 14vw, 4.4rem); }
  .page-actions .button { width: 100%; }
  .service-overview, .service-pricing, .service-process, .contact-panel { padding: 78px 0; }
  .service-promise { padding: 54px 0; }
  .service-card { min-height: 300px; padding: 28px; }
  .service-cta-row { display: block; }
  .service-cta .button { width: 100%; margin-top: 30px; }
}
