/* Shared approved Amethyst visual system. Scoped away from checkout and calendars. */
.amx340{background:#faf8fe;color:#241037;font:16px/1.55 Inter,system-ui,-apple-system,Segoe UI,sans-serif}.amx340 *{box-sizing:border-box}.amx340-wrap{width:min(1200px,calc(100% - 48px));margin:auto}.amx340 a{color:inherit}.amx340-crumb{padding:22px 0;color:#6b6176;font-size:12px}.amx340-crumb a{text-decoration:none}.amx340-hero{border-radius:24px;padding:38px 42px;display:grid;grid-template-columns:1.35fr .65fr;gap:36px;align-items:center;background:radial-gradient(at 95% 20%,#7129b8 0,transparent 52%),#2a1043;color:#fff;overflow:hidden}.amx340-eyebrow{font-size:11px;letter-spacing:2px;color:#cbb0ef;font-weight:800}.amx340 h1{font-size:clamp(36px,4.3vw,58px);line-height:1.08;letter-spacing:-1.8px;margin:0 0 20px;color:#fff}.amx340 h2{font-size:30px;line-height:1.18;letter-spacing:-.8px;margin:0 0 12px;color:#241037}.amx340 h3{font-size:21px;line-height:1.3;margin:10px 0 14px;color:#241037}.amx340 p{margin:0 0 15px}.amx340-lead{font-size:17px;line-height:1.65;color:#e3d6ee}.amx340-hero-note{font-size:12px;color:#d6c0e8;margin-top:22px!important}.amx340-hero figure{margin:0;border:1px solid #ffffff25;background:#ffffff0d;border-radius:18px;overflow:hidden}.amx340-hero figure img{display:block;width:100%;height:260px;object-fit:cover;border-radius:0}.amx340-hero figcaption{font-size:10px;letter-spacing:1px;padding:12px 16px;color:#e3d6ee}.amx340-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.amx340-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:99px;padding:13px 22px;background:#8225ed;color:#fff!important;text-decoration:none;font-weight:750;font-size:14px;min-height:46px}.amx340-hero .amx340-btn,.amx340-bottom .amx340-btn{background:#fff;color:#53217b!important}.amx340-hero .amx340-outline{background:transparent;border-color:#ad83cb;color:#fff!important}.amx340-jump{display:flex;gap:8px;overflow:auto;padding:22px 0}.amx340-jump a{white-space:nowrap;text-decoration:none;background:#fff;border:1px solid #e8ddf1;border-radius:99px;padding:9px 17px;font-size:13px;font-weight:650}.amx340 section{padding:26px 0;scroll-margin-top:28px}.amx340-tag{font-size:11px;letter-spacing:1px;color:#8225ed;text-transform:uppercase;font-weight:800}.amx340-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.amx340-heading>a{font-size:14px;white-space:nowrap}.amx340-heading p:not(.amx340-tag){font-size:14px;color:#6b6176}.amx340-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.amx340-card{border:1px solid #e8ddf1;border-radius:20px;padding:25px;background:#fff;min-width:0}.amx340-featured{border:2px solid #922de8;background:#fcf8ff}.amx340-price{font-size:37px;font-weight:800;letter-spacing:-1px;margin:12px 0!important}.amx340-price small{font-size:13px;font-weight:400;letter-spacing:0;color:#6b6176}.amx340 ul{list-style:none;padding:0;margin:14px 0 22px}.amx340 li{padding:7px 0;font-size:14px}.amx340 li:before{content:'✓';color:#8225ed;font-weight:800;margin-right:9px}.amx340-card .amx340-btn{width:100%}.amx340-small{font-size:13px;color:#6b6176;margin-top:16px!important}.amx340-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.amx340-panel{padding:30px;background:#f0e5ff;border-radius:22px}.amx340-panel p,.amx340-card p{font-size:15px}.amx340-panel a,.amx340-card>a:not(.amx340-btn),.amx340-local-note a{color:#7123b4;font-weight:650}.amx340-local-note{margin-top:18px;background:#fff;border:1px solid #e8ddf1;border-radius:20px;padding:25px}.amx340 details{border-bottom:1px solid #e8ddf1;padding:18px 0}.amx340 summary{font-weight:700;cursor:pointer}.amx340 details p{margin-top:14px}.amx340-related{display:flex;gap:10px;flex-wrap:wrap}.amx340-related a{padding:12px 18px;border:1px solid #e8ddf1;border-radius:14px;background:#fff;text-decoration:none;font-weight:650}.amx340-bottom{background:#2a1043;color:#fff;padding:30px;border-radius:24px;display:flex;justify-content:space-between;gap:25px;align-items:center;margin:25px 0 48px}.amx340-bottom h2{color:#fff}.amx340-bottom p{font-size:13px;color:#d6c0e8}.amx340 a:focus-visible,.amx340 summary:focus-visible{outline:3px solid #b17cf2;outline-offset:4px}
/* Other established public templates keep their original content and actions. */
:is(.seo142,.amx331-ddc,.amx334,.amxl){background:#faf8fe;color:#241037}
:is(.amx331-hero,.seo142-hero,.amx334-hero){background:#faf8fe!important;padding:28px 0!important}
:is(.amx331-hero-grid,.amx334-hero-grid){background:radial-gradient(at 95% 20%,#7129b8 0,transparent 52%),#2a1043!important;color:#fff!important;border-radius:24px!important;padding:38px 42px!important;gap:36px!important}
:is(.amx331-hero,.amx334-hero) :is(h1,.amx331-lead,.amx334-lead,.amx334-focus){color:#fff!important}
:is(.amx331-hero,.amx334-hero) :is(.amx331-kicker,.amx334-kicker,.amx331-crumb,.amx334-breadcrumb,.amx331-address){color:#dec9f1!important}
:is(.amx331-hero-photo,.amx334-hero-image){border-radius:18px!important;overflow:hidden!important;clip-path:none!important;transform:none!important}
:is(.amx331-hero-photo,.amx334-hero-image) img{border-radius:18px!important;clip-path:none!important;aspect-ratio:4/3;object-fit:cover}
:is(.amx331-hero,.amx334-hero) figcaption{color:#d6c0e8!important}
:is(.amx331-primary,.amx334-button--primary,.seo142-btn){background:#8225ed!important;color:#fff!important;border-radius:99px!important;border-color:#8225ed!important}
:is(.amx331-hero,.amx334-hero) :is(.amx331-primary,.amx334-button--primary){background:#fff!important;color:#53217b!important;border-color:#fff!important}
:is(.amx331-hero,.amx334-hero) :is(.amx331-secondary,.amx334-button--outline){background:transparent!important;color:#fff!important;border:1px solid #ad83cb!important;border-radius:99px!important}
:is(.amx334-context,.amx334-practice,.amx334-debrief,.amx334-faq,.amx334-related,.amx331-ddc,.seo142-main,.seo142-faq,.seo142-related){background:#faf8fe!important}
:is(.amx334-note,.amx334-drill,.seo142-card,.amx331-info-grid>article){border:1px solid #e8ddf1!important;border-radius:20px!important;background:#fff!important;padding:25px!important;box-shadow:none!important}
.seo142-hero .seo142-wrap{background:radial-gradient(at 95% 20%,#7129b8 0,transparent 52%),#2a1043;border-radius:24px;padding:38px 42px;color:#fff}.seo142-hero :is(h1,p,.seo142-kicker,.seo142-crumbs){color:#fff!important}.seo142-side{border-radius:22px!important;background:#2a1043!important}.seo142-links a{background:#fff!important;border:1px solid #e8ddf1!important;color:#53217b!important;border-radius:14px!important}
.footer257 .footer299-articles{grid-column:1/-1}.footer257 section{padding-top:0;padding-bottom:0}
@media(max-width:800px){.amx340-wrap{width:calc(100% - 32px)}.amx340-hero{grid-template-columns:1fr;padding:26px;gap:22px}.amx340-hero figure img{height:240px}.amx340 h1{font-size:38px;letter-spacing:-1px}.amx340-cards,.amx340-split{grid-template-columns:1fr}.amx340-heading{align-items:start;flex-direction:column}.amx340 h2{font-size:27px}.amx340-bottom{align-items:start;flex-direction:column}.amx340-jump{margin-right:-16px}.amx340-panel{padding:24px}:is(.amx331-hero-grid,.amx334-hero-grid,.seo142-hero .seo142-wrap){padding:26px!important;border-radius:22px!important}}
@media(prefers-reduced-motion:reduce){.amx340 *{scroll-behavior:auto}}

.amx340 .amx340-crumb,.amx340 .amx340-crumb a,.amx340 .amx340-jump a{color:#53217b!important}.amx340 .amx340-jump{position:static;background:transparent;border:0}.amx340 .amx340-jump a:hover{background:#f0e5ff}
/* Main service and school pages share the same hero, spacing and card treatment. */
:is(.fh15-page,.dc144,.sp34-page,.rt27-page,.abt40-page,.ct29-page,.car30-page){background:#faf8fe!important}
:is(.dc144-hero,.sp34-hero,.abt40-hero){background:#faf8fe!important;padding:28px 0!important}
:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid){background:radial-gradient(at 95% 20%,#7129b8 0,transparent 52%),#2a1043!important;border-radius:24px!important;padding:38px 42px!important;color:#fff!important;box-sizing:border-box}
:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid) :is(h1,h1 em,h1 span,p,.fh15-kicker,.dc144-eyebrow,.sp34-kicker,.abt40-kicker){color:#fff!important}
:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid) h1{font-size:clamp(36px,4.3vw,58px)!important;line-height:1.08!important;letter-spacing:-1.5px!important}
:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid) img{border-radius:18px!important;clip-path:none!important}
:is(.fh15-glass,.rt27-card,.dc144-benefit,.abt40-value,.sp34-service){border-radius:20px!important;border-color:#e8ddf1!important}
.rt27-hero{border-radius:24px!important;width:min(1200px,calc(100% - 48px));margin:28px auto!important;overflow:hidden;background-color:#2a1043!important}
@media(max-width:800px){:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid){padding:26px!important;border-radius:22px!important}.rt27-hero{width:calc(100% - 32px)}}

.fh15-page-hero .fh15-schedule-row>div{background:#ffffff12!important;border:1px solid #ffffff30!important}.fh15-page-hero .fh15-schedule-row small{color:#dec9f1!important;font-size:10px!important}.fh15-page-hero .fh15-schedule-row strong{color:#fff!important}:is(.fh15-page-hero,.dc144-hero-grid,.sp34-hero-grid,.abt40-hero-grid) h1{font-weight:750!important}
