/* Training destinations only. Photos are configured in homepage-images.json. */
.tp-hero{background:#102e24;color:#f7f3e8;padding:65px 0 48px}.tp-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:64px}.tp-hero .eyebrow,.tp-life .eyebrow{color:#dcc17c}.tp-hero h1{font-family:var(--serif);font-size:clamp(42px,5.2vw,76px);line-height:1.06;letter-spacing:-.035em;margin:22px 0}.tp-hero h1 em{color:#e3cd97;font-weight:400}.tp-lead{font-size:18px;line-height:1.65;max-width:650px}.tp-hero .tp-lead{color:#e0e5de;margin-bottom:26px}.tp-hero figure{margin:0;position:relative;border-radius:18px;overflow:hidden;height:380px;border:1px solid #647367}.tp-hero img{width:100%;height:100%;object-fit:cover}.tp-hero figcaption{position:absolute;inset:auto 0 0;padding:65px 24px 23px;background:linear-gradient(transparent,#0b211cee);font:25px/1.2 var(--serif)}.tp-hero figcaption span{font:12px/1.6 var(--sans);letter-spacing:.12em;color:#e2c786}.tp-menu-section{padding:65px 0 80px;background:#f7f4eb}.tp-menu-section h2,.tp-life h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-.025em}.tp-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.tp-menu-card{display:flex;flex-direction:column;border:1px solid #536554;border-radius:16px;padding:30px;background:linear-gradient(145deg,#214b3b,#102e24);color:#fff9e9;text-decoration:none;transition:transform .2s,border-color .2s}.tp-menu-number{color:#e4c577;font-size:14px;letter-spacing:.15em;border-bottom:1px solid #65715b;padding-bottom:20px}.tp-menu-card h3{font:36px/1.1 var(--serif);margin:26px 0 15px;color:inherit}.tp-menu-card p{color:#e0e5d9;line-height:1.7;margin:0 0 24px}.tp-menu-meta{font-size:12px;letter-spacing:.07em;color:#e5ce93;line-height:1.8;margin-top:auto}.tp-menu-link{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #66705b;padding-top:20px;margin-top:20px;font-weight:600;font-size:15px;color:#f4db98}.tp-tiers{display:grid;gap:14px}.tp-tier{border:1px solid #c9cbbb;border-radius:15px;overflow:hidden;background:#faf8f0}.tp-tier summary{list-style:none;display:grid;grid-template-columns:1fr auto 26px;align-items:center;gap:24px;padding:26px 30px;cursor:pointer}.tp-tier summary::-webkit-details-marker,.tp-experience summary::-webkit-details-marker{display:none}.tp-tier-name{display:block;font:29px/1.2 var(--serif);color:#133b2e}.tp-tier-lead{display:block;font-size:15px;line-height:1.5;color:#5b675c;margin-top:8px}.tp-tier-price{font-size:27px;font-weight:600;color:#173c2e;white-space:nowrap}.tp-tier-price span{display:block;text-align:right;font-size:12px;font-weight:400;color:#647264}.tp-plus{font-size:27px;font-weight:400;color:#8a6c2e;text-align:center}.tp-tier[open] summary{background:#163c2e}.tp-tier[open] .tp-tier-name,.tp-tier[open] .tp-tier-price{color:#fff7e5}.tp-tier[open] .tp-tier-lead,.tp-tier[open] .tp-tier-price span{color:#d9e1d3}.tp-tier[open] .tp-plus,.tp-experience[open]>summary .tp-plus{transform:rotate(45deg);color:#dcc17c}.tp-tier-body{padding:10px 30px 28px;max-width:900px;color:#374d40;line-height:1.7}.tp-tier-body ul{padding-left:20px;columns:2;column-gap:40px}.tp-tier-body li{break-inside:avoid;margin-bottom:10px}.tp-tier-body a{display:inline-block;background:#e1bc65;color:#152b21;border-radius:30px;padding:12px 23px;font-weight:600;text-decoration:none}.tp-tier-body .card-note{font-size:14px;border-top:1px solid #ced1c3;padding-top:18px}.tp-life{padding:64px 0;background:#102e24;color:#f7f3e8}.tp-life .tp-lead{color:#d9e1d5}.tp-experiences{margin:32px 0}.tp-experience{border-top:1px solid #637060}.tp-experience:last-child{border-bottom:1px solid #637060}.tp-experience>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 0}.tp-experience>summary strong{font:25px var(--serif);font-weight:400}.tp-experience>summary span span{display:block;font-size:15px;line-height:1.5;color:#cdd8c9;margin-top:8px}.tp-experience-body{background:#f7f4eb;color:#173c2e;border-radius:12px;padding:24px;margin:0 0 24px}.tp-experience-body .shell{width:100%;padding:0}.tp-experience-body h2{font-size:30px;color:#173c2e}.tp-experience-body .light,.tp-experience-body .light-link{color:#6b5728}.tp-experience-body .split,.tp-experience-body .section-heading,.tp-experience-body .story-steps{display:block}.tp-experience-body .story-steps article{margin-top:24px}.tp-experience-body .case-study{margin-top:24px}.tp-life>.shell>.text-link{color:#e5cd90}.tp-coaching{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:36px}.tp-coaching article{border-top:1px solid #6b765e;padding-top:24px}.tp-coaching article>span{color:#e1c37b;font-size:13px}.tp-coaching h3{font:26px var(--serif)}.tp-coaching p{color:#d5dfd1;line-height:1.7}summary:focus-visible,.tp-menu-card:focus-visible{outline:3px solid #b38a2f;outline-offset:4px}
@media(hover:hover){.tp-menu-card:hover{transform:translateY(-3px);border-color:#dbbc73}.tp-tier:not([open]) summary:hover{background:#efeddf}}
@media(max-width:700px){.tp-hero{padding:34px 0 30px}.tp-hero-grid{grid-template-columns:1fr;gap:28px}.tp-hero h1{font-size:43px}.tp-hero figure{height:210px}.tp-hero img{object-position:center 28%!important}.tp-hero figcaption{font-size:22px;padding:55px 18px 16px}.tp-lead{font-size:16px}.tp-menu-section{padding:40px 0}.tp-menu{grid-template-columns:1fr;gap:14px;margin-top:24px}.tp-menu-card{padding:24px}.tp-menu-number{padding-bottom:12px}.tp-menu-card h3{font-size:32px;margin-top:17px}.tp-menu-card p{margin-bottom:17px}.tp-tier summary{padding:20px 16px;gap:10px;grid-template-columns:1fr auto 18px}.tp-tier-name{font-size:23px}.tp-tier-price{font-size:22px}.tp-tier-lead{font-size:14px}.tp-tier-body{padding:8px 20px 24px}.tp-tier-body ul{columns:1}.tp-life{padding:40px 0}.tp-experience-body{padding:20px 16px}.tp-experience>summary strong{font-size:23px}.tp-coaching{grid-template-columns:1fr;gap:20px}.tp-coaching h3{margin:12px 0}.tp-coaching p{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.tp-menu-card{transition:none}}
.tp-tier summary::after,.tp-experience>summary::after{content:none}.tp-tier .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tp-tier summary{font-weight:400}.tp-tier-price{font-weight:600}.tp-tier-lead{font-weight:400}.training\/board-and-train-page #programs h2,.training\/private-page #private-training h2{font-family:var(--serif);font-weight:400}

/* Image-led training menu and a clear path into the examples library. */
.tp-menu-card{position:relative;isolation:isolate;overflow:hidden;padding:0;min-height:420px;justify-content:flex-end;background:#102e24}
.tp-menu-media{position:absolute;inset:0;z-index:-2}
.tp-menu-photo{width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform .5s}
.tp-menu-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#102e2444 10%,#102e24ed 86%)}
.tp-menu-copy{display:flex;flex-direction:column;align-items:flex-start;padding:30px;width:100%;min-height:300px}
.tp-menu-card h3{margin-top:20px}
.tp-menu-link{width:100%;align-items:center}
.tp-menu-link .g-arrow{width:21px;height:21px}
@media(hover:hover){.tp-menu-card:hover .tp-menu-photo{transform:scale(1.04)}.tp-menu-card:hover .tp-menu-overlay{background:linear-gradient(180deg,#102e242e 10%,#102e24e6 86%)}}
@media(max-width:700px){.tp-menu-card{min-height:360px}.tp-menu-copy{padding:24px;min-height:270px}.tp-menu-photo{object-position:center 38%}}
@media(prefers-reduced-motion:reduce){.tp-menu-photo{transition:none}}

/* Focused page actions and clearer, always-visible program details. */
.button-outline-dark{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;color:#173c2e;background:transparent;border:1px solid #aa8a45;border-radius:999px;text-decoration:none;font-weight:650;padding:15px 24px;min-height:54px;box-sizing:border-box}.button-outline-dark:hover,.button-outline-dark:focus-visible{background:#173c2e;color:#f7f3e8;border-color:#173c2e}.training-library-compact-link{padding:34px 0 6px}.training-library-compact-link .button{width:100%;max-width:none}.tp-bottom-cta{margin:24px 0 6px;width:fit-content}.training-logistics{color:#536357;max-width:760px;line-height:1.65;margin:-6px 0 26px}.service-area-note{margin-top:4px}.tp-experience>summary{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px}.tp-experience-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid #d7b65f;border-radius:50%;color:#e2bb65;font-size:.75rem;letter-spacing:.08em}.tp-experience>summary>span:nth-child(2){min-width:0}

/* A visual anchor keeps the puppy offering visible before the longer story. */
.puppy-page-hero{padding-bottom:56px}.puppy-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:56px}.puppy-hero-note{max-width:560px;color:#dbe3d8;font-size:1rem;line-height:1.65;border-left:2px solid #d8b663;padding-left:17px}.puppy-hero-photo{margin:0;height:360px;border:1px solid #748675;border-radius:18px;overflow:hidden;position:relative}.puppy-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.puppy-hero-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:52px 20px 18px;background:linear-gradient(transparent,#0b211cee);font:22px/1.2 var(--serif);color:#f7f3e8}.puppy-video-section{background:#e7eadf}.puppy-video-section .section-heading{align-items:end}.puppy-program-top{padding-top:52px}
.approach-page .approach-balance-intro{padding:52px 0 58px}.approach-page .approach-balance-intro .balance-grid{gap:14px}.approach-page .approach-balance-intro .balance-grid article{min-height:0;padding:23px 22px}.approach-page .approach-balance-intro .balance-grid h3{font-size:1.55rem}
@media(max-width:700px){.training-library-compact-link{padding:24px 0 0}.training-library-compact-link .button{width:100%}.tp-bottom-cta{width:100%;justify-content:center}.training-logistics{margin:0 0 22px}.puppy-page-hero{padding-bottom:32px}.puppy-hero-grid{grid-template-columns:1fr;gap:28px}.puppy-hero-photo{height:260px}.puppy-hero-photo img{object-position:center 40%}.puppy-hero-photo figcaption{font-size:19px;padding:44px 17px 15px}.approach-page .approach-balance-intro{padding:38px 0 44px}}

/* Board & Train: visible stay inclusions for quick scanning */
.bt-stay-list{margin:34px 0 30px;border-top:1px solid #637060}
.bt-stay-item{display:grid;grid-template-columns:108px 1fr;gap:28px;align-items:start;padding:25px 0;border-bottom:1px solid #637060}
.bt-stay-item .tp-experience-icon{display:flex;align-items:center;justify-content:center;width:84px;height:84px;border:2px solid #d8b85f;border-radius:50%;color:#e1c37b;font-size:16px;letter-spacing:.08em}
.bt-stay-item h3{font:30px/1.15 var(--serif);margin:2px 0 9px;color:#f7f3e8}
.bt-stay-item p{margin:0;color:#d5dfd1;line-height:1.6;max-width:760px}
@media(max-width:700px){.bt-stay-item{grid-template-columns:68px 1fr;gap:18px;padding:21px 0}.bt-stay-item .tp-experience-icon{width:58px;height:58px;font-size:13px}.bt-stay-item h3{font-size:24px}.bt-stay-item p{font-size:16px;line-height:1.5}}
.tp-hero-grid-solo{grid-template-columns:1fr;max-width:900px}.puppy-hero-grid-solo{grid-template-columns:1fr;max-width:900px}

/* Skim-first package cards: essentials stay visible, full curriculum opens on demand. */
.tp-tier summary{min-height:122px;position:relative;grid-template-columns:minmax(0,1fr) auto;transition:background .2s,color .2s}
.tp-tier-name{font-weight:600}
.tp-tier-lead{font-weight:500}
.tp-tier .tp-plus{grid-column:1/-1;grid-row:2;min-width:0;width:100%;padding-top:16px;border-top:1px solid #6d816e;font-size:0;text-align:left;transition:transform .2s,color .2s}
.tp-tier .tp-plus::before{content:"Click here for more details  →";font:700 13px/1.2 var(--sans);letter-spacing:.02em;color:#e1bd68;white-space:nowrap}
.tp-tier[open] .tp-plus{transform:none}
.tp-tier[open] .tp-plus::before{content:"Hide details  ×";color:#dcc17c}
.tp-tier:not([open]) summary:hover .tp-plus::before{color:#5e4b20}
.tp-tier[open] summary{min-height:0}
.tp-tier[open] .tp-tier-body{animation:tp-reveal .22s ease-out}
.package-section{background:#102e24;color:#f7f3e8}
.package-section .section-heading h2{color:#f7f3e8}
.package-section .section-heading>p,.package-section .training-logistics{color:#d9e1d5}
.package-section .tp-tier{border-color:#6d816e;box-shadow:0 5px 18px rgba(0,0,0,.12)}
.package-section .tp-tier-summary{display:block;max-width:640px;margin-top:8px;color:#d9e1d5;font-size:15px;line-height:1.45}
.package-section .tp-tier:not([open]) summary{background:#173c2e}
.package-section .tp-tier:not([open]) .tp-tier-name,.package-section .tp-tier:not([open]) .tp-tier-price{color:#fff7e5}
.package-section .tp-tier:not([open]) .tp-tier-lead,.package-section .tp-tier:not([open]) .tp-tier-price span{color:#d9e1d3}
.package-section .tp-tier:not([open]) .tp-tier-summary{color:#d9e1d5;font-weight:500}
.package-section .tp-bottom-cta{color:#173c2e}
.package-owner-note{margin:26px 0 30px;padding:18px 22px;border-left:3px solid #e1bd68;background:#173c2e;color:#f3eee1;font-size:17px;line-height:1.55;max-width:850px}
.bt-decompression{margin:38px 0 4px;padding:26px 28px;border:1px solid #d5b45d;border-radius:16px;background:#173c2e;color:#f7f3e8}
.bt-decompression .eyebrow{color:#e1bd68;margin-bottom:12px}
.bt-decompression-heading{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start}
.bt-decompression h3{font:32px/1.15 var(--serif);margin:0 0 10px;color:#f7f3e8}
.bt-decompression-heading p,.bt-decompression-note{margin:0;color:#d9e1d5;line-height:1.6;max-width:760px}
.bt-decompression-price{text-align:right;white-space:nowrap}.bt-decompression-price strong{display:block;font-size:30px;color:#e1bd68}.bt-decompression-price span{font-size:13px;line-height:1.4;color:#d9e1d5}
.bt-decompression-note{border-top:1px solid #607465;margin-top:20px;padding-top:17px;font-size:15px}
.bt-decompression .text-link{display:inline-flex;margin-top:20px;color:#e1bd68}
@keyframes tp-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.training\\/board-and-train-page .tp-tier:nth-child(2){border-color:#c79d43;box-shadow:0 8px 22px rgba(75,58,19,.13)}
.training\\/board-and-train-page .tp-tier:nth-child(2) summary{background:#e1bc65;color:#173c2e}
.training\\/board-and-train-page .tp-tier:nth-child(2) .tp-tier-name,.training\\/board-and-train-page .tp-tier:nth-child(2) .tp-tier-price{color:#173c2e}
.training\\/board-and-train-page .tp-tier:nth-child(2) .tp-tier-lead,.training\\/board-and-train-page .tp-tier:nth-child(2) .tp-tier-price span{color:#385541}
.training\\/board-and-train-page .tp-tier:nth-child(2) .tp-plus::before{color:#173c2e}
.training\\/board-and-train-page .tp-tier:nth-child(2)[open] summary{background:#e1bc65}
.training\\/board-and-train-page .tp-tier:nth-child(2)[open] .tp-plus::before{color:#173c2e}
.training\\/board-and-train-page .tp-tier-advanced{border-color:#728074;transform:scale(.985);transform-origin:top center;opacity:.94}
.training\\/board-and-train-page .tp-tier-advanced summary{min-height:80px;padding-top:16px;padding-bottom:16px;background:#173c2e;color:#f2eddf}
.training\\/board-and-train-page .tp-tier-advanced .tp-tier-name{font-size:21px;color:#f2eddf}
.training\\/board-and-train-page .tp-tier-advanced .tp-tier-lead{font-size:12px;color:#cbd8ca;margin-top:4px}
.training\\/board-and-train-page .tp-tier-advanced .tp-tier-price{font-size:20px;color:#f2eddf}
.training\\/board-and-train-page .tp-tier-advanced .tp-tier-price span{color:#cbd8ca}
.training\\/board-and-train-page .tp-tier-advanced .tp-plus::before{color:#dcc17c;font-size:11px}
.training\\/private-page .tp-tier:nth-child(2){border-color:#c79d43;box-shadow:0 8px 22px rgba(75,58,19,.13)}
.training\\/private-page .tp-tier:nth-child(2) summary{background:#e1bc65;color:#173c2e}
.training\\/private-page .tp-tier:nth-child(2) .tp-tier-name,.training\\/private-page .tp-tier:nth-child(2) .tp-tier-price{color:#173c2e}
.training\\/private-page .tp-tier:nth-child(2) .tp-tier-lead,.training\\/private-page .tp-tier:nth-child(2) .tp-tier-price span{color:#385541}
.training\\/private-page .tp-tier:nth-child(2) .tp-plus::before{color:#173c2e}
@media(max-width:700px){.tp-tier summary{min-height:108px}.tp-tier .tp-plus{min-width:0;padding-top:13px}.tp-tier .tp-plus::before{font-size:11px;white-space:normal;display:inline-block;max-width:none}.tp-tier-summary{font-size:14px!important}.training\\/board-and-train-page .tp-tier-advanced summary{min-height:70px}.training\\/board-and-train-page .tp-tier-advanced .tp-tier-name{font-size:18px}}
@media(max-width:700px){.package-owner-note{font-size:16px;margin:22px 0;padding:16px 17px}.bt-decompression{padding:22px 18px;margin-top:30px}.bt-decompression-heading{grid-template-columns:1fr;gap:14px}.bt-decompression h3{font-size:27px}.bt-decompression-price{text-align:left}.bt-decompression-price strong{display:inline;font-size:27px;margin-right:8px}.bt-decompression-price span{display:inline-block}}
/* Page-specific accents use structural hooks so they remain valid even on older CSS parsers. */
body:has(.tp-tier-advanced) .tp-tier:nth-child(2){border-color:#c79d43;box-shadow:0 8px 22px rgba(75,58,19,.13)}
body:has(.tp-tier-advanced) .tp-tier:nth-child(2) summary{background:#e1bc65;color:#173c2e}
body:has(.tp-tier-advanced) .tp-tier:nth-child(2) .tp-tier-name,body:has(.tp-tier-advanced) .tp-tier:nth-child(2) .tp-tier-price{color:#173c2e}
body:has(.tp-tier-advanced) .tp-tier:nth-child(2) .tp-tier-lead,body:has(.tp-tier-advanced) .tp-tier:nth-child(2) .tp-tier-price span{color:#385541}
body:has(.tp-tier-advanced) .tp-tier:nth-child(2) .tp-plus::before{color:#173c2e}
body:has(.tp-tier-advanced) .tp-tier-advanced{border-color:#728074;transform:scale(.985);transform-origin:top center;opacity:.94}
body:has(.tp-tier-advanced) .tp-tier-advanced summary{min-height:80px;padding-top:16px;padding-bottom:16px;background:#173c2e;color:#f2eddf}
body:has(.tp-tier-advanced) .tp-tier-advanced .tp-tier-name{font-size:21px;color:#f2eddf}
body:has(.tp-tier-advanced) .tp-tier-advanced .tp-tier-lead{font-size:12px;color:#cbd8ca;margin-top:4px}
body:has(.tp-tier-advanced) .tp-tier-advanced .tp-tier-price{font-size:20px;color:#f2eddf}
body:has(.tp-tier-advanced) .tp-tier-advanced .tp-tier-price span{color:#cbd8ca}
body:has(.tp-tier-advanced) .tp-tier-advanced .tp-plus::before{color:#dcc17c;font-size:11px}
body:has(.training-logistics) .tp-tier:nth-child(2){border-color:#c79d43;box-shadow:0 8px 22px rgba(75,58,19,.13)}
body:has(.training-logistics) .tp-tier:nth-child(2) summary{background:#e1bc65;color:#173c2e}
body:has(.training-logistics) .tp-tier:nth-child(2) .tp-tier-name,body:has(.training-logistics) .tp-tier:nth-child(2) .tp-tier-price{color:#173c2e}
body:has(.training-logistics) .tp-tier:nth-child(2) .tp-tier-lead,body:has(.training-logistics) .tp-tier:nth-child(2) .tp-tier-price span{color:#385541}
body:has(.training-logistics) .tp-tier:nth-child(2) .tp-plus::before{color:#173c2e}
body:has(.tp-tier-advanced) .package-section .tp-tier:nth-child(2) .tp-tier-summary,body:has(.training-logistics) .package-section .tp-tier:nth-child(2) .tp-tier-summary{color:#385541}

/* Specialized reactive programs use a restrained brick-red signal within the existing brand palette. */
.reactive-jump{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 28px;padding:13px 18px;border:1px solid #a85c50;border-radius:999px;background:#173c2e;color:#f5eee0;text-decoration:none;font-size:14px;line-height:1.35}
.reactive-jump span:first-child{font-weight:700;color:#e1bd68}.reactive-jump span:last-child{font-size:18px;color:#d27a68}
.reactive-program{margin:42px 0 8px;padding:30px;border:2px solid #a85c50;border-radius:18px;background:#0e2b22;color:#f7f3e8;scroll-margin-top:24px}
.reactive-program>.eyebrow{color:#d27a68;margin-bottom:12px}.reactive-program h2{font:400 clamp(31px,4vw,46px)/1.08 var(--serif);margin:0 0 14px;color:#f7f3e8}.reactive-program-intro{max-width:760px;color:#d9e1d5;line-height:1.6;margin:0 0 24px}
.reactive-program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.reactive-program-card{padding:22px;border:1px solid #b46c60;border-radius:14px;background:#173c2e}.reactive-program-card-single{max-width:900px}.reactive-program-label{color:#e1bd68;font-size:12px;font-weight:700;letter-spacing:.12em;margin:0 0 10px}.reactive-program-card h3{font:28px/1.15 var(--serif);color:#f7f3e8;margin:0 0 8px}.reactive-program-price{font-size:23px;font-weight:700;color:#f0d28a;margin:0}.reactive-program-price span{font-size:12px;font-weight:400;color:#cbd8ca}.reactive-program-card>p:not(.reactive-program-label):not(.reactive-program-price){color:#d9e1d5;line-height:1.55;margin:18px 0 12px}.reactive-program-card ul{margin:0;padding-left:20px;color:#e5e9df;line-height:1.6}.reactive-program-card li{margin-bottom:7px}
.tp-reactive-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px 22px;margin-top:22px;padding:22px 24px;border:2px solid #a85c50;border-radius:16px;background:#102e24;color:#f7f3e8;text-decoration:none;transition:transform .2s,border-color .2s}.tp-reactive-card:hover{transform:translateY(-2px);border-color:#d27a68}.tp-reactive-kicker{grid-row:span 2;color:#d27a68;font-size:12px;font-weight:700;letter-spacing:.12em}.tp-reactive-title{font:27px/1.15 var(--serif)}.tp-reactive-copy{color:#d9e1d5;line-height:1.45}.tp-reactive-link{grid-column:3;grid-row:1 / span 2;color:#e1bd68;font-weight:700;white-space:nowrap}
@media(max-width:700px){.reactive-jump{border-radius:14px;align-items:flex-start;font-size:13px;flex-wrap:wrap}.reactive-jump span:last-child{margin-left:auto}.reactive-program{padding:22px 18px;margin-top:32px}.reactive-program-grid{grid-template-columns:1fr}.reactive-program-card{padding:18px}.reactive-program-card h3{font-size:25px}.tp-reactive-card{grid-template-columns:1fr;gap:8px;padding:20px}.tp-reactive-kicker{grid-row:auto}.tp-reactive-link{grid-column:auto;grid-row:auto;margin-top:7px}}
.reactive-program-details{padding:0}.reactive-program-details>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:24px 26px;cursor:pointer}.reactive-program-details>summary::-webkit-details-marker{display:none}.reactive-program-details>summary strong{display:block;font:28px/1.15 var(--serif);color:#f7f3e8}.reactive-program-details>summary em{display:block;margin-top:8px;font-style:normal;color:#d9e1d5;line-height:1.45}.reactive-program-details .reactive-program-label{display:block}.reactive-program-details>summary .reactive-program-price{margin:0;white-space:nowrap}.reactive-program-details>summary .reactive-program-price small{font-size:12px;font-weight:400;color:#cbd8ca}.reactive-program-toggle{font-size:28px;color:#d27a68;transition:transform .2s}.reactive-program-details[open] .reactive-program-toggle{transform:rotate(45deg)}.reactive-program-body{padding:0 26px 26px}.reactive-week-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.reactive-week-grid>div{padding:16px;border:1px solid #607465;border-radius:10px;background:#173c2e}.reactive-week-grid b{display:block;color:#e1bd68;font-size:14px;line-height:1.35}.reactive-week-grid p{margin:8px 0 0;color:#d9e1d5;font-size:15px;line-height:1.5}.reactive-program-note{margin:18px 0 0;padding-top:16px;border-top:1px solid #607465;color:#d9e1d5;font-size:14px;line-height:1.5}.bt-decompression-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin:14px 0;padding:18px 22px}.bt-decompression-inline .eyebrow{margin-bottom:6px}.bt-decompression-inline h3{font-size:23px;margin-bottom:5px}.bt-decompression-inline p{font-size:14px;line-height:1.45}.bt-decompression-inline .bt-decompression-price strong{font-size:27px}
@media(max-width:700px){.reactive-program-details>summary{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:20px 18px}.reactive-program-details>summary strong{font-size:24px}.reactive-program-details>summary .reactive-program-price{grid-column:1}.reactive-program-details>summary .reactive-program-toggle{grid-column:2;grid-row:1}.reactive-program-body{padding:0 18px 20px}.reactive-week-grid{grid-template-columns:1fr}.bt-decompression-inline{grid-template-columns:1fr;gap:10px;padding:18px}.bt-decompression-inline .bt-decompression-price{text-align:left}.bt-decompression-inline .bt-decompression-price strong{display:inline;margin-right:7px}}

/* Dedicated reactive-programs page */
.reactive-page-hero{background:#102e24}.reactive-red-label{color:#d27a68!important}.reactive-page-section{padding:58px 0 82px;background:#f7f4eb;color:#173c2e}.reactive-page-section h2{font:400 clamp(36px,5vw,58px)/1.05 var(--serif);margin:10px 0 16px;color:#173c2e}.reactive-page-intro{max-width:760px;color:#536357;font-size:18px;line-height:1.65;margin:0 0 30px}.reactive-directory{border-top-color:#a85c50}.reactive-directory .directory-links a[aria-current]{background:#a85c50;color:#fff8ec;border-color:#d27a68}.reactive-directory .directory-links a[aria-current] .directory-arrow{stroke:#fff8ec}.reactive-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.reactive-choice{padding:26px 24px;border:2px solid #a85c50;border-radius:18px;background:#102e24;color:#f7f3e8}.reactive-choice .reactive-program-label{color:#d27a68;margin-bottom:10px}.reactive-choice-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}.reactive-choice h3{font:29px/1.12 var(--serif);margin:0;color:#f7f3e8}.reactive-choice-head strong{font-size:24px;white-space:nowrap;color:#f0d28a}.reactive-choice-head small{display:block;text-align:right;font-size:11px;font-weight:400;color:#cbd8ca}.reactive-choice>p:not(.reactive-program-label){color:#d9e1d5;line-height:1.55;margin:18px 0}.reactive-choice ul{padding-left:20px;color:#e5e9df;line-height:1.55;margin:0}.reactive-choice li{margin-bottom:9px}.reactive-choice-link{display:flex;justify-content:space-between;gap:14px;margin-top:20px;padding-top:16px;border-top:1px solid #607465;color:#e1bd68;font-weight:700;text-decoration:none}.reactive-page-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding:22px 24px;border:1px solid #d8cfae;border-radius:16px;background:#fffdf7}.reactive-page-cta p{margin:0;color:#536357;line-height:1.5}.reactive-page-cta .button{flex-shrink:0}
@media(max-width:700px){.reactive-page-section{padding:42px 0 58px}.reactive-page-intro{font-size:16px}.reactive-choice-grid{grid-template-columns:1fr;gap:14px}.reactive-choice{padding:21px 18px}.reactive-choice h3{font-size:25px}.reactive-choice-head{gap:10px}.reactive-choice-head strong{font-size:21px}.reactive-page-cta{display:block;padding:19px}.reactive-page-cta .button{width:100%;justify-content:center;margin-top:16px}}

/* Version A package hierarchy: gold durations, aligned pricing, and one featured outline. */
.package-section .tp-tier-name .tp-tier-duration{color:#e1bd68;font-weight:700}
.package-section .tp-tier .tp-plus::before{content:"Expand program details  ＋"}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2){border:2px solid #e1bd68;box-shadow:0 8px 22px rgba(75,58,19,.13)}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2) summary,.training\/board-and-train-page .package-section .tp-tier:nth-child(2)[open] summary{background:#173c2e;color:#f7f3e8}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-tier-name,.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-tier-price{color:#fff7e5}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-tier-lead,.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-tier-price span{color:#d9e1d3}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-tier-summary{color:#d9e1d5!important}
.training\/board-and-train-page .package-section .tp-tier:nth-child(2) .tp-plus::before,.training\/board-and-train-page .package-section .tp-tier:nth-child(2)[open] .tp-plus::before{color:#e1bd68}
.private-rate-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 26px}.private-rate-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #6d816e;border-radius:12px;background:#173c2e}.private-rate-summary span{color:#d9e1d5;font-size:.95rem}.private-rate-summary strong{color:#e1bd68;font-size:1.2rem;white-space:nowrap}
@media(max-width:700px){.private-rate-summary{grid-template-columns:1fr;gap:9px}.private-rate-summary>div{padding:14px 16px}}

/* Keep practical package details legible against the dark program sections. */
.package-section .package-footnote{color:#f7f3e8}
.training\/private-page .package-section .tp-tier .tp-plus::before{color:#e1bd68}

/* Puppy visitors see the program and price before the longer training directory. */
.puppy-page-hero{padding:34px 0 30px}
.puppy-page-hero .eyebrow{margin-bottom:12px}
.puppy-page-hero .intro-description{margin-top:14px}
.puppy-page-hero .puppy-hero-note{margin:12px 0 0}
.puppy-program-top{padding:30px 0 46px}
.puppy-program-top .section-heading{margin-bottom:22px;gap:24px}
.puppy-program-top .training-card .card-topline{margin-bottom:12px}
.puppy-program-top .training-card .package-price{margin-top:10px}
.puppy-program-top .training-card ul{margin:16px 0 0}
@media(max-width:700px){
  .puppy-page-hero{padding:28px 0 24px}
  .puppy-page-hero h1{font-size:clamp(2.35rem,9vw,3rem)}
  .puppy-page-hero .intro-description{line-height:1.4}
  .puppy-program-top{padding:22px 0 42px}
  .puppy-program-top .section-heading{margin-bottom:17px;gap:14px}
  .puppy-program-top .section-heading h2{font-size:clamp(2rem,8vw,2.5rem)}
}
