:root{--ink:#0D1326;--cream:#F7F3E9;--pink:#FF2D75;--teal:#19C2A4;--orange:#FF8700;--pt:#E2F6F1;--pp:#FCE7EC;--line:#ddd5c7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.55}button,input,textarea{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}h1,h2,h3,.wordmark{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,5.3vw,5rem);line-height:.99;margin:.35em 0}h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.05;margin:0 0 18px}h3{font-size:1.35rem;line-height:1.12;margin:0 0 10px}p{margin:0 0 15px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700}.small{font-size:.84rem}.muted{color:#686c78}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:13px 20px;font-weight:700;font-size:.88rem;background:var(--pink);color:white;transition:.18s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ff2d7530}.btn.dark{background:var(--ink)}.btn.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.btn.full{width:100%}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;line-height:1}.wordmark{font-size:2.05rem}.tagmini{font-size:.65rem;font-weight:700;color:var(--pink);margin-top:5px}.navlinks{display:flex;align-items:center;gap:23px;font-size:.82rem;font-weight:600}.hamb{display:none;background:none;border:0;font-size:1.6rem}.hero{min-height:555px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:28px;padding:42px 0 70px;overflow:hidden}.hero h1 span{color:var(--pink)}.lead{font-size:1.05rem;max-width:540px;margin:22px 0}.byline{font-size:.75rem;color:#686c78;margin-top:20px}.byline strong{color:var(--ink)}.hero-art{height:430px;position:relative}.blob{position:absolute;border-radius:49% 51% 42% 58%}.bp{background:var(--pink);width:250px;height:280px;right:10px;top:-5px;transform:rotate(20deg)}.bo{background:var(--orange);width:240px;height:240px;right:-18px;bottom:20px}.bt{background:var(--teal);width:280px;height:210px;left:5px;bottom:5px}.petphoto{position:absolute;right:3%;bottom:0;width:88%;height:90%;object-fit:cover;object-position:center;border-radius:45% 45% 24px 24px;mix-blend-mode:multiply;mask-image:linear-gradient(#000 82%,transparent)}.orbit{position:absolute;right:6px;bottom:10px;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:var(--cream);border:1px solid var(--ink);font-size:2rem}.dot{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 7px #ff2d7520}.d1{left:15px;top:38px}.d2{right:80px;top:76px;background:var(--teal)}.d3{left:105px;bottom:32px;background:var(--orange)}.section{padding:82px 0}.story{background:var(--ink);color:var(--cream)}.storygrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.story .eyebrow{color:var(--teal)}.story h2 span{color:var(--pink)}.storynote{border-left:3px solid var(--pink);padding-left:20px;font:1.4rem/1.25 Fraunces,Georgia,serif;margin:25px 0}.dotsline{height:50px;margin-top:32px;background-image:radial-gradient(var(--pink) 2px,transparent 2.5px),radial-gradient(var(--teal) 2px,transparent 2.5px),radial-gradient(var(--orange) 2px,transparent 2.5px);background-size:65px 35px,90px 40px,112px 48px;background-position:0 0,20px 10px,38px 3px;background-repeat:repeat-x}.head{max-width:700px;margin-bottom:34px}.head p{max-width:620px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card{background:#fff;border:1px solid #e7e0d4;border-radius:20px;padding:20px;min-height:225px;position:relative;overflow:hidden}.card:nth-child(2n){background:#fffaf4}.art{height:74px;display:flex;align-items:center;font-size:3.2rem;margin-bottom:12px}.certificate{width:70px;height:60px;border:2px solid var(--ink);border-radius:5px;background:var(--cream);transform:rotate(-6deg);box-shadow:7px 5px 0 var(--pink);padding:7px}.certificate:before{content:'';display:block;height:5px;background:var(--teal);margin-bottom:8px}.certificate:after{content:'';display:block;height:3px;width:70%;background:var(--ink);margin:5px auto}.card p{font-size:.86rem}.how{background:var(--pt)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step{border-top:1px solid #99d8cb;padding-top:18px}.num{font:3rem/1 Fraunces,Georgia,serif;color:var(--pink);margin-bottom:14px}.visiongrid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.visionart{min-height:320px;border-radius:48% 52% 44% 56%;background:var(--pp);position:relative;display:grid;place-items:center;overflow:hidden}.circle{position:absolute;border-radius:50%}.c1{width:180px;height:180px;background:var(--teal);left:3%;bottom:-15px}.c2{width:210px;height:210px;background:var(--orange);right:-25px;top:-25px}.c3{width:110px;height:110px;background:var(--pink);left:42%;top:20px}.visionart svg{width:80%;height:150px;z-index:1}.pricing{background:#fffdf8}.billing{display:inline-flex;gap:4px;padding:5px;background:#ece7dd;border-radius:999px;margin:10px 0 28px}.billing button{border:0;background:transparent;padding:10px 15px;border-radius:999px;font-size:.82rem;font-weight:700}.billing button.active{background:var(--ink);color:white}.save{font-size:.7rem;color:#087763}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;align-items:stretch}.plan{background:var(--cream);border:1px solid #e2dacd;border-radius:21px;padding:24px;display:flex;flex-direction:column;position:relative}.plan.best{border:2px solid var(--pink);background:#fff7fa;transform:translateY(-7px);box-shadow:0 14px 36px #0d132610}.popular{position:absolute;right:15px;top:15px;background:var(--pink);color:white;border-radius:999px;padding:5px 9px;font-size:.66rem;font-weight:700}.kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:#686c78}.plan h3{font-size:1.65rem;margin:9px 0}.price{font:2.5rem/1.15 Fraunces,Georgia,serif;letter-spacing:-.04em}.price small{font:500 .78rem Montserrat,Arial,sans-serif;letter-spacing:0}.annualnote{font-size:.74rem;color:#087763;min-height:22px;margin:5px 0 12px}.plandesc{font-size:.84rem;min-height:42px}.pill{background:var(--pt);padding:10px;border-radius:10px;font-size:.76rem;font-weight:700;margin:6px 0 12px}.best .pill{background:var(--pp)}.plan ul{padding-left:18px;font-size:.81rem;flex:1;margin:8px 0 22px}.plan li{padding:5px 0}.faqgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.faq{border-bottom:1px solid var(--line);padding:15px 0}.faq summary{font-weight:700;cursor:pointer}.faq p{font-size:.85rem;margin:10px 0 0}.footer{background:var(--ink);color:var(--cream);padding:42px 0 22px}.footrow{display:flex;justify-content:space-between;gap:25px}.footlinks{display:flex;gap:16px;flex-wrap:wrap;font-size:.8rem}.copyright{border-top:1px solid #3b4051;margin-top:25px;padding-top:17px;color:#c4c5cc;font-size:.73rem;display:flex;justify-content:space-between;gap:15px}
.backdrop{display:none;position:fixed;inset:0;z-index:50;background:#0d1326aa;overflow:auto;padding:20px}.backdrop.open{display:block}.modal{max-width:970px;margin:20px auto;background:var(--cream);border-radius:22px;overflow:hidden;box-shadow:0 25px 100px #0004}.mhead{padding:20px 26px;background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between}.mhead h2{font-size:1.6rem;margin:0}.close{border:0;border-radius:50%;background:#ffffff20;color:white;width:38px;height:38px;font-size:1.3rem}.progress{padding:12px 26px;background:#ede7dc;display:flex;gap:9px;flex-wrap:wrap}.progress span{font-size:.73rem;font-weight:700;color:#777;padding:6px 10px;border-radius:99px}.progress .on{background:var(--teal);color:var(--ink)}.mbody{padding:25px 26px}.pane{display:none}.pane.on{display:block}.summary{background:white;border-radius:13px;padding:15px;display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.summary strong{font:1.3rem Fraunces,Georgia,serif}.counter{background:var(--pt);padding:14px;border-radius:13px;display:flex;justify-content:space-between;align-items:center;margin:15px 0;font-weight:700}.counter b{font:1.6rem Fraunces,Georgia,serif}.themegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.theme{border:1.5px solid #ded6c9;border-radius:15px;background:white;padding:12px;min-height:195px;display:flex;flex-direction:column;gap:7px;cursor:pointer;text-align:left}.theme.selected{border:2px solid var(--pink);background:#fff7fa}.theme.locked{opacity:.5}.themeart{height:58px;border-radius:9px;background:var(--pt);display:grid;place-items:center;font-size:2rem}.theme:nth-child(2) .themeart,.theme:nth-child(5) .themeart{background:var(--pp)}.theme:nth-child(3) .themeart,.theme:nth-child(6) .themeart{background:#fff0d9}.themename{font-weight:700;font-size:.82rem;line-height:1.25}.themedesc{font-size:.7rem;color:#686c78}.qtyrow{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:6px}.qtyrow button{border:1px solid #d5cbbb;background:var(--cream);border-radius:50%;width:28px;height:28px;font-weight:700}.qtyrow button:disabled{opacity:.3}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.err{color:#b42318;font-size:.8rem;font-weight:600;min-height:20px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:.78rem;font-weight:700}.field input,.field textarea{border:1px solid #d4ccbd;background:white;border-radius:9px;padding:11px;min-height:44px;width:100%;color:var(--ink)}.field small{font-size:.7rem;color:#686c78}.subhead{font:1.25rem Fraunces,Georgia,serif;margin:20px 0 12px}.checkoutgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.order{background:white;border:1px solid #e4dccf;border-radius:14px;padding:16px;align-self:start}.order h3{font-size:1.25rem}.orderrow{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eee7dc;font-size:.8rem}.orderrow:last-child{border:0}.notice{font-size:.72rem;color:#686c78;margin:12px 0}.success{text-align:center;padding:38px 18px}.check{margin:0 auto 18px;width:70px;height:70px;border-radius:50%;background:var(--teal);display:grid;place-items:center;font-size:2.4rem}.success h2{font-size:2.3rem}.demo{text-align:center;color:#686c78;font-size:.72rem;margin-top:10px}
@media(max-width:900px){.navlinks{gap:12px}.hero{gap:12px}.hero-art{height:360px}.plans{gap:11px}.plan{padding:19px}.popular{position:static;align-self:flex-start;margin-bottom:5px}.plan.best{transform:none}}@media(max-width:700px){.wrap{width:calc(100% - 30px)}.nav{height:72px}.hamb{display:block}.navlinks{display:none;position:absolute;top:66px;left:15px;right:15px;z-index:20;background:var(--cream);border:1px solid var(--line);border-radius:15px;padding:16px;box-shadow:0 10px 30px #0001;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.hero{grid-template-columns:1fr;padding:32px 0 52px}.hero h1{font-size:3.2rem}.hero-art{height:290px;max-width:480px;width:100%;margin:auto}.section{padding:60px 0}.storygrid,.visiongrid{grid-template-columns:1fr;gap:22px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:14px;min-height:215px}.card p{font-size:.79rem}.steps{grid-template-columns:1fr;gap:22px}.step{display:grid;grid-template-columns:48px 1fr;column-gap:12px}.num{grid-row:span 2;font-size:2.5rem}.visionart{min-height:250px}.plans{grid-template-columns:1fr}.plan.best{order:-1}.plandesc{min-height:0}.faqgrid{grid-template-columns:1fr}.footrow,.copyright{flex-direction:column}.backdrop{padding:7px}.modal{margin:5px auto;border-radius:17px}.mhead{padding:17px}.mhead h2{font-size:1.3rem}.mbody{padding:17px}.progress{padding:11px 17px}.themegrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme{padding:9px;min-height:190px}.checkoutgrid{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.actions{flex-direction:column-reverse}.actions .btn{width:100%}.summary{align-items:flex-start}}@media(max-width:370px){.cards,.themegrid{grid-template-columns:1fr}.hero h1{font-size:2.65rem}}

/* FAQ: use the site's existing pale teal section background and accessible native disclosure controls. */
.faq-section{background:var(--pt);color:var(--ink)}
.faq-section .head{margin-bottom:30px}
.faq-section .eyebrow{color:var(--ink)}
.faq-section .head h2{font-family:Newsreader,Georgia,serif}
.faqgrid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;row-gap:0;align-items:start}
.faq{border-bottom:1px solid rgba(13,19,38,.24);padding:0}
.faq summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:66px;padding:16px 2px;color:var(--ink);font:600 .98rem/1.4 Manrope,Arial,sans-serif;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';flex:0 0 26px;width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(13,19,38,.38);border-radius:50%;font:500 1.15rem/1 Manrope,Arial,sans-serif;transition:transform .18s ease,background-color .18s ease,color .18s ease}
.faq[open] summary::after{content:'−';background:var(--ink);color:var(--cream);border-color:var(--ink)}
.faq summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:4px}
.faq p{max-width:65ch;margin:0;padding:0 42px 19px 2px;color:var(--ink);font:400 .9rem/1.7 Manrope,Arial,sans-serif;animation:faq-reveal .18s ease-out}
@keyframes faq-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.faqgrid{grid-template-columns:1fr;column-gap:0}.faq summary{min-height:62px;font-size:.94rem}.faq p{padding-right:34px}}
@media(prefers-reduced-motion:reduce){.faq summary::after{transition:none}.faq p{animation:none}}

/* Pepperly footer follows the parent site's restrained two-row footer structure. */
.pepperly-footer{padding:2.35rem 0 1.35rem;color:rgba(247,243,233,.76);font-family:Manrope,Arial,sans-serif}
.pepperly-footer__main{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-bottom:1.6rem}
.pepperly-footer__brand{min-width:0}
.pepperly-footer__identity{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}
.pepperly-footer__identity .wordmark{color:var(--cream);font-size:1.8rem;letter-spacing:-.035em}
.pepperly-footer__identity .tagmini{margin:0;color:var(--pink);font:600 .78rem/1.45 Manrope,Arial,sans-serif}
.pepperly-footer__descriptor{margin:8px 0 0;color:rgba(247,243,233,.68);font-size:.78rem;line-height:1.5}
.pepperly-footer__nav,.pepperly-footer__legal{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1.55rem}
.pepperly-footer__nav{justify-content:flex-end;font-size:.82rem;font-weight:600}
.pepperly-footer__legal{font-size:.76rem}
.pepperly-footer__nav a,.pepperly-footer__legal a,.pepperly-footer__meta a{display:inline-flex;align-items:center;min-height:40px;transition:color .18s ease}
.pepperly-footer__secondary{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:1rem;border-top:1px solid rgba(247,243,233,.16)}
.pepperly-footer__meta{display:flex;align-items:center;justify-content:flex-end;gap:1.2rem;text-align:right;font-size:.73rem;color:rgba(247,243,233,.65)}
.pepperly-footer a:hover,.pepperly-footer a:focus-visible{color:var(--pink)}
.pepperly-footer a:focus-visible{outline:2px solid var(--pink);outline-offset:3px;border-radius:2px}
@media(max-width:900px){.pepperly-footer__main{align-items:flex-start;flex-direction:column;gap:1.1rem}.pepperly-footer__nav{justify-content:flex-start}}
@media(max-width:700px){.pepperly-footer{padding:2rem 0 1.2rem}.pepperly-footer__main{padding-bottom:1.1rem}.pepperly-footer__identity{align-items:flex-start;flex-direction:column;gap:.3rem}.pepperly-footer__secondary{align-items:flex-start;flex-direction:column;gap:.45rem}.pepperly-footer__meta{align-items:flex-start;justify-content:flex-start;flex-wrap:wrap;gap:.1rem 1rem;text-align:left}.pepperly-footer__nav,.pepperly-footer__legal{gap:.25rem 1.15rem}}

/* Updated theme selector + checkout: clean editorial layout inspired by supplied references */
.modal-backdrop{padding:0;background:rgba(13,19,38,.72)}
.modal{width:100%;max-width:none;min-height:100vh;margin:0;border-radius:0;background:var(--cream);box-shadow:none}
.modal-head{padding:18px max(22px,calc((100vw - 1120px)/2));background:var(--cream);color:var(--ink);border-bottom:1px solid #e2ddd4}
.modal-head .eyebrow{color:var(--pink)!important}
.modal-head h2{font-size:1.25rem}
.close{background:transparent;color:var(--ink);border:1px solid #d9d2c6}
.flowbar{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:10px max(22px,calc((100vw - 1120px)/2)) 15px;background:var(--cream);border-bottom:1px solid #e2ddd4}
.flowstep{padding:9px 0 0;border-top:4px solid #dedbd5;border-radius:0;text-transform:uppercase;letter-spacing:.06em;font-size:.68rem}
.flowstep.active{background:transparent;color:var(--ink);border-color:var(--pink)}
.modal-body{width:min(1120px,calc(100% - 44px));margin:0 auto;padding:36px 0 48px}
#paneThemes>p{max-width:720px}
.plan-summary{background:white;border:1px solid #e2e2e5;border-radius:20px;padding:19px 23px}
.counterline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;background:white;border:1px solid #e2e2e5;border-radius:20px;padding:18px 22px;margin:22px 0 28px}
.counterline .remaining{color:var(--pink);font-size:1.8rem}
.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.theme{min-height:142px;display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:5px;align-content:start;background:white;border:1.5px solid #e2e2e5;border-radius:19px;padding:19px;transition:border-color .15s,background .15s}
.theme:hover{border-color:var(--teal);transform:translateY(-1px)}
.theme.selected{border:2px solid var(--pink);background:#fff7fa;padding:18.5px}
.theme.locked{opacity:.48;transform:none}
.theme-art{grid-column:1;grid-row:1/span 2;width:44px;height:44px;border-radius:50%;background:var(--pink);color:white;display:grid;place-items:center;font-size:1.35rem}
.theme:nth-child(2) .theme-art,.theme:nth-child(5) .theme-art{background:var(--teal);color:var(--ink)}
.theme:nth-child(3) .theme-art,.theme:nth-child(6) .theme-art{background:var(--orange);color:var(--ink)}
.theme-title{grid-column:2;grid-row:1;font-size:.92rem;align-self:center;line-height:1.3}
.theme-desc{grid-column:2;grid-row:2;font-size:.77rem;line-height:1.45}
.theme-qty{grid-column:2;display:flex;align-items:center;justify-content:flex-start;margin-top:12px;gap:12px}
.theme-qty>span{font-size:.73rem;color:var(--muted);margin-right:auto}
.qty{gap:10px}
.qty button{width:39px;height:39px;border-radius:10px;background:white;border:1px solid #d5d5da;font-size:1rem}
.checkout-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.85fr);gap:34px;align-items:start}
.orderbox{background:var(--ink);color:var(--cream);border:0;border-radius:22px;padding:26px;position:sticky;top:18px}
.orderbox h3{font-size:1.4rem}
.orderbox .order-row{border-color:#ffffff24;padding:11px 0}
.orderbox .order-row strong{color:white}
.orderbox .disclosure,.orderbox .muted{color:#c6c7d0}
.orderbox .order-row:last-of-type strong{font-family:Fraunces,Georgia,serif;font-size:1.8rem}
.form-grid{gap:15px}
.field{gap:7px}
.field input,.field textarea,.field select{background:var(--cream);border-radius:12px;min-height:47px;padding:13px}
.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--teal);border-color:var(--teal)}
#paneDetails .plan-summary{margin-bottom:24px}
#paneDetails .form-section-title{margin-top:20px}
#paneDetails .form-grid{background:white;border:1px solid #e2e2e5;border-radius:20px;padding:22px}
#brandingFields .form-grid{border-top-left-radius:0;border-top-right-radius:0}
#brandingFields .form-section-title{background:white;border:1px solid #e2e2e5;border-bottom:0;border-radius:20px 20px 0 0;padding:22px 22px 0;margin:18px 0 0}
#brandingFields .form-grid{margin-top:0}
#paneReview .checkout-layout{align-items:start}
#paneReview .orderbox{position:sticky}
@media(max-width:700px){
 .modal-head{padding:16px 15px}
 .flowbar{padding:9px 15px 13px}
 .modal-body{width:calc(100% - 30px);padding:24px 0 34px}
 .counterline{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px;gap:12px}
 .theme-grid{grid-template-columns:1fr}
 .theme{min-height:128px;padding:16px}
 .theme.selected{padding:15.5px}
 .checkout-layout{grid-template-columns:1fr;gap:18px}
 .orderbox{position:static}
 #paneDetails .form-grid{padding:17px}
 #brandingFields .form-section-title{padding:17px 17px 0}
}
@media(max-width:390px){.theme{grid-template-columns:38px minmax(0,1fr);column-gap:10px;padding:13px}.theme.selected{padding:12.5px}.theme-art{width:38px;height:38px}}

/* Certificate theme allocation step */
#pane1 .theme-instruction{max-width:760px;margin:0 0 16px;font-size:.95rem}
.modal .mhead{background:var(--cream);color:var(--ink);padding:16px 30px;border-bottom:1px solid var(--line)}
.modal .mhead h2{font-size:1.55rem;line-height:1.1}
.modal .mhead .eyebrow{color:var(--teal)!important}
.modal .mhead .close{color:var(--ink);background:transparent;border:1px solid #d8d0c2}
.modal .progress{padding:10px 30px;background:var(--cream);border-bottom:1px solid #e9e2d7;display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.modal .progress span{display:flex;align-items:center;gap:7px;background:transparent;color:#687080;padding:4px 7px;white-space:nowrap}
.modal .progress span b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#eee8dc;color:#687080;font:700 .72rem Montserrat,Arial,sans-serif}
.modal .progress span.on{background:transparent;color:var(--teal)}
.modal .progress span.on b{background:var(--teal);color:#fff}
.modal .progress span:not(:last-child)::after{content:"";width:24px;border-top:1px solid #d6cdbd;margin-left:4px}
.modal .progress{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.workflow-plan-summary .selected-price{position:relative;min-width:130px;padding-top:23px;text-align:right}
.workflow-plan-summary .selected-price .price{font-size:1.8rem;line-height:1.15}
.workflow-plan-summary .selected-price-art{position:absolute;top:14px;right:234px;width:54px;height:44px;color:#e9d9bd;display:block;transform:rotate(22deg)}
.workflow-plan-summary .selected-price-art svg{width:100%;height:100%;fill:currentColor;stroke:none;opacity:.58}
.workflow-plan-summary .selected-price-accent-pink,.workflow-plan-summary .selected-price-accent-pink-alt{position:absolute;display:block;width:3px;height:15px;border-radius:4px;top:-4px;right:17px;background:var(--pink);transform:rotate(22deg)}
.workflow-plan-summary .selected-price-accent-pink-alt{height:11px;top:3px;right:5px;transform:rotate(55deg)}
.workflow-plan-summary{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0 0 24px;padding:0 0 18px;align-items:center}
.workflow-plan-summary #sdesc{margin-top:4px}
#pane1 .selected-plan-allowance{margin-top:4px;color:#555b6a;font-size:.76rem;font-weight:600}
#pane1 .allocation-summary{background:transparent;border-radius:0;padding:5px 0 0;margin:0 0 18px}
#pane1 .allocation-metrics{display:grid;grid-template-columns:1fr 1fr 1.2fr .9fr;gap:12px}
#pane1 .allocation-metrics>div{min-width:0;padding:0 12px;border-right:1px solid #e2dbcf}
#pane1 .allocation-metrics>div:first-child{padding-left:0}
#pane1 .allocation-metrics>div:last-child{border:0;padding-right:0}
#pane1 .allocation-metric{display:flex;align-items:center;gap:9px}
#pane1 .metric-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border:0;border-radius:0;background:transparent;color:#667080}
#pane1 .metric-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#pane1 .remaining-metric .metric-icon{color:var(--orange)}
#pane1 .themes-metric .metric-icon{color:#667080}
#pane1 .metric-copy{min-width:0}
#pane1 .metric-copy>span{display:block;color:#626879;text-transform:uppercase;letter-spacing:.07em;font-size:.6rem;font-weight:700}
#pane1 .metric-copy strong{display:flex;align-items:baseline;gap:5px;font:1.2rem/1.2 Fraunces,Georgia,serif;color:var(--ink)}
#pane1 .metric-copy small{font:500 .64rem Montserrat,Arial,sans-serif;letter-spacing:0}
#pane1 .remaining-metric .metric-copy>span{color:var(--teal)}
#pane1 .remaining-metric .metric-copy strong{font-size:1.7rem;color:var(--teal)}
#pane1 .allocation-track{height:4px;background:#e9e2d7;border-radius:99px;overflow:hidden;margin-top:11px}
#pane1 .allocation-track span{display:block;width:0;height:100%;background:var(--teal);border-radius:inherit;transition:width .16s ease}
#pane1 .themegrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#pane1 .theme{min-height:166px;display:grid;grid-template-columns:108px minmax(0,1fr);grid-template-rows:1fr;align-items:center;gap:14px;padding:14px;border:1px solid #e5ded2;border-radius:18px;background:#fffdfa;cursor:default;transition:border-color .15s,background .15s}
#pane1 .theme:hover{transform:none;border-color:#b8d9d1}
#pane1 .theme.selected,#pane1 .theme.selected:hover{padding:13px;border:2px solid var(--pink);background:#fff0f5}
#pane1 .theme.selected .themeart{background:#ffe1eb}
#pane1 .theme.selected .quantity-control{border-color:#ff9cbb;background:#fff8fa}
#pane1 .theme.locked{opacity:1}
#pane1 .themeart{width:108px;height:108px;padding:5px;border-radius:13px;background:#f5f1e8;display:grid;place-items:center}
#pane1 .theme:nth-child(2) .themeart,#pane1 .theme:nth-child(5) .themeart{background:#e9f7f3}
#pane1 .theme:nth-child(3) .themeart,#pane1 .theme:nth-child(6) .themeart{background:#fff2df}
#pane1 .themeart img{width:100%;height:100%;display:block;object-fit:contain;image-rendering:auto}
#pane1 .themecontent{min-width:0;display:flex;flex-direction:column;align-self:stretch;justify-content:center;gap:5px}
#pane1 .themecontent{justify-content:flex-start}
#pane1 .themename{margin:0;font:600 1rem/1.2 Fraunces,Georgia,serif;letter-spacing:-.025em}
#pane1 .themedesc{font-size:.75rem;line-height:1.4;color:#555b6a;min-height:2.1em;margin:0}
#pane1 .qtyrow{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:.7rem;font-weight:600}
#pane1 .qtyrow label{white-space:nowrap}
#pane1 .quantity-control{display:flex;align-items:center;gap:3px;flex:0 0 auto;padding:3px 4px;border:1px solid #d8d0c2;border-radius:999px;background:var(--cream)}
#pane1 .quantity-control button{width:31px;height:31px;border:0;background:transparent;border-radius:50%;font-size:1rem;line-height:1;color:var(--ink)}
#pane1 .quantity-control button:disabled{opacity:.45;cursor:not-allowed}
#pane1 .quantity-control input{appearance:textfield;width:46px;height:32px;border:1px solid #d8d0c2;border-radius:5px;background:white;color:var(--ink);text-align:center;font-weight:700;padding:2px;font-variant-numeric:tabular-nums}
#pane1 .quantity-control input::-webkit-inner-spin-button,#pane1 .quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
#pane1 .quantity-control input:focus-visible,#pane1 .quantity-control button:focus-visible{outline:3px solid #19c2a466;outline-offset:2px}
#pane1 .err{margin-top:10px;min-height:0}
#pane1 .err:empty{display:none}
@media(max-width:1020px){#pane1 .themegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.modal .progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:9px 12px}.modal .progress span{justify-content:center;padding:5px 3px;gap:5px;font-size:.64rem}.modal .progress span b{width:24px;height:24px;font-size:.67rem}.modal .progress span:not(:last-child)::after{display:none}.workflow-plan-summary .selected-price{min-width:118px;padding-top:30px}.workflow-plan-summary .selected-price-art{top:0;right:calc(100% + 7px);width:42px;height:36px;transform:rotate(22deg) translateX(-20px)}.workflow-plan-summary .selected-price-accent-pink{right:11px}.workflow-plan-summary .selected-price-accent-pink-alt{right:5px}#pane1 .allocation-summary{padding:7px 0}#pane1 .allocation-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#pane1 .allocation-metrics>div{padding:0 8px 8px 0;border-right:0;border-bottom:1px solid #e2dbcf}#pane1 .allocation-metrics>div:nth-child(2){border-bottom:1px solid #e2dbcf}#pane1 .allocation-metrics>div:last-child{padding-bottom:0}#pane1 .metric-icon{width:30px;height:30px;flex-basis:30px}#pane1 .metric-icon svg{width:24px;height:24px}#pane1 .metric-copy>span{font-size:.56rem}#pane1 .metric-copy strong{font-size:1.35rem}#pane1 .themegrid{grid-template-columns:1fr;gap:10px}#pane1 .theme{min-height:154px;grid-template-columns:90px minmax(0,1fr);padding:12px}#pane1 .theme.selected,#pane1 .theme.selected:hover{padding:11px;border-width:2px}#pane1 .themeart{width:90px;height:94px}#pane1 .actions{flex-direction:column-reverse}#pane1 .actions .btn{width:100%}}
@media(max-width:390px){#pane1 .theme{grid-template-columns:82px minmax(0,1fr);gap:10px}#pane1 .themeart{width:82px;height:88px}#pane1 .themename{font-size:.92rem}#pane1 .themedesc{font-size:.7rem}#pane1 .quantity-control button{width:28px;height:28px}#pane1 .quantity-control input{width:42px}}


/* Refinements requested: clearer founder philosophy and a more pet-inclusive Building Together visual */
.story-note{font-family:Fraunces,Georgia,serif;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.32;max-width:720px}
.vision-art-pets{min-height:420px;border-radius:28px;background:var(--cream);overflow:hidden;isolation:isolate}
.vision-art-pets:before{content:"";position:absolute;inset:28px 28px 70px;border:1px solid #0d132625;border-radius:48% 52% 43% 57%/52% 44% 56% 48%;z-index:-1}
.vision-art-pets:after{content:"";position:absolute;left:7%;right:7%;top:50%;border-top:1px dashed #0d13265a;transform:rotate(-13deg);z-index:-1}
.vision-orbit{position:absolute;border-radius:50%;border:1px solid #19c2a4a0;z-index:-1}
.orbit-one{width:260px;height:260px;left:5%;top:10%;border-color:#ff2d756b}
.orbit-two{width:190px;height:190px;right:4%;bottom:15%;border-color:#ff8700a0}
.vision-pet-dog,.vision-pet-kitten{position:absolute;overflow:hidden;border-radius:50%;background:var(--pale-teal);border:8px solid var(--cream);box-shadow:0 10px 32px #0d13261a}
.vision-pet-dog{width:58%;aspect-ratio:1;left:4%;top:8%;transform:rotate(-5deg)}
.vision-pet-kitten{width:46%;aspect-ratio:1;right:3%;top:33%;background:var(--pale-pink);transform:rotate(5deg)}
.vision-pet-dog img,.vision-pet-kitten img{width:100%;height:100%;object-fit:cover;display:block}
.vision-pet-dog img{object-position:center}
.vision-pet-kitten img{object-position:center}
.vision-spark{position:absolute;font-size:2rem;z-index:2}
.spark-one{top:9%;right:18%;color:var(--pink)}
.spark-two{left:17%;bottom:18%;color:var(--orange)}
.vision-caption{position:absolute;left:7%;right:7%;bottom:22px;background:var(--ink);color:var(--cream);border-radius:999px;padding:13px 18px;display:flex;align-items:center;gap:10px;font-size:.79rem;font-weight:600;line-height:1.35;box-shadow:0 8px 20px #0d13261a}
.vision-caption-dot{flex:0 0 9px;width:9px;height:9px;background:var(--pink);border-radius:50%;box-shadow:0 0 0 5px #ff2d7526}
@media(max-width:700px){.vision-art-pets{min-height:340px}.vision-pet-dog{width:59%;left:1%;top:7%}.vision-pet-kitten{width:48%;right:1%;top:32%}.vision-caption{font-size:.72rem;left:5%;right:5%;bottom:15px;padding:12px 14px}.orbit-one{width:200px;height:200px}.orbit-two{width:145px;height:145px}}


/* Verified redesign of Building Together: real pet imagery + simple visual journey */
.visionart-pets{position:relative;min-height:430px;background:#fffdf8;border:1px solid #e7dfd2;border-radius:28px;overflow:hidden;isolation:isolate}
.visionart-pets:before{content:"";position:absolute;inset:16px;border:1px solid #0d13261c;border-radius:20px;z-index:-1}
.visionart-pets .future-sun{position:absolute;right:9%;top:8%;width:145px;height:145px;background:#fce7ec;border-radius:50%;z-index:-1}
.vision-puppy,.vision-kitten{position:absolute;overflow:hidden;border:7px solid #fffdf8;border-radius:50%;box-shadow:0 10px 25px #0d13261c}
.vision-puppy{width:57%;aspect-ratio:1;left:4%;top:10%;transform:rotate(-4deg)}
.vision-kitten{width:43%;aspect-ratio:1;right:3%;top:33%;transform:rotate(4deg)}
.vision-puppy img,.vision-kitten img{display:block;width:100%;height:100%;object-fit:cover}
.build-steps{position:absolute;left:13%;right:12%;top:61%;display:flex;align-items:center;justify-content:space-between}
.build-steps:before{content:"";position:absolute;left:5%;right:5%;border-top:2px dashed #0d13265c}
.build-steps span{position:relative;width:17px;height:17px;border-radius:50%;border:4px solid #fffdf8;background:#ff2d75;box-shadow:0 0 0 1px #ff2d7560}
.build-steps span:nth-of-type(2){background:#19c2a4;box-shadow:0 0 0 1px #19c2a460}
.build-steps span:nth-of-type(3){background:#ff8700;box-shadow:0 0 0 1px #ff870060}
.build-steps i{position:relative;width:6px;height:6px;border-radius:50%;background:#0d1326}
.build-tag{position:absolute;display:flex;align-items:center;gap:7px;background:#fffdf8;border:1px solid #e8e0d5;border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:700;box-shadow:0 4px 12px #0d13260d}
.build-tag b{width:8px;height:8px;border-radius:50%;display:inline-block}
.tag-moments{top:8%;left:7%}.tag-moments b{background:#ff2d75}
.tag-ideas{top:25%;right:5%}.tag-ideas b{background:#19c2a4}
.tag-future{bottom:23%;left:12%}.tag-future b{background:#ff8700}
.build-caption{position:absolute;left:6%;right:6%;bottom:16px;background:#0d1326;color:#f7f3e9;padding:14px 16px;border-radius:14px;font-size:.76rem;font-weight:600;line-height:1.4}
@media(max-width:700px){.visionart-pets{min-height:355px;border-radius:22px}.visionart-pets:before{inset:11px}.visionart-pets .future-sun{width:105px;height:105px}.vision-puppy{width:59%;left:1%;top:14%}.vision-kitten{width:45%;right:1%;top:36%}.build-steps{top:62%;left:8%;right:8%}.tag-moments{top:7%;left:3%}.tag-ideas{top:26%;right:2%}.tag-future{bottom:24%;left:6%}.build-caption{left:4%;right:4%;bottom:11px;padding:12px;font-size:.69rem}}

/* Two-column theme cards are too narrow for label + stepper side by side: stack them so the + button is never clipped. */
@media(max-width:700px){.qtyrow{flex-wrap:wrap;justify-content:flex-start}.qtyrow>span{flex:1 0 100%}}
.brand-logo{display:block;width:175px;height:auto}
@media(max-width:700px){.brand-logo{width:155px}}
.petphoto{right:0;width:calc(100% + 15px);height:calc(90% + 15px);object-fit:contain;object-position:center; border-radius:0;mix-blend-mode:normal;mask-image:none}
.d2{right:64px;top:60px}
.navlinks>a:hover{color:var(--pink)}
.story h2{line-height:1.16}
.visionart-pets{align-self:center;border-radius:30px}
.visionart-pets:before{inset:14px;border-radius:22px;border-color:#0d132614}
.vision-puppy,.vision-kitten{border-width:6px;box-shadow:0 8px 22px #0d13261a}
.vision-puppy{left:5%;top:9%;transform:rotate(-3deg)}
.vision-kitten{right:5%;top:34%;transform:rotate(3deg)}
.build-steps{left:14%;right:14%;top:69%}
.build-steps:before{border-top:2px dashed #19c2a47a}
.build-steps span{width:16px;height:16px;border-width:3px}
.build-steps i{width:5px;height:5px;background:#0d132680}
.tag-moments{top:8%;left:8%}
.tag-ideas{top:25%;right:7%}
.tag-future{bottom:23%;left:12%}
.story .dotsline{height:50px;margin-top:32px;background-image:radial-gradient(circle,var(--pink) 2px,transparent 2.5px),radial-gradient(circle,var(--teal) 2px,transparent 2.5px),radial-gradient(circle,var(--orange) 2px,transparent 2.5px);background-size:56px 36px,56px 36px,56px 36px;background-position:0 0,18px 12px,36px 24px;background-repeat:repeat-x}
#possible .head{max-width:850px;margin-bottom:34px}
#possible .head .eyebrow{color:var(--teal)}
#possible .head h2{font-size:clamp(2.4rem,4vw,3.6rem);line-height:1.04;margin-bottom:16px}
#possible .possible-period{color:var(--pink)}
#possible .head p{max-width:760px;font-size:1.02rem;line-height:1.55}
#possible .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#possible .card{min-height:260px;padding:22px 21px;background:#fffdfa;border-radius:20px;display:flex;flex-direction:column}
#possible .art{height:100px;flex:0 0 100px;margin-bottom:14px;font-size:0}
#possible .card h3{font-size:1.32rem;line-height:1.16;margin:0 0 9px}
#possible .card p{font-size:.94rem;line-height:1.43;margin:0}
#possible .possible-illustration{display:block;width:190px;max-width:100%;height:100px;object-fit:contain;object-position:left center}
@media(max-width:900px){#possible .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#possible .head{margin-bottom:26px}#possible .head h2{font-size:clamp(2.15rem,7vw,3rem)}#possible .cards{grid-template-columns:1fr;gap:12px}#possible .card{min-height:235px;padding:18px 16px}#possible .art{height:100px;flex-basis:100px}#possible .card h3{font-size:1.2rem}#possible .card p{font-size:.88rem}}
@media(max-width:500px){#possible .cards{grid-template-columns:1fr}#possible .card{min-height:210px}}
#how-it-works .head{max-width:none;margin-bottom:42px}
#how-it-works .head h2{font-size:clamp(2.25rem,4vw,3.25rem);line-height:1.06}
#how-it-works .head p{max-width:680px;font-size:1rem;line-height:1.55}
#how-it-works .process-track{position:relative;padding-top:26px}
#how-it-works .process-progress{position:absolute;top:0;left:0;right:0;height:1px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:16px;align-items:center;background:none;z-index:1}
#how-it-works .process-progress:before{content:"";position:absolute;inset:0;border-top:1px solid var(--teal)}
#how-it-works .process-progress span{position:relative;z-index:1;width:52px;height:52px;display:grid;place-items:center;justify-self:center;border-radius:50%;background:var(--teal);color:#fff;font:600 1.2rem/1 Fraunces,Georgia,serif;transform:translateY(-50%)}
#how-it-works .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
#how-it-works .step{display:flex;flex-direction:column;min-height:410px;padding:20px;background:var(--cream);border:1px solid #e5dfd4;border-radius:20px;overflow:hidden}
#how-it-works .step-image{display:block;width:100%;aspect-ratio:2.15/1;object-fit:cover;border-radius:14px;margin-bottom:8px}
#how-it-works .step .num{font:600 3rem/1 Fraunces,Georgia,serif;color:var(--pink);margin:0 0 6px}
#how-it-works .step h3{font-size:1.34rem;line-height:1.15;margin:0 0 10px}
#how-it-works .step p{font-size:.94rem;line-height:1.48;margin:0}
#how-it-works .process-disclaimer{text-align:center;max-width:100%;margin:20px auto 0}
@media(max-width:900px){#how-it-works .steps{gap:12px}#how-it-works .step{min-height:390px;padding:15px}#how-it-works .step h3{font-size:1.2rem}#how-it-works .step p{font-size:.86rem}#how-it-works .process-progress{column-gap:12px}}
@media(max-width:700px){#how-it-works .head{margin-bottom:28px}#how-it-works .process-track{padding-top:0}#how-it-works .process-progress{display:none}#how-it-works .steps{grid-template-columns:1fr;gap:14px}#how-it-works .step{display:flex;min-height:0;padding:16px}#how-it-works .step-image{aspect-ratio:2.2/1}#how-it-works .step .num{grid-row:auto;font-size:2.6rem}#how-it-works .process-disclaimer{margin-top:16px;padding:0 8px}}
#vision{background:var(--ink);color:var(--cream);padding:86px 0}
#vision .visiongrid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(38px,5vw,66px);align-items:center}
#vision .vision-copy .eyebrow{color:var(--teal);margin-bottom:10px}
#vision .vision-copy h2{max-width:560px;font-size:clamp(3rem,4.6vw,4rem);line-height:1.02;margin:0 0 20px;color:var(--cream)}
#vision .vision-copy h2 span{color:var(--pink)}
#vision .vision-copy p{font-size:1.02rem;line-height:1.5;margin:0 0 16px;color:var(--cream)}
#vision .vision-copy .vision-note{font-size:.91rem;color:#aeb5c4;margin-top:20px;margin-bottom:18px}
#vision .vision-cta{display:inline-flex;align-items:center;gap:14px;padding:15px 25px;border-radius:999px;background:var(--pink);color:white;font-size:.97rem;font-weight:700;transition:background-color .18s ease;position:relative;top:18px}
#vision .vision-cta:hover{background:#e91f66;transform:none;box-shadow:none}
#vision .vision-cta:focus-visible{outline:3px solid var(--cream);outline-offset:4px}
#vision .visionart-pets{width:100%;height:570px;min-height:0;position:relative;align-self:center;overflow:visible;background:transparent;border:0;border-radius:0;isolation:isolate}
#vision .visionart-pets:before{display:none}
#vision .future-sun{position:absolute;z-index:0;top:1%;right:17%;width:230px;height:230px;border-radius:50%;background:var(--pink)}
#vision .vision-accent{position:absolute;z-index:1;display:block;border-radius:50%}
#vision .accent-teal{top:14%;right:4%;width:28px;height:28px;background:var(--teal)}
#vision .accent-pink{top:34%;left:1%;width:12px;height:12px;background:var(--pink)}
#vision .accent-orange{top:48%;right:-1%;width:14px;height:14px;background:var(--orange)}
#vision .vision-puppy,#vision .vision-kitten{position:absolute;overflow:hidden;border:8px solid var(--cream);border-radius:50%;box-shadow:none}
#vision .vision-puppy{z-index:2;width:63%;aspect-ratio:1;left:3%;top:6%;transform:none}
#vision .vision-kitten{z-index:3;width:48%;aspect-ratio:1;right:1%;top:34%;transform:none}
#vision .vision-puppy img,#vision .vision-kitten img{display:block;width:100%;height:100%;object-fit:cover}
#vision .vision-puppy img{object-position:65% 55%}
#vision .vision-kitten img{object-position:center}
#vision .build-steps{z-index:4;position:absolute;left:11%;right:2%;top:73%;height:48px}
#vision .build-steps:before{display:none}
#vision .build-steps svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#vision .build-steps path{fill:none;stroke:var(--teal);stroke-width:1.6;stroke-dasharray:1.3 2.6;stroke-linecap:round}
#vision .build-steps span{position:absolute;z-index:1;width:22px;height:22px;border:4px solid var(--cream);border-radius:50%;box-shadow:none;transform:translate(-50%,-50%)}
#vision .build-steps .step-teal{left:47%;top:20%;background:var(--teal)}
#vision .build-steps .step-orange{left:100%;top:78%;background:var(--orange)}
#vision .build-tag{z-index:5;gap:8px;padding:9px 13px;border:0;border-radius:999px;background:var(--cream);color:var(--ink);font-size:.78rem;line-height:1.2;box-shadow:none;white-space:nowrap}
#vision .build-tag b{width:9px;height:9px;flex:0 0 9px}
#vision .tag-moments{top:5%;left:4%}
#vision .tag-moments b{background:var(--pink)}
#vision .tag-ideas{top:28%;right:0}
#vision .tag-ideas b{background:var(--teal)}
#vision .tag-future{bottom:22%;left:8%}
#vision .tag-future b{background:var(--orange)}
#vision .build-caption{z-index:5;left:0;right:0;bottom:0;width:100%;transform:none;display:block;min-height:0;padding:14px 16px;border:1px solid #827b70;border-radius:26px;background:transparent;color:var(--cream);text-align:center;font-size:.88rem;font-weight:400;line-height:1.35;white-space:nowrap}
#vision .build-caption strong{font:600 1.08rem/1.35 Fraunces,Georgia,serif;margin-right:.25em}
@media(max-width:900px){#vision{padding:72px 0}#vision .visiongrid{gap:30px}#vision .vision-copy h2{font-size:clamp(2.8rem,5vw,3.5rem)}#vision .visionart-pets{height:500px}#vision .future-sun{width:190px;height:190px}#vision .vision-puppy{width:66%}#vision .vision-kitten{width:50%;top:36%}#vision .build-caption{font-size:.72rem;padding:12px 8px;white-space:normal;max-width:100%}#vision .build-caption strong{font-size:.84rem}}
@media(max-width:700px){#vision{padding:60px 0}#vision .visiongrid{grid-template-columns:1fr;gap:30px}#vision .vision-copy h2{font-size:clamp(2.8rem,10vw,3.6rem)}#vision .vision-copy p{font-size:.98rem}#vision .vision-cta{top:0}#vision .visionart-pets{height:clamp(380px,94vw,560px)}#vision .future-sun{width:clamp(130px,38vw,190px);height:clamp(130px,38vw,190px);right:15%;top:2%}#vision .vision-puppy{width:66%;left:2%;top:8%}#vision .vision-kitten{width:44%;right:1%;top:34%}#vision .tag-moments{top:4%;left:0}#vision .tag-ideas{top:30%;right:0}#vision .tag-future{bottom:20%;left:2%}#vision .build-steps{left:9%;right:5%;top:70%;height:42px}#vision .build-steps span{width:20px;height:20px}#vision .build-caption{left:0;bottom:0;width:100%;white-space:normal;min-height:0;padding:12px 14px;font-size:.8rem}#vision .build-caption strong{font-size:.95rem}}
@media(max-width:430px){#vision .visionart-pets{height:390px}#vision .vision-puppy{width:68%;top:10%}#vision .vision-kitten{width:46%;top:37%}#vision .tag-moments{top:2%;left:0}#vision .tag-ideas{top:33%;right:0}#vision .tag-future{bottom:19%;left:0}#vision .build-caption{font-size:.75rem}#vision .build-caption strong{font-size:.87rem}}

/* Subscription section refresh */
#plans{background:#F7F3E9;padding-top:76px}
#plans .wrap{width:min(1400px,calc(100% - 64px))}
#plans .pricing-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,52px);align-items:start;min-height:322px;margin-bottom:30px;position:relative;z-index:2}
#plans .head{max-width:none;margin:0;position:relative;z-index:1}
#plans .head .eyebrow{color:var(--ink)}
#plans .head h2{max-width:730px;font-size:clamp(3.5rem,3.9vw,4rem);line-height:.98;margin:12px 0 16px}
#plans .head h2 .pricing-title-line{display:block}
#plans .head p{max-width:620px;font-size:1rem;line-height:1.55;margin-bottom:12px}
#plans .pricing-product{position:relative;align-self:start;justify-self:end;width:min(100%,420px);margin:0;isolation:isolate;pointer-events:none}
#plans .pricing-product:before{content:'';position:absolute;z-index:-1;inset:3% -2% 2% 2%;background:#f7f3e9;border:1px solid #e9e2d6;box-shadow:0 12px 24px #0d132615;transform:rotate(4deg)}
#plans .pricing-certificate{position:relative;z-index:1;display:block;width:100%;height:auto;transform:rotate(2deg);mix-blend-mode:darken;filter:drop-shadow(0 7px 12px #0d13261c)}
#plans .billing{margin:10px 0 0;gap:4px;padding:5px;background:#efe8dd}
#plans .billing button{min-height:44px;padding:9px 15px;color:var(--ink);transition:background-color .2s,color .2s}
#plans .billing button.active{background:var(--ink);color:#fff}
#plans .billing button:focus-visible{outline:3px solid var(--teal);outline-offset:3px;position:relative;z-index:1}
#plans .save{font-size:.76rem;color:var(--teal)}
#plans .billing button.active .save{color:var(--teal)}
#plans .plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
#plans .plan{min-width:0;min-height:590px;padding:24px 26px 20px;border:1px solid #e8dfd2;border-radius:20px;background:#fffdfa;display:flex;flex-direction:column;position:relative;z-index:3;transform:none;box-shadow:none;transition:transform .22s ease,border-color .22s ease,background-color .22s ease}
#plans .plan.best{border:1.5px solid var(--pink);background:#fff7fa;transform:none;box-shadow:0 8px 22px #0d13260a}
#plans .plan.selected:not(.best){border-color:var(--teal);background:#f1fbf8;transform:scale(.98)}
#plans .plan.best.selected{transform:scale(.98)}
#plans .plan h3{font-size:1.8rem;line-height:1.08;margin:8px 0 7px}
#plans .plan-topline{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:28px;padding-top:6px;margin-bottom:0}
#plans .plan-topline .kicker{margin:0}
#plans .plan-topline .popular{position:absolute;top:0;right:0}
#plans .plan-mark{position:absolute;top:0;right:0;width:62px;height:62px;flex:none;display:grid;place-items:center;border-radius:50%;background:#ddf7f1;color:var(--ink)}
#plans .plan-mark svg{display:block;width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#plans .kicker{color:#555c6d;font-size:.7rem;letter-spacing:.13em}
#plans .plandesc{font-size:.88rem;line-height:1.45;min-height:1.45em;margin:0 0 14px}
#plans .price{font-size:2.65rem;line-height:1.1;white-space:nowrap}
#plans .price small{font-size:.82rem}
#plans .annualnote{font-size:.8rem;line-height:1.4;color:var(--teal);min-height:1.4em;margin:6px 0 10px}
#plans .popular{position:static;padding:6px 12px;font-size:.72rem;white-space:nowrap}
#plans .plan-benefits{flex:1;list-style:none;margin:6px 0 22px;padding:15px 0 0;border-top:1px solid #e9e1d5;font-size:.84rem;line-height:1.42}
#plans .plan-benefits li{position:relative;padding:6px 0 6px 29px}
#plans .plan-benefits li:before{content:'✓';position:absolute;left:0;top:6px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--pt);color:#12665e;font-size:.74rem;font-weight:700}
#plans .plan.best .plan-benefits{border-color:#f3ccd9}
#plans .plan.best .plan-benefits li:before{background:#f9dbe4;color:#d91e61}
#plans .plan-cta{margin-top:auto;min-height:45px;padding:11px 14px;background:var(--ink);color:white;font-size:.88rem;transition:background-color .18s ease,outline-color .18s ease}
#plans .plan.best .plan-cta{background:var(--pink)}
#plans .plan-cta:hover{transform:none;box-shadow:none;background:#202943}
#plans .plan.best .plan-cta:hover{background:#e91f66}
#plans .plan-cta:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
#plans .plan.selected .plan-cta[aria-pressed="true"]{outline:2px solid var(--teal);outline-offset:2px}
#plans .plan.best.selected .plan-cta[aria-pressed="true"]{outline-color:var(--pink)}
#plans .pricing-note{margin-top:18px}
@media(max-width:900px){#plans .wrap{width:min(1400px,calc(100% - 44px))}#plans{padding-top:64px}#plans .pricing-intro{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;min-height:340px;margin-bottom:26px}#plans .head h2{font-size:clamp(3.2rem,5vw,3.7rem)}#plans .pricing-product{width:min(100%,410px)}#plans .plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#plans .plan{min-height:620px;padding:22px 17px}#plans .plan-mark{width:48px;height:48px}#plans .plan-mark svg{width:28px;height:28px}#plans .plan.best{grid-column:1/-1;justify-self:center;width:calc(50% - 7px)}}
@media(max-width:700px){#plans .wrap{width:calc(100% - 30px)}#plans{padding-top:52px}#plans .pricing-intro{grid-template-columns:1fr;gap:18px;min-height:0;margin-bottom:24px}#plans .head h2{font-size:clamp(2.7rem,9vw,3.4rem)}#plans .head h2 .pricing-title-line{display:inline}#plans .head h2 .pricing-title-line:first-child:after{content:' '}#plans .head p{font-size:.96rem}#plans .pricing-copy-break{display:none}#plans .pricing-product{justify-self:center;width:min(100%,420px)}#plans .pricing-certificate{transform:rotate(2deg)}#plans .plans{grid-template-columns:1fr;gap:14px}#plans .plan,#plans .plan.best{grid-column:auto;width:auto;min-height:0;padding:22px 19px;order:0}#plans .plan h3{font-size:1.65rem}#plans .plan-mark{width:52px;height:52px}#plans .plan-mark svg{width:29px;height:29px}#plans .plandesc{min-height:0}#plans .plan-benefits{margin-bottom:18px}}
@media(max-width:420px){#plans .billing button{padding-inline:12px}#plans .plan{padding:20px 17px}}
@media(prefers-reduced-motion:reduce){#plans .plan{transition:none}#plans .plan.selected,#plans .plan.best.selected{transform:none}}
@media(max-width:700px){html,body{overflow-x:clip}}


/* Shared signup workflow framing and practice details form */
.modal .mhead{padding-inline:max(22px,calc((100vw - 1120px)/2))}
.modal .progress{padding-inline:max(22px,calc((100vw - 1120px)/2))}
.modal .mbody{width:min(1120px,calc(100% - 44px));margin:0 auto;padding:28px 0 48px}
.workflow-plan-summary{gap:24px}
.workflow-plan-summary>div:first-child{min-width:0}
.workflow-plan-summary #sname{display:block;font-size:1.55rem;line-height:1.15}
.workflow-plan-summary #sdesc{font-size:.84rem;color:#555b6a}
.workflow-plan-summary .selected-price{flex:0 0 150px;padding-top:19px}
.workflow-plan-summary .selected-price .price{font:600 1.8rem/1.15 Fraunces,Georgia,serif;color:var(--ink)}
.workflow-plan-summary .selected-price-art{right:auto;left:-72px;top:5px}
.workflow-plan-summary .selected-price-accent-pink{right:17px}
.workflow-plan-summary .selected-price-accent-pink-alt{right:5px}
#detailsForm{max-width:1000px;margin:0 auto}
#detailsForm .details-section+.details-section{margin-top:24px;padding-top:3px;border-top:1px solid var(--line)}
#detailsForm .subhead{margin:17px 0 13px;font-size:1.35rem}
#detailsForm .formgrid{gap:15px 18px}
#detailsForm .address-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#detailsForm .field{min-width:0;gap:6px}
#detailsForm .field label,#detailsForm .field-label{font-size:.78rem;font-weight:700;line-height:1.35}
#detailsForm .field input,#detailsForm .field textarea,#detailsForm .field select{width:100%;min-height:48px;padding:12px 13px;border:1px solid #d4ccbd;border-radius:11px;background:#fffdfa;color:var(--ink);font:500 .87rem/1.4 Montserrat,Arial,sans-serif}
#detailsForm .field textarea{min-height:96px;resize:vertical}
#detailsForm .field input:focus-visible,#detailsForm .field textarea:focus-visible,#detailsForm .field select:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-color:var(--teal)}
#detailsForm .field [aria-invalid="true"]{border-color:#b42318}
#detailsForm .field-error{display:block;min-height:0;color:#b42318;font-size:.72rem;line-height:1.35}
#detailsForm .field-error:empty{display:none}
#detailsForm .field small:not(.field-error){font-size:.74rem;color:#686c78;line-height:1.5}
#detailsForm .actions{margin-top:27px}
.modal .progress span.on{color:var(--teal)}
@media(max-width:700px){
 .modal .mhead{padding:16px 15px}
 .modal .progress{padding:9px 15px 12px}
 .modal .progress span{font-size:.64rem;padding:5px 2px;gap:5px;white-space:normal}
 .modal .progress span b{width:24px;height:24px;flex:0 0 24px;font-size:.67rem}
 .modal .progress span:not(:last-child)::after{display:none}
 .modal .mbody{width:calc(100% - 30px);padding:23px 0 34px}
 .workflow-plan-summary{gap:10px;align-items:flex-start;padding-bottom:14px;margin-bottom:19px}
 .workflow-plan-summary #sname{font-size:1.28rem}
 .workflow-plan-summary #sdesc{max-width:250px;font-size:.76rem}
 .workflow-plan-summary .selected-price{flex-basis:112px;min-width:112px;padding-top:28px}
 .workflow-plan-summary .selected-price .price{font-size:1.55rem}
 .workflow-plan-summary .selected-price-art{top:0;left:-26px;width:38px;height:32px;transform:rotate(22deg)}
 .workflow-plan-summary .selected-price-accent-pink{right:12px}
 .workflow-plan-summary .selected-price-accent-pink-alt{right:3px}
 #detailsForm .formgrid,#detailsForm .address-grid{grid-template-columns:1fr;gap:13px}
 #detailsForm .field.full{grid-column:auto}
 #detailsForm .details-section+.details-section{margin-top:20px}
 #detailsForm .actions{flex-direction:column-reverse}
 #detailsForm .actions .btn{width:100%}
}
@media(max-width:390px){.modal .progress span{font-size:.59rem;gap:3px}.workflow-plan-summary .selected-price{flex-basis:103px;min-width:103px}.workflow-plan-summary .selected-price-art{left:-22px;width:34px;height:29px}}

#modal .modal{height:auto;min-height:100vh;overflow:visible}
#modal .mbody{background:var(--cream)}
@supports(height:100dvh){#modal .modal{min-height:100dvh}}
#modal.backdrop{height:100vh}
@supports(height:100dvh){#modal.backdrop{height:100dvh}}
#modal.backdrop{padding:0}
