@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/font-5.ttf) format('truetype');
}

:root{--sand:#f3e1c9;--cream:#fcf8f1;--teal:#00a6b5;--deep:#075c62;--orange:#cc581d;--ink:#383830}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.wrap,header{max-width:1240px;margin:auto;padding-left:60px;padding-right:60px}header{display:flex;align-items:center;justify-content:space-between;height:115px}.brand{font-family:Georgia,serif;font-size:27px;line-height:1.05;font-weight:bold;color:var(--deep)}.brand span{display:block;letter-spacing:6px;font:11px Arial;margin-top:8px}nav{display:flex;align-items:center;gap:32px;font-size:14px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:16px 24px;border:0;border-radius:5px;background:var(--deep);color:white;font-weight:600;font-size:15px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#08767d;transform:translateY(-2px)}.button span{font-size:21px}.button.small{padding:10px 18px;font-size:14px}.hero{position:relative;display:grid;grid-template-columns:1.08fr 1fr;gap:42px;padding-top:42px;padding-bottom:90px;align-items:center}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:2.1px;color:var(--deep);margin:0 0 24px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.05;letter-spacing:-2px;margin:0 0 28px}h1{font-size:clamp(45px,4.8vw,68px)}em{font-weight:400;color:var(--orange)}h2{font-size:48px}p{margin:0 0 20px}.hero-copy>p:not(.eyebrow){max-width:440px}.intro{font-size:20px;line-height:1.55}.hero-copy>.button{margin-top:10px}.micro{font-size:12px;line-height:1.6;margin-top:12px;color:#64665d}.hero-photos{position:relative;height:590px;padding-left:35px}.main-photo{width:100%;height:550px;object-fit:cover;object-position:center 40%;border-radius:180px 180px 8px 8px}.inset-photo{position:absolute;bottom:-12px;left:-18px;width:175px;height:220px;object-fit:cover;border:7px solid var(--cream);border-radius:90px 90px 5px 5px;transform:rotate(-8deg)}.photo-note{position:absolute;right:-15px;bottom:20px;background:var(--sand);border-radius:50%;width:154px;height:154px;display:flex;flex-direction:column;justify-content:center;text-align:center;font-family:Georgia,serif;font-size:20px;line-height:1.3;transform:rotate(8deg)}.vertical{position:absolute;right:15px;top:185px;writing-mode:vertical-rl;font-size:10px;letter-spacing:3px;color:var(--deep)}.ribbon{display:flex;align-items:center;justify-content:center;gap:54px;background:var(--sand);padding:22px;font-size:14px}.ribbon b{color:var(--orange);font-size:23px;font-weight:400}.experience{padding-top:100px;padding-bottom:95px}.section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:100px}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{padding-top:12px;max-width:400px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.steps article{border-top:1px solid #cec9be;padding-top:25px}.number{font-size:12px;color:var(--orange);letter-spacing:1.4px}h3{font-family:Georgia,serif;font-size:25px;line-height:1.3;font-weight:400;margin:16px 0}.steps p{font-size:15px}.why{background:var(--sand);padding:80px 0}.why-grid{display:grid;grid-template-columns:.9fr 1fr;gap:95px;align-items:center}.why img{width:100%;height:530px;object-fit:cover;object-position:center 38%;border-radius:6px 6px 160px 6px}.welcome{border-left:2px solid var(--orange);padding-left:20px;font-style:italic}.care{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;padding-top:95px;padding-bottom:95px}.lead{font:27px/1.4 Georgia,serif}.care-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.care-tags span{font-size:12px;padding:7px 12px;border:1px solid #c4cbc4;border-radius:30px}.join{background:var(--deep);color:var(--cream);padding:85px 0}.join-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.join h2{font-size:66px}.join em{color:#ffd2a1}.join .eyebrow{color:#a6dee1}.instagram{display:block;font-size:13px;margin-top:35px;text-decoration:underline;text-underline-offset:5px}form{background:var(--cream);color:var(--ink);padding:34px;border-radius:8px}form h3{font-size:28px;margin:15px 0 24px}.draft-label{font-size:10px;letter-spacing:1px;color:#92501e}label{display:block;font-size:14px;margin:15px 0 6px}label span{font-size:12px}input:not([type=checkbox]){width:100%;min-width:0;padding:12px 14px;border:1px solid #c8c5bb;background:white;border-radius:4px;font-size:16px}.consent{display:flex;align-items:flex-start;gap:9px;line-height:1.5;margin:22px 0}.consent input{accent-color:var(--deep);margin-top:4px;flex-shrink:0;width:17px;height:17px}.consent span{font-size:12px}form .button{width:100%}form .micro{margin-bottom:0}#form-result{background:var(--sand);padding:14px;margin-top:15px;font-size:14px}.faq{padding-top:80px;padding-bottom:70px;max-width:1000px}details{border-bottom:1px solid #d9d5ca;padding:20px 0}summary{font:23px Georgia,serif;cursor:pointer}details p{margin:18px 0 0;max-width:700px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px;padding-bottom:35px;border-top:1px solid #d9d5ca}footer p,footer>a:last-child{font-size:13px;margin:0}@media(min-width:1500px){.hero{padding-top:65px;padding-bottom:110px}}@media(max-width:900px){.wrap,header{padding-left:28px;padding-right:28px}nav>a:not(.button){display:none}.hero{gap:20px}.hero-photos{height:500px;padding-left:10px}.main-photo{height:470px}.inset-photo{width:140px;height:175px}.photo-note{width:120px;height:120px;font-size:17px;right:-6px}.vertical{display:none}h1{font-size:48px}h2{font-size:40px}.why-grid,.join-grid,.care{gap:40px}.section-heading{gap:40px}.ribbon{gap:20px}.steps{gap:25px}}@media(max-width:620px){header{height:90px}.brand{font-size:23px}nav .button.small{font-size:12px;padding:9px 12px;gap:10px}.hero{grid-template-columns:1fr;padding-top:25px;padding-bottom:55px;gap:35px}h1{font-size:49px;letter-spacing:-1.8px}.hero-copy>p:not(.eyebrow){max-width:none}.hero-photos{height:490px;margin:0 10px 0 22px}.main-photo{height:460px;object-position:center 43%}.inset-photo{left:-26px;width:150px;height:188px}.photo-note{right:-5px;bottom:10px;width:135px;height:135px}.ribbon{gap:14px;flex-wrap:wrap;font-size:12px;padding:20px}.ribbon b{font-size:17px}.ribbon b:last-of-type{display:none}.experience,.care{padding-top:65px;padding-bottom:60px}.section-heading,.steps,.why-grid,.care,.join-grid{grid-template-columns:1fr;gap:24px}.section-heading .eyebrow{margin-bottom:0}.section-heading h2{margin-bottom:0}.steps{margin-top:28px}.why{padding:50px 0}.why img{height:430px}.why-grid{gap:42px}.care h2{margin-bottom:0}.join{padding:55px 0}.join h2{font-size:57px}form{padding:25px;margin-top:14px}.faq{padding-top:60px;padding-bottom:55px}summary{font-size:20px;line-height:1.4}footer{flex-wrap:wrap}footer p{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Puppy Yoga Playa brand refresh */
body{font-family:'Nunito',sans-serif}header{height:145px}.brand img{display:block;width:132px;height:auto;mix-blend-mode:multiply}.brand{line-height:1}h1,h2,h3,summary,.lead{font-family:'Nunito',sans-serif;font-weight:600;letter-spacing:-1.5px}h1{font-size:clamp(42px,4.5vw,62px);line-height:1.12}h2{line-height:1.12}h3,summary,.lead{letter-spacing:-.5px}h1 em,h2 em,.photo-note{font-family:'Caveat',cursive;font-style:normal;font-weight:600}h1 em{font-size:1.4em;line-height:.9}h2 em{font-size:1.3em}.photo-note{font-size:26px;background:#00a6b5;color:#083e43}.photo-note em{color:#083e43}.button{background:#00a6b5;color:#07373b;border-radius:30px;font-weight:800}.button:hover{background:#10bcc8}.ribbon{background:#00a6b5;color:#07373b;font-weight:700}.ribbon b{color:#07373b}.why{background:#d9f1f0}.join{background:#00a6b5;color:#07373b}.join .eyebrow{color:#07373b}.join em{color:#07373b}.join form{background:#fffaf2}.join form .button{background:#00a6b5;color:#07373b}.care-tags span{background:#d9f1f0;border-color:#9cdcdf}.welcome{border-color:#00a6b5}.draft-label{font-size:12px}.micro,.consent span{font-size:14px}footer .brand img{width:100px}.hero{padding-top:28px}@media(max-width:620px){header{height:120px}.brand img{width:105px}h1{font-size:44px}h2{font-size:37px}.join h2{font-size:53px}.photo-note{font-size:23px}nav .button.small{font-size:12px}.ribbon{font-size:13px}}

.deeper{padding-top:10px;padding-bottom:75px}.deeper h2{max-width:700px}.deeper>p:not(.eyebrow){max-width:650px}.depth-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}.depth-buttons button{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:78px;padding:18px;text-align:left;background:#00a6b5;color:#07373b;border:0;border-radius:8px;font:700 16px/1.4 'Nunito',sans-serif;cursor:pointer}.depth-buttons button:hover{background:#24bac5}.depth-buttons span{font-size:26px;font-weight:400}#story-dialog{width:min(680px,calc(100% - 32px));max-height:85vh;overflow:auto;border:0;border-radius:14px;padding:34px;background:var(--cream);color:var(--ink);box-shadow:0 20px 90px #063e4340}#story-dialog::backdrop{background:#052f38b3}.story-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:28px}.story-top .eyebrow{margin:0}.story-close{border:1px solid #86cfd3;border-radius:30px;background:#d9f1f0;color:#07373b;padding:8px 15px;cursor:pointer;font:700 14px 'Nunito',sans-serif}#story-title{font-size:37px;line-height:1.2}#story-copy p{font-size:17px;line-height:1.75}body:has(#story-dialog[open]){overflow:hidden}@media(max-width:900px){.depth-buttons{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.deeper{padding-bottom:55px}.depth-buttons{gap:10px}.depth-buttons button{padding:15px;font-size:15px}#story-dialog{padding:24px}#story-title{font-size:30px}.story-top .eyebrow{font-size:10px;letter-spacing:1px}}

.moments{padding-top:75px}.moments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.moments figure{margin:0}.moments img{width:100%;height:350px;object-fit:cover;border-radius:8px}.moments figure:nth-child(2){padding-top:40px}.moments figcaption{font-size:15px;margin-top:12px;color:var(--deep)}@media(max-width:620px){.moments{padding-top:55px}.moments-grid{gap:12px;grid-template-columns:1fr 1fr}.moments img{height:260px}.moments figure:nth-child(2){padding-top:25px}.moments figure:last-child{grid-column:1/-1;max-width:75%;margin:5px auto 0}.moments figure:last-child img{height:300px}.moments figcaption{font-size:14px}}

/* Keep the puppies' faces inside the gallery crop. */
.moments figure:nth-child(1) img{object-position:50% 40%}
.moments figure:nth-child(2) img{object-position:50% 10%}
.moments figure:nth-child(3) img{object-position:50% 15%}

/* Center the sleeping puppy in the inset hero photo. */
.inset-photo{object-position:50% 8%}
