.service-page{padding-bottom:0}.service-page .sp-wrap{width:min(88%,1280px);margin-inline:auto}.service-page .sp-hero{background:var(--paper);padding:70px 0 55px}.service-page .sp-hero-grid{grid-template-columns:.94fr 1.06fr;align-items:center;gap:7%;display:grid}.service-page .sp-hero-copy h1{margin:17px 0 25px;font-size:clamp(3.4rem,5.4vw,5.8rem);line-height:1.04}.service-page h1 em,.service-page h2 em{color:var(--accent)}.service-page .sp-hero-copy>p:not(.eyebrow){max-width:590px;color:var(--muted);font-size:17px;line-height:1.78}.service-page .sp-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px;display:flex}.service-page .sp-hero-art{min-height:570px;padding:18px 22px 0 36px;position:relative}.service-page .sp-photo-ring{border:1px solid #9bb5a6;border-radius:48% 48% 5px 5px;position:absolute;inset:0 0 14px 12px}.service-page-page .sp-photo-ring{pointer-events:none}.service-page .sp-hero-art>img{object-fit:cover;object-position:center;border-radius:48% 48% 5px 5px;width:calc(100% - 58px);height:calc(100% - 18px);position:absolute;inset:18px 22px 0 36px}.service-page .sp-badge{aspect-ratio:1;background:var(--contrast);outline-offset:-10px;width:145px;color:var(--ink);text-align:center;border-radius:50%;outline:1px dashed #816c45;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex;position:absolute;top:30px;right:-18px;transform:rotate(5deg);box-shadow:0 7px 22px #183f4320}.service-page .sp-badge>span{letter-spacing:.08em;font-size:11px;font-weight:800;line-height:1.3}.service-page .sp-badge small{letter-spacing:.1em;font-size:8px;font-weight:750}.service-page .sp-photo-note{min-width:330px;color:var(--ink);background:#eee4cf;justify-content:space-between;align-items:center;gap:30px;padding:17px 22px;font:italic 21px/1.2 Georgia,serif;display:flex;position:absolute;bottom:28px;left:0;transform:rotate(-3deg);box-shadow:0 9px 22px #173f4312}.service-page .sp-wave{color:#dce7dc;height:48px;margin-top:2px}.service-page .sp-wave svg{width:100%;height:100%;display:block}.service-page .sp-highlights{background:#dce7dc;padding:22px 0 32px}.service-page .sp-highlights>div{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.service-page .sp-highlights span{letter-spacing:.03em;text-align:center;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.service-page .sp-highlights svg{color:var(--accent);flex:none}.service-page .sp-details{grid-template-columns:.9fr 1.1fr;align-items:center;gap:9%;padding:110px 0;display:grid}.service-page .sp-details-photo{border:1px solid var(--contrast);padding:13px;position:relative;transform:rotate(-2deg)}.service-page .sp-details-photo img{object-fit:cover;width:100%;height:530px;display:block}.service-page .sp-details-photo>span{background:var(--contrast);letter-spacing:.1em;align-items:center;gap:13px;padding:15px 20px;font-size:11px;font-weight:750;display:flex;position:absolute;bottom:30px;left:-20px;transform:rotate(2deg)}.service-page .sp-details-copy h2,.service-page .sp-section-heading h2,.service-page .sp-faq h2,.service-page .sp-contact h2{margin:17px 0 24px;font-size:clamp(2.7rem,4vw,4.3rem);line-height:1.08}.service-page .sp-details-copy>p:not(.d-kicker){color:var(--muted);font-size:17px;line-height:1.82}.service-page .sp-details-copy ul{grid-template-columns:1fr 1fr;gap:0 25px;margin:25px 0 30px;padding:0;list-style:none;display:grid}.service-page .sp-details-copy li{border-bottom:1px solid #183f4326;align-items:flex-start;gap:11px;padding:13px 0;font-size:15px;font-weight:600;display:flex}.service-page .sp-details-copy li svg{color:var(--accent);flex:none;margin-top:2px}.service-page .sp-options{background:#eee4cf;padding:90px 0 100px}.service-page .sp-section-heading{text-align:center;margin-bottom:40px}.service-page .sp-section-heading .d-kicker{justify-content:center}.service-page .sp-options-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.service-page .sp-options-grid>a{background:var(--paper);padding-bottom:20px;transition:transform .2s,box-shadow .2s}.service-page .sp-options-grid>a:hover{transform:translateY(-4px);box-shadow:0 12px 26px #183f4319}.service-page .sp-options-grid>a.is-current{box-shadow:inset 0 -5px 0 var(--accent)}.service-page .sp-options-grid img{object-fit:cover;width:100%;height:280px}.service-page .sp-options-grid>a:first-child{border-radius:68px 0 0;overflow:hidden}.service-page .sp-options-grid>a:nth-child(3){border-radius:0 68px 0 0;overflow:hidden}.service-page .sp-options-grid div{padding:20px 19px 0}.service-page .sp-options-grid h3{margin-bottom:13px;font-size:22px;line-height:1.2}.service-page .sp-options-grid span{color:var(--accent);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.service-page .sp-faq{grid-template-columns:.8fr 1.2fr;gap:9%;padding:105px 0;display:grid}.service-page .sp-faq-intro>p:not(.d-kicker){color:var(--muted);font-size:16px;line-height:1.8}.service-page .sp-faq-list{border-top:1px solid #183f4342}.service-page .sp-faq-list details{border-bottom:1px solid #183f4342;padding:0}.service-page .sp-faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:22px;padding:24px 0;font:600 18px/1.4 Georgia,serif;list-style:none;display:flex}.service-page .sp-faq-list summary::-webkit-details-marker{display:none}.service-page .sp-faq-list summary span{font:300 25px/1 sans-serif;transition:transform .2s}.service-page .sp-faq-list details[open] summary span{transform:rotate(45deg)}.service-page .sp-faq-list details p{max-width:660px;color:var(--muted);padding:0 42px 25px 0;font-size:16px;line-height:1.8}.service-page .sp-contact{background:var(--harbor-dark);color:var(--paper);padding:90px 0 100px;position:relative}.service-page .sp-contact:before{content:"";background:repeating-linear-gradient(90deg,var(--harbor-dark) 0 20px,transparent 20px 40px);height:12px;position:absolute;top:-12px;left:0;right:0}.service-page .sp-contact>div{grid-template-columns:.65fr 1.5fr;align-items:center;gap:9%;display:grid}.service-page .sp-contact-seal{aspect-ratio:1;background:var(--contrast);width:min(100%,250px);color:var(--ink);outline-offset:-11px;text-align:center;border-radius:50%;outline:1px dashed #816c45;flex-direction:column;justify-content:center;align-items:center;gap:25px;display:flex;transform:rotate(-5deg)}.service-page .sp-contact-seal span{letter-spacing:.075em;font-size:14px;font-weight:800;line-height:1.55}.service-page .sp-contact h2{color:var(--paper)}.service-page .sp-contact h2 em{color:var(--contrast)}.service-page .sp-contact>div>div:last-child>p:not(.d-kicker){max-width:680px;margin-bottom:28px;font-size:17px;line-height:1.8}.service-page .sp-contact .button{background:var(--contrast);color:var(--ink)}.service-page .h-footer-top,.service-page .h-footer-bottom{width:min(88%,1280px)}.combined .c-nav-dropdown{position:relative}.combined .c-nav-dropdown summary{cursor:pointer;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:7px;padding:8px 0;list-style:none;display:flex}.combined .c-nav-dropdown summary::-webkit-details-marker{display:none}.combined .c-nav-dropdown summary svg{transition:transform .2s}.combined .c-nav-dropdown[open] summary svg{transform:rotate(180deg)}.combined .c-nav-dropdown-menu{z-index:20;background:var(--paper);width:255px;color:var(--ink);border-top:4px solid var(--contrast);padding:9px;position:absolute;top:calc(100% + 13px);left:50%;transform:translate(-50%);box-shadow:0 16px 35px #061f2230}.combined .h-menu nav .c-nav-dropdown-menu a{text-transform:none;letter-spacing:.01em;border:0;padding:11px 12px;font-size:12px;line-height:1.35;display:block}:is(.combined .h-menu nav .c-nav-dropdown-menu a:hover,.combined .h-menu nav .c-nav-dropdown-menu a:focus-visible){color:var(--ink);background:#eee4cf}@media (max-width:900px){.service-page .sp-hero-grid{grid-template-columns:1fr 1fr;gap:4%}.service-page .sp-hero-art{min-height:500px}.service-page .sp-badge{width:125px;right:-5px}.service-page .sp-details{gap:6%}.service-page .sp-options-grid{grid-template-columns:1fr 1fr}.service-page .sp-options-grid img{height:290px}}@media (max-width:760px){.service-page .sp-hero{padding:48px 0 35px}.service-page .sp-hero-grid,.service-page .sp-details,.service-page .sp-faq,.service-page .sp-contact>div{grid-template-columns:1fr}.service-page .sp-hero-copy h1{font-size:clamp(3rem,12vw,4.4rem)}.service-page .sp-hero-art{min-height:430px;margin-top:36px}.service-page .sp-photo-note{min-width:0;max-width:82%;font-size:18px}.service-page .sp-highlights>div{grid-template-columns:1fr;gap:12px}.service-page .sp-highlights span{justify-content:flex-start}.service-page .sp-details{gap:60px;padding:75px 0}.service-page .sp-details-photo img{height:410px}.service-page .sp-options{padding:65px 0 75px}.service-page .sp-faq{gap:35px;padding:75px 0}.service-page .sp-contact{padding:65px 0 75px}.service-page .sp-contact>div{gap:40px}.service-page .sp-contact-seal{gap:13px;width:145px}.service-page .sp-contact-seal span{font-size:9px}}@media (max-width:600px){.service-page .sp-wrap{width:90%}.service-page .sp-hero-art{min-height:370px;padding-left:22px}.service-page .sp-hero-art>img{width:calc(100% - 44px);left:22px}.service-page .sp-photo-ring{left:5px}.service-page .sp-badge{width:105px;top:20px;right:-2px}.service-page .sp-badge>span{font-size:9px}.service-page .sp-badge small{font-size:7px}.service-page .sp-photo-note{gap:14px;padding:13px 15px;bottom:20px;left:-6px}.service-page .sp-details-copy ul{grid-template-columns:1fr}.service-page .sp-options-grid{gap:14px}.service-page .sp-options-grid img{height:210px}.service-page .sp-options-grid div{padding:16px 13px 0}.service-page .sp-options-grid h3{font-size:18px}.combined .c-nav-dropdown-menu{width:220px;top:calc(100% + 7px);left:0;transform:none}}@media (prefers-reduced-motion:reduce){.service-page *{transition:none!important}}.service-page .sp-puppy-reading{background:var(--paper);color:var(--ink);padding:80px 0}.service-page .sp-puppy-reading>.sp-wrap{grid-template-columns:1fr 1fr;align-items:center;gap:8%;display:grid}.service-page .sp-puppy-reading h2{margin:18px 0 22px;font-size:clamp(2.4rem,3.5vw,3.6rem);line-height:1.1}.service-page .sp-puppy-reading p:not(.d-kicker){color:var(--muted);font-size:16px;line-height:1.8}.service-page .sp-reading-links>a{border-bottom:1px solid #183f4330;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;display:flex}.service-page .sp-reading-links>a:first-child{border-top:1px solid #183f4330}.service-page .sp-reading-links small{letter-spacing:.12em;color:var(--accent);margin-bottom:12px;font-size:10px;font-weight:750;display:block}.service-page .sp-reading-links strong{font:24px/1.3 Georgia,serif;display:block}.service-page .sp-reading-links svg{flex-shrink:0}.service-page .sp-reading-links>a:hover strong{text-underline-offset:5px;text-decoration:underline}@media (max-width:760px){.service-page .sp-puppy-reading{padding:55px 0}.service-page .sp-puppy-reading>.sp-wrap{grid-template-columns:1fr;gap:26px}.service-page .sp-puppy-reading h2{text-align:center}.service-page .sp-puppy-reading .d-kicker{text-align:center;justify-content:center}}.service-page .sp-puppy-reading p+p{margin-top:18px}.service-page .sp-reading-cta{margin-top:26px}@media (max-width:760px){.service-page .sp-reading-cta{width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;display:flex}}.service-page .sp-progress{color:var(--ink);background:#dfe8dc;padding:85px 0}.service-page .sp-progress-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:8%;display:grid}.service-page .sp-progress-photo{background:#f9f7ed;border:1px solid #9aaf9d;border-radius:100px 0 0;margin:0;padding:12px}.service-page .sp-progress-photo img{object-fit:cover;object-position:center;border-radius:88px 0 0;width:100%;height:490px;display:block}.service-page .sp-progress-photo figcaption{align-items:center;gap:12px;padding:18px 8px 8px;font:italic 19px/1.4 Georgia,serif;display:flex}.service-page .sp-progress-photo figcaption svg{color:var(--accent);flex-shrink:0}.service-page .sp-progress h2{margin:17px 0 22px;font-size:clamp(2.6rem,4vw,4.1rem);line-height:1.08}.service-page .sp-progress-intro{color:var(--muted);font-size:16px;line-height:1.8}.service-page .sp-progress ul{margin:25px 0 0;padding:0;list-style:none}.service-page .sp-progress li{border-top:1px solid #183f4326;gap:18px;padding:18px 0;display:flex}.service-page .sp-progress-number{color:var(--accent);padding-top:3px;font:italic 23px/1.3 Georgia,serif}.service-page .sp-progress h3{margin:0 0 7px;font-size:23px;line-height:1.2}.service-page .sp-progress li p{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.service-page .sp-progress-note{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.6}@media (max-width:1000px){.service-page .sp-progress-grid{gap:5%}.service-page .sp-progress-photo img{height:430px}}@media (max-width:760px){.service-page .sp-progress{padding:55px 0}.service-page .sp-progress-grid{grid-template-columns:1fr;gap:32px}.service-page .sp-progress-copy{grid-row:1}.service-page .sp-progress h2,.service-page .sp-progress .d-kicker{text-align:center;justify-content:center}.service-page .sp-progress-photo{justify-self:center;width:100%;max-width:480px}.service-page .sp-progress-photo img{aspect-ratio:1.15;object-fit:cover;height:auto;max-height:440px}.service-page .sp-progress-photo figcaption{font-size:18px}}.service-page .sp-progress-landscape img{aspect-ratio:auto;height:auto}.service-page .sp-progress-heading{text-align:center;max-width:760px;margin:0 auto 45px}.service-page .sp-progress-heading .d-kicker{justify-content:center}.service-page .sp-progress-heading .sp-progress-intro{max-width:690px;margin:0 auto}.service-page .sp-progress-copy ul{margin-top:0}@media (max-width:760px){.service-page .sp-progress-heading{margin-bottom:30px}.service-page .sp-progress-copy{grid-row:auto}}.service-page .sp-puppy-details{grid-column:1/-1;margin-top:20px}.service-page .sp-puppy-details h3{margin:0 0 18px;font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.2}.service-page .sp-puppy-details p{color:var(--muted);font-size:16px;line-height:1.8}.service-page .sp-puppy-skills{border-top:1px solid #183f4330;padding-top:38px}.service-page .sp-puppy-skills>p{max-width:700px}.service-page .sp-puppy-skills dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 35px;margin:30px 0 0;display:grid}.service-page .sp-puppy-skills dl>div{border-top:2px solid var(--contrast);padding-top:17px}.service-page .sp-puppy-skills dt{margin-bottom:10px;font:24px/1.25 Georgia,serif}.service-page .sp-puppy-skills dd{color:var(--muted);margin:0;font-size:15px;line-height:1.8}.service-page .sp-puppy-lessons{border-top:1px solid #183f4330;grid-template-columns:.9fr 1.1fr;gap:9%;margin-top:42px;padding-top:38px;display:grid}.service-page .sp-puppy-lessons h3 em{color:var(--accent)}.service-page .sp-puppy-lessons h4{margin:0 0 10px;font-size:21px;line-height:1.3}.service-page .sp-puppy-lessons p{margin:0 0 25px}@media (max-width:1000px){.service-page .sp-puppy-skills dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.service-page .sp-puppy-details{margin-top:0}.service-page .sp-puppy-skills dl,.service-page .sp-puppy-lessons{grid-template-columns:1fr;gap:24px}.service-page .sp-puppy-details h3{text-align:center}.service-page .sp-puppy-lessons .button{width:fit-content;max-width:100%;margin:auto;display:flex}}.service-page .sp-details.sp-details-puppy{row-gap:40px}.service-page .sp-details-puppy .sp-puppy-details{margin-top:0}.service-page .sp-puppy-lesson-photo{border:1px solid var(--contrast);background:var(--paper);border-radius:65px 0 0;margin:28px 0 0;padding:10px;overflow:hidden}.service-page .sp-puppy-lesson-photo img{filter:brightness(1.2)contrast(.97);border-radius:55px 0 0;width:100%;height:auto;display:block}@media (max-width:760px){.service-page .sp-puppy-lesson-photo{max-width:400px;margin:24px auto 8px}}.service-page .sp-puppy-lessons .sp-puppy-step-heading{align-items:flex-start;gap:12px;display:flex}.service-page .sp-puppy-step-heading>svg{color:var(--accent);flex:0 0 22px;margin-top:2px}.service-page .sp-puppy-lessons{row-gap:30px}.service-page .sp-puppy-lessons .sp-puppy-lessons-title{text-align:center;text-wrap:balance;grid-column:1/-1;margin:0;font-size:clamp(1.65rem,2.5vw,2.3rem)}.service-page .sp-puppy-lessons .sp-puppy-lesson-photo{margin-top:0}@media (min-width:1000px){.service-page .sp-puppy-lessons-title{white-space:nowrap}}@media (min-width:761px){.service-page .sp-puppy-lessons{grid-template-columns:1.1fr .9fr}.service-page .sp-puppy-lesson-intro{grid-area:2/2}.service-page .sp-puppy-lessons>div:last-child{grid-area:2/1}}@media (max-width:760px){.service-page main h1,.service-page main h2{text-align:center}.service-page main .d-kicker,.service-page main .eyebrow{text-align:center;justify-content:center}.service-page main .button{text-align:center;justify-content:center;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;display:flex}.service-page .sp-actions{justify-content:center}.service-page .sp-actions .text-link{margin-left:auto;margin-right:auto}.service-page .sp-reading-links>.text-link{width:fit-content;margin-left:auto;margin-right:auto}.service-page .sp-contact-seal{justify-self:center;margin-left:auto;margin-right:auto}}.service-page .sp-obedience-details{grid-column:1/-1}.service-page .sp-obedience-details h3{margin:0 0 18px;font-size:clamp(1.8rem,2.6vw,2.7rem);line-height:1.2}.service-page .sp-obedience-details h3 em{color:var(--accent)}.service-page .sp-obedience-details p{color:var(--muted);font-size:16px;line-height:1.8}.service-page .sp-obedience-details p+p{margin-top:18px}.service-page .sp-obedience-audience,.service-page .sp-obedience-lessons{border-top:1px solid #183f4330;grid-template-columns:.9fr 1.1fr;gap:9%;padding-top:36px;display:grid}.service-page .sp-obedience-skills,.service-page .sp-obedience-lessons{margin-top:42px}.service-page .sp-obedience-skills>p{max-width:700px}.service-page .sp-obedience-skills dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 35px;margin:28px 0 0;display:grid}.service-page .sp-obedience-skills dl>div{border-top:2px solid var(--contrast);padding-top:17px}.service-page .sp-obedience-skills dt{margin-bottom:10px;font:24px/1.25 Georgia,serif}.service-page .sp-obedience-skills dd{color:var(--muted);margin:0;font-size:15px;line-height:1.8}.service-page .sp-obedience-lessons h4{align-items:flex-start;gap:12px;margin:0 0 10px;font-size:21px;line-height:1.3;display:flex}.service-page .sp-obedience-lessons h4 svg{color:var(--accent);flex:0 0 22px;margin-top:2px}.service-page .sp-obedience-lessons p{margin:0 0 25px}@media (max-width:1000px){.service-page .sp-obedience-skills dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.service-page .sp-obedience-audience,.service-page .sp-obedience-lessons,.service-page .sp-obedience-skills dl{grid-template-columns:1fr;gap:24px}.service-page .sp-obedience-details h3{text-align:center}}@media (min-width:761px){.service-page .sp-highlights-four>div{grid-template-columns:repeat(2,minmax(0,1fr))}}.service-page .sp-areas{grid-template-columns:.8fr 1.2fr;align-items:start;gap:8%;padding:85px 0;display:grid}.service-page .sp-areas-intro p:not(.d-kicker){color:var(--muted);margin:18px 0 22px}.service-page .sp-areas-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:28px 24px;display:grid}.service-page .sp-areas-list h3{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #183f4340;margin:0 0 10px;padding-bottom:10px;font-family:inherit;font-size:13px;font-weight:700}.service-page .sp-areas-list a{text-underline-offset:4px;padding:5px 0;font-size:15px;-webkit-text-decoration:underline #183f4340;text-decoration:underline #183f4340;display:block}.service-page .sp-areas-list a:hover{text-decoration-color:currentColor}@media (max-width:760px){.service-page .sp-areas{grid-template-columns:1fr;gap:30px;padding:60px 0}.service-page .sp-areas-list{grid-template-columns:1fr 1fr}}
