/* Ported mechanically from training-puppies-hello-child 0.5.34 elementor-home-a.css by BUILD/block-migration/chrome/port_css.py
   (colours -> theme.json tokens, translucent ones -> legacy alpha tokens; TOKEN-MAP-2026-11-11.md). Mode A parity CSS: change the tokens, not this file. */
/* Built by BUILD/block-migration/convert/build_guide_css.py from the rules the 15 live guides use (used_rules.py, 2026-11-11). */
.comments-area a, .page-content a { text-decoration: underline; }
:root { --direction-multiplier: 1; }
.elementor *, .elementor ::after, .elementor ::before { box-sizing: border-box; }
.elementor a { box-shadow: none; text-decoration: none; }
.elementor img { border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 0px; box-shadow: none; height: auto; max-width: 100%; }
.elementor-element { --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; align-self: var(--align-self); flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); }
.elementor-element:where(.e-con-full, .elementor-widget) { align-content: var(--align-content); align-items: var(--align-items); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); gap: var(--row-gap) var(--column-gap); justify-content: var(--justify-content); }
:root { --page-title-display: block; }
.elementor-widget { position: relative; }
.elementor-widget:not(:last-child) { margin-block-end: var(--kit-widget-spacing,20px); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
.e-con { --border-radius: 0; --border-top-width: 0px; --border-right-width: 0px; --border-bottom-width: 0px; --border-left-width: 0px; --border-style: initial; --border-color: initial; --container-widget-width: 100%; --container-widget-height: initial; --container-widget-flex-grow: 0; --container-widget-align-self: initial; --content-width: min(100%,var(--container-max-width,1140px)); --width: 100%; --min-height: initial; --height: auto; --text-align: initial; --margin-top: 0px; --margin-right: 0px; --margin-bottom: 0px; --margin-left: 0px; --padding-top: var(--container-default-padding-top,10px); --padding-right: var(--container-default-padding-right,10px); --padding-bottom: var(--container-default-padding-bottom,10px); --padding-left: var(--container-default-padding-left,10px); --position: relative; --z-index: revert; --overflow: visible; --gap: var(--widgets-spacing,20px); --row-gap: var(--widgets-spacing-row,20px); --column-gap: var(--widgets-spacing-column,20px); --overlay-mix-blend-mode: initial; --overlay-opacity: 1; --overlay-transition: 0.3s; --e-con-grid-template-columns: repeat(3,1fr); --e-con-grid-template-rows: repeat(2,1fr); border-radius: var(--border-radius); height: var(--height); min-height: var(--min-height); min-width: 0px; overflow: var(--overflow); position: var(--position); width: var(--width); z-index: var(--z-index); --flex-wrap-mobile: wrap; }
.e-con:where(:not(.e-div-block-base)) { transition: background var(--background-transition,.3s),border var(--border-transition,.3s),box-shadow var(--border-transition,.3s),transform var(--e-con-transform-transition-duration,.4s); }
.e-con { --margin-block-start: var(--margin-top); --margin-block-end: var(--margin-bottom); --margin-inline-start: var(--margin-left); --margin-inline-end: var(--margin-right); --padding-inline-start: var(--padding-left); --padding-inline-end: var(--padding-right); --padding-block-start: var(--padding-top); --padding-block-end: var(--padding-bottom); --border-block-start-width: var(--border-top-width); --border-block-end-width: var(--border-bottom-width); --border-inline-start-width: var(--border-left-width); --border-inline-end-width: var(--border-right-width); }
.e-con { margin-block-end: var(--margin-block-end); margin-block-start: var(--margin-block-start); margin-inline-end: var(--margin-inline-end); margin-inline-start: var(--margin-inline-start); padding-inline-end: var(--padding-inline-end); padding-inline-start: var(--padding-inline-start); }
.e-con.e-flex { --flex-direction: column; --flex-basis: auto; --flex-grow: 0; --flex-shrink: 1; flex: var(--flex-grow) var(--flex-shrink) var(--flex-basis); }
.e-con-full, .e-con > .e-con-inner { padding-block-end: var(--padding-block-end); padding-block-start: var(--padding-block-start); text-align: var(--text-align); }
.e-con-full.e-flex, .e-con.e-flex > .e-con-inner { flex-direction: var(--flex-direction); }
.e-con, .e-con > .e-con-inner { display: var(--display); }
:is(.elementor-section-wrap, .elementor) > .e-con { --margin-left: auto; --margin-right: auto; max-width: min(100%,var(--width)); }
:is([data-widget_type="e-component.default"], [data-widget_type="e-component.default"] > .elementor-section-wrap) > .e-con { --margin-right: 0px; --margin-left: 0px; }
.e-con .elementor-widget.elementor-widget { margin-block-end: 0px; }
.e-con::before, .e-con > .elementor-background-slideshow::before, .e-con > .elementor-motion-effects-container > .elementor-motion-effects-layer::before, :is(.e-con, .e-con > .e-con-inner) > .elementor-background-video-container::before { border-block-end-width: var(--border-block-end-width); border-block-start-width: var(--border-block-start-width); border-color: var(--border-color); border-inline-end-width: var(--border-inline-end-width); border-inline-start-width: var(--border-inline-start-width); border-radius: var(--border-radius); border-style: var(--border-style); content: var(--background-overlay); display: block; height: max(100% + var(--border-top-width) + var(--border-bottom-width),100%); left: calc(0px - var(--border-left-width)); mix-blend-mode: var(--overlay-mix-blend-mode); opacity: var(--overlay-opacity); position: absolute; top: calc(0px - var(--border-top-width)); transition: var(--overlay-transition,.3s); width: max(100% + var(--border-left-width) + var(--border-right-width),100%); }
.e-con::before { transition: background var(--overlay-transition,.3s),border-radius var(--border-transition,.3s),opacity var(--overlay-transition,.3s); }
.e-con > .elementor-background-slideshow, :is(.e-con, .e-con > .e-con-inner) > .elementor-background-video-container { border-block-end-width: var(--border-block-end-width); border-block-start-width: var(--border-block-start-width); border-color: var(--border-color); border-inline-end-width: var(--border-inline-end-width); border-inline-start-width: var(--border-inline-start-width); border-radius: var(--border-radius); border-style: var(--border-style); height: max(100% + var(--border-top-width) + var(--border-bottom-width),100%); left: calc(0px - var(--border-left-width)); top: calc(0px - var(--border-top-width)); width: max(100% + var(--border-left-width) + var(--border-right-width),100%); }
@media (max-width: 767px) { :is(.e-con, .e-con > .e-con-inner) > .elementor-background-video-container.elementor-hidden-mobile { display: none; } }
:is(.e-con, .e-con > .e-con-inner) > .elementor-background-video-container::before { z-index: 1; }
:is(.e-con, .e-con > .e-con-inner) > .elementor-background-slideshow::before { z-index: 2; }
.e-con .elementor-widget { min-width: 0px; }
.e-con.e-con > .e-con-inner > .elementor-widget, .elementor.elementor .e-con > .elementor-widget { max-width: 100%; }
.e-con .elementor-widget:not(:last-child) { --kit-widget-spacing: 0px; }
@media (max-width: 767px) { .e-con.e-flex { --width: 100%; --flex-wrap: var(--flex-wrap-mobile); } }
.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)) .elementor-widget-container, .elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)):not(:has(.elementor-widget-container)) { transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s); }
@media (prefers-reduced-motion: reduce) { html * { transition-delay: 0s !important; transition-duration: 0s !important; } }
.tp-shell-kit { --e-global-color-primary: var(--wp--preset--color--action); --e-global-color-secondary: var(--wp--preset--color--action-hover); --e-global-color-text: var(--wp--custom--legacy--color--ink-kit); --e-global-color-accent: var(--wp--custom--legacy--color--kit-accent); --e-global-color-70e8a1f: var(--wp--custom--legacy--color--kit-slate); --e-global-color-9bcd0c5: var(--wp--custom--legacy--color--kit-slate-light); --e-global-color-11ceb9f: var(--wp--custom--legacy--color--kit-night); --e-global-color-1210d53: var(--wp--custom--color--on-action); --e-global-color-338a386: #03051DE6; --e-global-color-20e7ae0: #222769E6; --e-global-color-1304f0d: var(--wp--custom--legacy--color--kit-green); --e-global-color-tp0001a: var(--wp--preset--color--text-muted); --e-global-color-tp0001b: var(--wp--custom--color--tint); --e-global-color-tp0001c: var(--wp--preset--color--base); --e-global-color-tp0001d: var(--wp--custom--legacy--color--border-old); --e-global-color-tp0001e: var(--wp--custom--color--footer-bg); --e-global-color-tp0001f: var(--wp--preset--color--accent); --e-global-typography-primary-font-family: "Georgia"; --e-global-typography-primary-font-size: 44px; --e-global-typography-primary-font-weight: 700; --e-global-typography-primary-line-height: 1.2em; --e-global-typography-secondary-font-family: "Georgia"; --e-global-typography-secondary-font-size: 32px; --e-global-typography-secondary-font-weight: 700; --e-global-typography-text-font-family: "Georgia"; --e-global-typography-text-font-size: 20px; --e-global-typography-text-font-weight: 700; --e-global-typography-accent-font-family: "Georgia"; --e-global-typography-accent-font-size: 36px; --e-global-typography-accent-font-weight: 700; --e-global-typography-d1f34ec-font-family: "Georgia"; --e-global-typography-d1f34ec-font-size: 28px; --e-global-typography-d1f34ec-font-weight: 700; --e-global-typography-d1f34ec-line-height: 1.1em; --e-global-typography-9458fd7-font-family: "Georgia"; --e-global-typography-9458fd7-font-size: 22px; --e-global-typography-9458fd7-font-weight: 700; --e-global-typography-d31098b-font-size: 13px; --e-global-typography-d31098b-font-weight: 700; --e-global-typography-d31098b-text-transform: uppercase; --e-global-typography-d31098b-letter-spacing: 3px; --e-global-typography-4467953-font-size: 11px; --e-global-typography-4467953-font-weight: 700; --e-global-typography-af82f03-font-size: 14px; --e-global-typography-af82f03-font-weight: 700; --e-global-typography-748207e-font-size: 17px; --e-global-typography-748207e-font-weight: 700; --e-global-typography-25da5bd-font-size: 12px; --e-global-typography-25da5bd-font-weight: 500; --e-global-typography-fbff8ca-font-size: 16px; --e-global-typography-fbff8ca-font-weight: 400; --e-global-typography-fbff8ca-line-height: 1.7em; --e-global-typography-6f44dfc-font-size: 17px; --e-global-typography-6f44dfc-font-weight: 400; --e-global-typography-6f44dfc-line-height: 1.6em; background-color: var( --e-global-color-1210d53 ); color: var( --e-global-color-text ); font-size: var( --e-global-typography-fbff8ca-font-size ); font-weight: var( --e-global-typography-fbff8ca-font-weight ); line-height: var( --e-global-typography-fbff8ca-line-height ); }
.tp-shell-kit button, .tp-shell-kit input[type="button"], .tp-shell-kit input[type="submit"], .tp-shell-kit .elementor-button { background-color: var( --e-global-color-accent ); font-size: var( --e-global-typography-af82f03-font-size ); font-weight: var( --e-global-typography-af82f03-font-weight ); color: var( --e-global-color-1210d53 ); border-style: solid; border-width: 1px; border-color: var( --e-global-color-accent ); border-radius: 8px; padding: 14px 32px; }
.tp-shell-kit button:hover, .tp-shell-kit button:focus, .tp-shell-kit input[type="button"]:hover, .tp-shell-kit input[type="button"]:focus, .tp-shell-kit input[type="submit"]:hover, .tp-shell-kit input[type="submit"]:focus, .tp-shell-kit .elementor-button:hover, .tp-shell-kit .elementor-button:focus { background-color: var( --e-global-color-tp0001f ); color: var( --e-global-color-1210d53 ); }
.tp-shell-kit a { color: var( --e-global-color-primary ); }
.tp-shell-kit a:hover { color: var( --e-global-color-secondary ); }
.tp-shell-kit h1 { color: var( --e-global-color-text ); font-family: var( --e-global-typography-primary-font-family ), serif; font-size: var( --e-global-typography-primary-font-size ); font-weight: var( --e-global-typography-primary-font-weight ); line-height: var( --e-global-typography-primary-line-height ); }
.tp-shell-kit h2 { color: var( --e-global-color-text ); font-family: var( --e-global-typography-secondary-font-family ), serif; font-size: var( --e-global-typography-secondary-font-size ); font-weight: var( --e-global-typography-secondary-font-weight ); }
.tp-shell-kit h3 { color: var( --e-global-color-text ); font-family: var( --e-global-typography-text-font-family ), serif; font-size: var( --e-global-typography-text-font-size ); font-weight: var( --e-global-typography-text-font-weight ); }
.e-con { --container-max-width: 1216px; }
.elementor-widget:not(:last-child) { --kit-widget-spacing: 20px; }
.elementor-element { --widgets-spacing: 20px 20px; --widgets-spacing-row: 20px; --widgets-spacing-column: 20px; }
@media (max-width: 1023px) { .tp-shell-kit { --e-global-typography-primary-font-size: 36px; --e-global-typography-secondary-font-size: 28px; --e-global-typography-d1f34ec-font-size: 24px; --e-global-typography-9458fd7-font-size: 20px; font-size: var( --e-global-typography-fbff8ca-font-size ); line-height: var( --e-global-typography-fbff8ca-line-height ); } }
@media (max-width: 1023px) { .tp-shell-kit h1 { font-size: var( --e-global-typography-primary-font-size ); line-height: var( --e-global-typography-primary-line-height ); } }
@media (max-width: 1023px) { .tp-shell-kit h2 { font-size: var( --e-global-typography-secondary-font-size ); } }
@media (max-width: 1023px) { .tp-shell-kit h3 { font-size: var( --e-global-typography-text-font-size ); } }
@media (max-width: 1023px) { .tp-shell-kit button, .tp-shell-kit input[type="button"], .tp-shell-kit input[type="submit"], .tp-shell-kit .elementor-button { font-size: var( --e-global-typography-af82f03-font-size ); } }
@media (max-width: 1023px) { .e-con { --container-max-width: 1024px; } }
@media (max-width: 767px) { .tp-shell-kit { --e-global-typography-primary-font-size: 32px; --e-global-typography-secondary-font-size: 26px; --e-global-typography-accent-font-size: 28px; --e-global-typography-d1f34ec-font-size: 20px; --e-global-typography-d31098b-font-size: 9px; font-size: var( --e-global-typography-fbff8ca-font-size ); line-height: var( --e-global-typography-fbff8ca-line-height ); } }
@media (max-width: 767px) { .tp-shell-kit h1 { font-size: var( --e-global-typography-primary-font-size ); line-height: var( --e-global-typography-primary-line-height ); } }
@media (max-width: 767px) { .tp-shell-kit h2 { font-size: var( --e-global-typography-secondary-font-size ); } }
@media (max-width: 767px) { .tp-shell-kit h3 { font-size: var( --e-global-typography-text-font-size ); } }
@media (max-width: 767px) { .tp-shell-kit button, .tp-shell-kit input[type="button"], .tp-shell-kit input[type="submit"], .tp-shell-kit .elementor-button { font-size: var( --e-global-typography-af82f03-font-size ); } }
@media (max-width: 767px) { .e-con { --container-max-width: 767px; } }
