/* Generated 390px mobile baseline; rebuild with build-mobile-rem.py. */
.ai-page{--ai-ink: #20394d; --ai-accent: #387b86; --ai-muted: #607689; color: var(--ai-ink);}
.ai-page main h2, .ai-page main h3, .ai-page main p{word-break: keep-all; overflow-wrap: break-word;}
.ai-section{padding: 4.75rem 0;}
.ai-eyebrow{font-size: max(10px,0.75rem); letter-spacing: 0.13em; font-weight: 650; color: var(--ai-accent); margin-bottom: 1.125rem;}
.ai-section h2{font-size: 2.375rem; line-height: 1.4; letter-spacing: -0.045em; font-weight: 650;}
.ai-intro{padding: 4.375rem 0 0; background: rgb(255, 255, 255);}
.ai-intro-grid{display: grid; grid-template-columns: 1.2fr 1fr; gap: 3rem; align-items: center;}
.ai-intro h2{font-size: 2.5rem; font-weight: 450;}
.ai-intro h2 strong{color: rgb(44, 104, 119); font-weight: 700;}
.ai-intro-copy > p{font-size: max(13px,1rem); line-height: 1.95; color: var(--ai-muted);}
.ai-text-link{display: inline-flex; align-items: center; gap: 1.75rem; font-size: max(13px,0.875rem); color: rgb(40, 101, 114); font-weight: 600; margin-top: 1.375rem; padding: 0.3125rem 0; border-bottom: 1px solid rgb(180, 204, 210);}
.ai-text-link span{font-size: max(13px,1.125rem); transition: transform 0.2s;}
.ai-text-link:hover span{transform: translateY(0.125rem);}
.ai-benefits{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; margin: 2.75rem 0 0; padding: 1.75rem 0; border-top: 1px solid rgb(220, 230, 233); border-bottom: 1px solid rgb(220, 230, 233);}
.ai-benefits li{padding: 0 1.375rem; border-right: 1px solid rgb(225, 233, 236);}
.ai-benefits li:first-child{padding-left: 0;}
.ai-benefits li:last-child{border: 0; padding-right: 0;}
.ai-benefit-index{display: block; color: rgb(118, 162, 173); font-size: max(10px,0.75rem); font-weight: 600; margin-bottom: 0.6875rem;}
.ai-benefits h3{font-size: max(13px,1.0625rem); font-weight: 650; letter-spacing: -0.025em;}
.ai-benefits p{font-size: max(10px,0.8125rem); line-height: 1.7; margin-top: 0.5rem; color: rgb(106, 128, 142);}
.ai-split{display: grid; grid-template-columns: 1.04fr 1fr; align-items: center; gap: 4.25rem;}
.ai-figure{margin: 0; min-width: 0;}
.ai-photo{position: relative; aspect-ratio: 5 / 4; border-radius: 1.125rem; overflow: hidden; clip-path: inset(0 round 1.125rem); background: rgb(217, 227, 231); isolation: isolate;}
.ai-photo img{position: absolute; inset: -0.125rem; width: calc(100% + 0.25rem); height: calc(100% + 0.25rem); max-width: none; object-fit: cover; transform: scale(1.01); transition: transform 0.65s; backface-visibility: hidden;}
.ai-figure figcaption{font-size: max(10px,0.6875rem); line-height: 1.7; color: rgb(128, 148, 161); margin-top: 0.75rem;}
.ai-step{display: flex; align-items: center; gap: 1rem; color: rgb(80, 126, 136); letter-spacing: 0.11em; font-size: max(10px,0.75rem); font-weight: 600; margin-bottom: 1.1875rem;}
.ai-step span{font-size: 2.25rem; font-weight: 350; letter-spacing: -0.045em; color: rgb(140, 171, 181); line-height: 1;}
.ai-description{font-size: max(13px,1rem); line-height: 1.95; color: var(--ai-muted); margin-top: 1.25rem;}
.ai-detail-list{list-style: none; margin: 1.625rem 0 0; padding: 0; border-top: 1px solid rgb(220, 230, 233);}
.ai-detail-list li{padding: 0.9375rem 0; border-bottom: 1px solid rgb(225, 233, 236);}
.ai-detail-list h3{font-size: max(13px,1rem); font-weight: 650; color: rgb(45, 87, 106);}
.ai-detail-list p{font-size: max(13px,0.875rem); color: rgb(112, 131, 144); line-height: 1.8; margin-top: 0.3125rem;}
.ai-practice{scroll-margin-top: 6.5625rem;}
.ai-analysis{background: rgb(28, 53, 72); color: rgb(255, 255, 255); padding: 4.625rem 0;}
.ai-analysis-heading{display: flex; align-items: flex-end; justify-content: space-between; gap: 2.5rem;}
.ai-analysis .ai-step{color: rgb(169, 208, 213);}
.ai-analysis .ai-step span{color: rgb(121, 164, 179);}
.ai-analysis-heading > p{font-size: max(13px,0.9375rem); line-height: 1.9; color: rgb(189, 208, 217); padding-bottom: 0.3125rem;}
.ai-analysis h2{font-size: 2.1875rem;}
.ai-analysis-grid{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.875rem; margin-top: 2.625rem;}
.ai-analysis-grid article{padding: 1.75rem 0 1.25rem; border-top: 1px solid rgba(138, 174, 186, 0.314);}
.ai-analysis-grid svg{display: block; width: 2.5rem; height: 2.5rem; fill: none; stroke: rgb(163, 204, 209); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; margin-bottom: 1.375rem;}
.ai-analysis-grid h3{font-size: 1.3125rem; letter-spacing: -0.03em; margin-bottom: 0.6875rem; font-weight: 600;}
.ai-analysis-grid p{font-size: max(13px,0.875rem); line-height: 1.85; color: rgb(191, 208, 218);}
.ai-loop{margin-top: 1.9375rem; padding: 1.875rem 2.1875rem; background: rgba(255, 255, 255, 0.024); border: 1px solid rgba(148, 177, 191, 0.2); border-radius: 0.9375rem; display: grid; grid-template-columns: 1fr 1.6fr; align-items: center; gap: 1.5rem;}
.ai-loop > p{font-size: max(13px,0.9375rem); color: rgb(200, 220, 228); line-height: 1.8; max-width: 13.125rem;}
.ai-loop ol{list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem;}
.ai-loop li{position: relative;}
.ai-loop li:not(:last-child)::after{content: "→"; position: absolute; right: -0.875rem; top: 0.125rem; color: rgb(100, 139, 155);}
.ai-loop span{font-size: max(13px,1.0625rem); font-weight: 600; color: rgb(232, 243, 246);}
.ai-loop small{display: block; font-size: max(10px,0.6875rem); color: rgb(173, 196, 207); margin-top: 0.5rem; line-height: 1.5;}
.ai-coaching{background: rgb(255, 255, 255);}
.ai-coaching .ai-split{grid-template-columns: 1fr 1.04fr;}
.ai-network{padding: 2.625rem 0; background: rgb(240, 245, 246); border-top: 1px solid rgb(224, 234, 237);}
.ai-network-inner{display: flex; align-items: center; justify-content: space-between; gap: 2.1875rem;}
.ai-network .ai-eyebrow{font-size: 0.625rem; margin-bottom: 0.6875rem;}
.ai-network h2{font-size: 1.625rem;}
.ai-network p:not(.ai-eyebrow){font-size: max(13px,0.875rem); color: rgb(106, 128, 143); line-height: 1.8; margin-top: 0.625rem;}
.ai-network-right{text-align: right; flex-shrink: 0;}
.ai-network ul{display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; margin: 0; padding: 0;}
.ai-network li{padding: 0.625rem 0.8125rem; background: rgb(255, 255, 255); border: 1px solid rgb(220, 231, 235); border-radius: 0.375rem; font-size: max(10px,0.8125rem); color: rgb(107, 130, 142);}
.ai-network .is-home{background: rgb(43, 101, 115); border-color: rgb(43, 101, 115); color: rgb(255, 255, 255);}
.ai-network .ai-text-link{font-size: max(10px,0.75rem); margin-top: 0.9375rem;}
.ai-finish{position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(at 50% 110%, rgba(57, 101, 120, 0.667), transparent 68%), rgb(21, 45, 64); text-align: center; color: white; padding: 5.1875rem 0 5rem;}
.ai-finish::before, .ai-finish::after{content: ""; position: absolute; width: 56.25rem; height: 56.25rem; border: 1px solid rgba(157, 197, 207, 0.082); border-radius: 50%; left: 50%; top: 3.4375rem; transform: translateX(-50%); pointer-events: none; z-index: -1;}
.ai-finish::after{width: 47.5rem; height: 47.5rem; top: 7.5rem;}
.ai-finish .ai-eyebrow{color: rgb(163, 208, 214); margin-bottom: 1.5rem;}
.ai-finish h2{font-size: clamp(2.375rem, 3.9vw, 3.5rem); line-height: 1.4; font-weight: 450;}
.ai-finish h2 strong{font-weight: 700; color: rgb(193, 225, 229);}
.ai-finish h2 + p{font-size: max(13px,0.9375rem); line-height: 1.9; color: rgb(191, 208, 218); margin: 1.4375rem 0 1.9375rem;}
.ai-actions{display: flex; justify-content: center; gap: 0.875rem; flex-wrap: wrap;}
.ai-button{display: inline-flex; align-items: center; justify-content: space-between; min-width: 14.6875rem; min-height: 3.75rem; padding: 1.0625rem 1.5rem; gap: 1.875rem; background: rgb(214, 237, 240); border: 1px solid rgb(214, 237, 240); color: rgb(25, 61, 80); font-size: max(13px,0.9375rem); font-weight: 650; border-radius: 0.5rem; transition: transform 0.2s, background 0.2s;}
.ai-button span{font-size: 1.375rem; line-height: 1;}
.ai-button--outline{color: rgb(240, 246, 248); background: rgba(255, 255, 255, 0.027); border-color: rgba(166, 195, 208, 0.36);}
.ai-page a:focus-visible{outline: rgb(47, 107, 255) solid 0.1875rem; outline-offset: 0.3125rem;}
.ai-finish a:focus-visible{outline-color: rgb(188, 229, 235);}
@media (hover: hover){.ai-photo:hover img{transform: scale(1.04);}
.ai-button:hover{transform: translateY(-0.1875rem); background: rgb(237, 250, 251);}
.ai-button--outline:hover{background: rgba(255, 255, 255, 0.086);}}

.ai-intro-grid{gap: 1.875rem; grid-template-columns: 1.1fr 1fr;}
.ai-intro h2{font-size: 2.125rem;}
.ai-split{gap: 2.125rem;}
.ai-section h2{font-size: 2rem;}
.ai-analysis-grid{gap: 1.375rem;}
.ai-loop{grid-template-columns: 1fr; padding: 1.625rem;}
.ai-loop > p{max-width: none;}
.ai-network-inner{align-items: flex-start; flex-direction: column; gap: 1.375rem;}
.ai-network-right{text-align: left;}
.ai-finish h2{font-size: clamp(2.375rem, 3.9vw, 3.5rem);}
.ai-section{padding: 3rem 0;}
.ai-intro{padding: 2.8125rem 0 0;}
.ai-intro-grid{grid-template-columns: 1fr; gap: 1.375rem;}
.ai-intro h2{font-size: 2rem;}
.ai-intro-copy > p{font-size: max(13px,0.9375rem);}
.ai-eyebrow{font-size: 0.625rem;}
.ai-benefits{grid-template-columns: repeat(2, 1fr); gap: 1.375rem 0; margin-top: 1.875rem; padding: 1.5625rem 0;}
.ai-benefits li{padding: 0 1.125rem;}
.ai-benefits li:nth-child(2n+1){padding-left: 0;}
.ai-benefits li:nth-child(2n){border-right: 0; padding-right: 0;}
.ai-benefits h3{font-size: max(13px,1rem);}
.ai-benefits p{font-size: max(10px,0.75rem);}
.ai-split, .ai-coaching .ai-split{grid-template-columns: 1fr; gap: 1.6875rem;}
.ai-figure{max-width: 37.5rem; width: 100%;}
.ai-copy{max-width: 40rem;}
.ai-section h2{font-size: 1.875rem;}
.ai-description{font-size: max(13px,0.9375rem);}
.ai-detail-list p{font-size: max(13px,0.875rem);}
.ai-coaching .ai-figure{grid-row: 1;}
.ai-analysis-heading{display: block;}
.ai-analysis-heading > p{margin-top: 1.125rem;}
.ai-analysis-grid{grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.125rem 1.5rem; margin-top: 1.8125rem;}
.ai-analysis-grid article{padding: 1.4375rem 0 0.5rem;}
.ai-analysis-grid svg{margin-bottom: 1.0625rem;}
.ai-analysis-grid p{font-size: max(13px,0.875rem);}
.ai-analysis-grid p br{display: none;}
.ai-loop{padding: 1.5rem 1.25rem; gap: 1.25rem;}
.ai-loop ol{gap: 1rem;}
.ai-loop span{font-size: max(13px,0.9375rem);}
.ai-loop small{font-size: 0.625rem;}
.ai-loop li:not(:last-child)::after{right: -0.6875rem; font-size: max(10px,0.75rem);}
.ai-network{padding: 2.125rem 0;}
.ai-network h2{font-size: 1.5rem;}
.ai-network li{padding: 0.5625rem 0.6875rem; font-size: max(10px,0.75rem);}
.ai-finish{padding: 3.8125rem 0;}
.ai-finish h2{font-size: clamp(1.6875rem, 4.8vw, 2.375rem);}
.ai-finish h2 + p{font-size: max(13px,0.875rem);}
.ai-practice{scroll-margin-top: 5.5rem;}
.ai-intro h2{font-size: 1.75rem;}
.ai-section h2{font-size: 1.75rem;}
.ai-step span{font-size: 2rem;}
.ai-analysis h2{font-size: 1.625rem;}
.ai-analysis-grid{gap: 1.125rem;}
.ai-analysis-grid h3{font-size: max(13px,1.1875rem);}
.ai-loop ol{grid-template-columns: repeat(2, 1fr); gap: 1.4375rem 2.1875rem;}
.ai-loop li::after{display: none;}
.ai-loop li:nth-child(2n+1)::after{display: block; right: 0;}
.ai-loop small{font-size: max(10px,0.6875rem);}
.ai-network h2{font-size: 1.4375rem;}
.ai-network ul{gap: 0.375rem;}
.ai-network li{padding: 0.5rem 0.625rem;}
.ai-finish h2{font-size: clamp(1.6875rem, 4.8vw, 2.375rem);}
.ai-actions{flex-direction: column; max-width: 21.875rem; margin: auto;}
.ai-button{width: 100%; min-width: 0;}
@media (prefers-reduced-motion: reduce){html:has(.ai-page){scroll-behavior: auto;}
.ai-photo img, .ai-photo:hover img{transform: none; transition: none;}
.ai-button, .ai-text-link span{transition: none;}
.ai-button:hover, .ai-text-link:hover span{transform: none;}}
.ai-intro{padding: 4.25rem 0 3.625rem; background: linear-gradient(145deg, rgb(240, 247, 248), rgb(248, 250, 251) 65%, rgb(237, 244, 246)); border-bottom: 1px solid rgb(225, 236, 239);}
.ai-intro-grid{display: block; max-width: 53.75rem; margin: 0 auto; text-align: center;}
.ai-intro .ai-eyebrow{display: inline-flex; padding: 0.5625rem 0.9375rem; border: 1px solid rgb(190, 215, 220); border-radius: 62.4375rem; background: rgba(255, 255, 255, 0.7); color: rgb(43, 104, 118); font-size: max(10px,0.75rem); letter-spacing: 0.08em; margin-bottom: 1.4375rem;}
.ai-intro h2{font-size: 2.875rem; font-weight: 600; line-height: 1.35; letter-spacing: -0.045em;}
.ai-intro h2 strong{color: rgb(36, 103, 120); font-weight: 750;}
.ai-intro-copy{max-width: 45.625rem; margin: 1.3125rem auto 0;}
.ai-intro-copy > p{font-size: max(13px,1rem); line-height: 1.85; color: rgb(80, 108, 125);}
.ai-intro .ai-text-link{margin-top: 1.25rem; padding: 0.6875rem 1.25rem; background: rgb(32, 63, 82); color: rgb(255, 255, 255); border: 1px solid rgb(32, 63, 82); border-radius: 0.4375rem; gap: 1.25rem; transition: background 0.2s;}
.ai-benefits{gap: 1rem; margin-top: 2.375rem; padding: 0; border: 0;}
.ai-benefits li, .ai-benefits li:first-child, .ai-benefits li:last-child{position: relative; padding: 1.5rem 1.375rem; border-width: 0.1875rem 1px 1px; border-style: solid; border-color: rgb(114, 169, 180) rgb(219, 231, 235) rgb(219, 231, 235); border-image: initial; border-radius: 0.75rem; background: rgb(255, 255, 255); box-shadow: rgba(33, 63, 80, 0.027) 0 0.375rem 1.25rem;}
.ai-benefit-top{display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.3125rem;}
.ai-benefit-icon{display: grid; place-items: center; width: 2.875rem; height: 2.875rem; border-radius: 0.75rem; background: rgb(234, 243, 245); color: rgb(57, 120, 135);}
.ai-benefit-icon svg{width: 1.625rem; height: 1.625rem; fill: none; stroke: currentcolor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;}
.ai-benefit-index{font-size: 1.5rem; font-weight: 450; color: rgb(180, 203, 210); letter-spacing: -0.04em; margin: 0;}
.ai-benefits h3{font-size: max(13px,1.125rem); font-weight: 700; line-height: 1.5; color: rgb(36, 69, 88);}
.ai-benefits p{font-size: max(13px,0.875rem); line-height: 1.75; margin-top: 0.5rem; color: rgb(101, 125, 139);}
.ai-split{grid-template-columns: minmax(0, 3fr) minmax(0, 7fr); gap: 3rem;}
.ai-coaching .ai-split{grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);}
.ai-copy{min-width: 0; max-width: none;}
.ai-description{margin-top: 1.0625rem; line-height: 1.85;}
.ai-detail-list{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.375rem; margin-top: 1.625rem; border-top: 0;}
.ai-detail-list li{padding: 1.125rem 0 0; border-top: 1px solid rgb(184, 208, 215); border-bottom: 0;}
.ai-detail-list h3{font-size: max(13px,1rem); line-height: 1.6; letter-spacing: -0.035em;}
.ai-detail-list p{margin-top: 0.5rem; font-size: max(13px,0.875rem); line-height: 1.8;}
.ai-network li, .ai-network li.is-home{padding: 0; border: 0; background: none;}
.ai-network li a{display: flex; align-items: center; justify-content: space-between; gap: 0.875rem; min-height: 2.75rem; padding: 0.6875rem 0.875rem; border: 1px solid rgb(213, 226, 231); border-radius: 0.4375rem; background: rgb(255, 255, 255); color: rgb(64, 94, 112); font-size: max(10px,0.8125rem); font-weight: 600; transition: background 0.2s, border-color 0.2s, color 0.2s;}
.ai-network li a span{color: rgb(109, 146, 159); font-size: max(13px,1rem);}
.ai-network .is-home a{color: rgb(255, 255, 255); background: rgb(43, 101, 115); border-color: rgb(43, 101, 115);}
.ai-network .is-home a span{color: rgb(209, 234, 239);}
@media (hover: hover){.ai-intro .ai-text-link:hover{background: rgb(45, 89, 107);}
.ai-network li a:hover{background: rgb(226, 240, 243); border-color: rgb(97, 150, 164); color: rgb(32, 76, 95);}
.ai-network .is-home a:hover{background: rgb(29, 82, 98); color: rgb(255, 255, 255);}}

.ai-intro{padding: 3rem 0 2.625rem;}
.ai-intro h2{font-size: 2.25rem;}
.ai-intro .ai-eyebrow{font-size: 0.625rem; margin-bottom: 1.25rem;}
.ai-intro-copy{margin-top: 1.125rem; max-width: 37.5rem;}
.ai-intro-copy > p{font-size: max(13px,0.9375rem);}
.ai-benefits{grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.875rem; margin-top: 1.875rem; padding: 0;}
.ai-benefits li, .ai-benefits li:first-child, .ai-benefits li:last-child, .ai-benefits li:nth-child(2n+1), .ai-benefits li:nth-child(2n){padding: 1.375rem; border-width: 0.1875rem 1px 1px; border-style: solid; border-color: rgb(114, 169, 180) rgb(219, 231, 235) rgb(219, 231, 235); border-image: initial;}
.ai-benefits h3{font-size: max(13px,1.0625rem);}
.ai-benefits p{font-size: max(10px,0.8125rem);}
.ai-split, .ai-coaching .ai-split{grid-template-columns: minmax(0, 1fr); gap: 1.6875rem;}
.ai-practice h2, .ai-coaching h2{text-wrap: balance;}
.ai-detail-list{grid-template-columns: 1fr; gap: 0; border-top: 1px solid rgb(220, 230, 233);}
.ai-detail-list li{display: grid; grid-template-columns: 10.625rem minmax(0, 1fr); align-items: baseline; gap: 1.25rem; padding: 1.0625rem 0; border-top: 0; border-bottom: 1px solid rgb(225, 233, 236);}
.ai-detail-list p{margin: 0;}
.ai-network li, .ai-network li.is-home{padding: 0;}
.ai-network li a{padding: 0.625rem 0.8125rem; font-size: max(10px,0.8125rem);}
.ai-intro h2{font-size: 1.875rem;}
.ai-intro .ai-eyebrow{font-size: 0.5625rem; letter-spacing: 0.05em; padding: 0.5rem 0.6875rem;}
.ai-intro-copy > p{font-size: max(13px,0.875rem);}
.ai-benefits{gap: 0.625rem;}
.ai-benefits li, .ai-benefits li:first-child, .ai-benefits li:last-child, .ai-benefits li:nth-child(2n+1), .ai-benefits li:nth-child(2n){padding: 1.0625rem 0.875rem;}
.ai-benefit-top{margin-bottom: 0.9375rem;}
.ai-benefit-icon{width: 2.375rem; height: 2.375rem; border-radius: 0.625rem;}
.ai-benefit-icon svg{width: 1.4375rem; height: 1.4375rem;}
.ai-benefit-index{font-size: max(13px,1.25rem);}
.ai-benefits h3{font-size: max(13px,1rem);}
.ai-benefits p{font-size: max(10px,0.75rem);}
.ai-detail-list li{display: block; padding: 1.0625rem 0;}
.ai-detail-list p{margin-top: 0.3125rem;}
.ai-network li, .ai-network li.is-home{padding: 0;}
.ai-network li a{padding: 0.625rem 0.75rem; gap: 0.875rem;}
@media (prefers-reduced-motion: reduce){.ai-intro .ai-text-link, .ai-network li a{transition: none;}}
