:root{--focus:#b85d6c}.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}.meet-back{color:var(--muted);font-size:13px;text-decoration:none}.meet-back strong{color:var(--wine);margin-left:5px}.meet-hero{padding:88px 0 78px;background:linear-gradient(145deg,var(--cream),#fffdf9)}.meet-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.55fr);gap:100px;align-items:end}.meet-hero h1{margin:0;font-family:var(--serif);font-size:clamp(59px,7.5vw,104px);font-weight:400;letter-spacing:-.055em;line-height:.9}.meet-hero h1 em{color:var(--wine);font-weight:400}.meet-hero-grid>div>p{max-width:750px;margin:30px 0 0;font-family:var(--serif);font-size:24px;line-height:1.5}.meet-promise{padding:10px 0 8px 34px;border-left:1px solid #cdbfb4}.meet-promise div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.meet-promise span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.meet-promise strong{font-family:var(--serif);font-size:18px;font-weight:400;text-align:right}.meet-promise p{margin:22px 0 0;color:var(--muted);font-size:14px;line-height:1.6}.meet-area{padding:90px 0 120px;background:#fff}.meet-layout{display:grid;grid-template-columns:280px minmax(0,760px);gap:75px;justify-content:center;align-items:start}.meet-guide{position:sticky;top:115px}.meet-guide ol{margin:25px 0 30px;padding:0;list-style:none}.meet-guide li{display:flex;gap:14px;padding:14px 0;opacity:.48}.meet-guide li>span{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font:700 12px var(--sans)}.meet-guide li div{display:grid}.meet-guide li strong{font-size:14px}.meet-guide li small{color:var(--muted);font-size:11px}.meet-guide li.is-active,.meet-guide li.is-complete{opacity:1}.meet-guide li.is-active>span{background:var(--wine);border-color:var(--wine);color:#fff}.meet-guide li.is-complete>span{color:transparent;background:var(--cream);border-color:var(--cream);position:relative}.meet-guide li.is-complete>span:after{content:'✓';position:absolute;color:var(--wine);font-size:14px}.meet-guide>p{color:var(--muted);font-size:12px;line-height:1.6}.meet-card{padding:50px;border:1px solid var(--line);border-radius:26px;background:var(--paper);box-shadow:0 20px 60px rgba(55,31,28,.08)}.form-step{animation:step-in .35s ease}.step-count{display:block;color:var(--wine);font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.form-step h2,.success-panel h2{margin:14px 0;font-family:var(--serif);font-size:clamp(38px,5vw,56px);font-weight:400;letter-spacing:-.035em;line-height:1.03}.step-intro{max-width:650px;margin:0 0 34px;color:var(--muted);font-size:17px;line-height:1.65}.choice-grid,.slot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;padding:0;border:0}.choice-grid label,.custom-slot-choice,.slot-option{display:block;cursor:pointer}.choice-grid input,.custom-slot-choice input,.slot-option input{position:absolute;opacity:0;pointer-events:none}.choice-grid label>span,.custom-slot-choice>span,.slot-option>span{height:100%;display:block;padding:19px;border:1px solid var(--line);border-radius:15px;background:#fff;transition:.18s ease}.choice-grid strong,.custom-slot-choice strong,.slot-option strong{display:block;font-family:var(--serif);font-size:19px;font-weight:400;line-height:1.2}.choice-grid small,.custom-slot-choice small,.slot-option small{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.45}.choice-grid input:checked+span,.custom-slot-choice input:checked+span,.slot-option input:checked+span{border-color:var(--wine);box-shadow:inset 0 0 0 1px var(--wine);background:#fbf3f2}.choice-grid input:focus-visible+span,.custom-slot-choice input:focus-visible+span,.slot-option input:focus-visible+span{outline:3px solid rgba(184,93,108,.28);outline-offset:2px}.field{margin-top:24px}.field label{display:block;margin-bottom:8px;font-size:13px;font-weight:800}.field label small{color:var(--muted);font-weight:500}.field>small{display:block;margin-top:7px;color:var(--muted);font-size:11px}.field input,.field textarea,.field select,.custom-slot-fields input{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font:16px/1.4 var(--sans);transition:.18s}.field textarea{resize:vertical;min-height:105px}.field input:focus,.field textarea:focus,.field select:focus,.custom-slot-fields input:focus{outline:3px solid rgba(184,93,108,.2);border-color:var(--focus)}.field input[aria-invalid=true]{border-color:#b42318;background:#fff8f7}.field-error{display:block;margin-top:6px;color:#9f2017;font-size:12px}.fields-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dogs-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:38px 0 14px}.dogs-heading h3{margin:0;font-family:var(--serif);font-size:28px;font-weight:400}.dogs-heading p{margin:2px 0 0;color:var(--muted);font-size:12px}.quiet-button,.text-button{padding:0;border:0;background:transparent;color:var(--wine);font:800 13px var(--sans);cursor:pointer;text-decoration:none}.dog-card{position:relative;margin:0 0 14px;padding:24px;border:1px solid var(--line);border-radius:15px;background:#fff}.dog-card legend{padding:0 8px;color:var(--wine);font:800 11px var(--sans);letter-spacing:.1em;text-transform:uppercase}.dog-card .field{margin-top:8px}.remove-dog{position:absolute;right:18px;top:16px;border:0;background:transparent;color:var(--muted);font:700 11px var(--sans);cursor:pointer}.step-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px}.step-actions .primary-button:only-child{margin-left:auto}.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 25px;border:0;border-radius:999px;background:var(--wine);color:#fff;font:800 14px var(--sans);cursor:pointer;text-decoration:none}.primary-button:hover{background:var(--wine-dark)}.slot-grid{margin-bottom:12px}.slot-option>span{padding:17px}.slot-option strong{text-transform:capitalize}.custom-slot-choice{margin-top:12px}.custom-slot-fields{margin-top:14px;padding:4px 22px 20px;border-radius:14px;background:var(--cream)}.custom-slot-fields>p{margin:12px 0 0;color:var(--muted);font-size:12px}.meeting-summary{display:grid;grid-template-columns:.7fr 1.3fr;gap:20px;margin:34px 0 25px;padding:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.meeting-summary div{display:grid;align-content:start}.meeting-summary span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.meeting-summary strong{margin-top:5px;font-family:var(--serif);font-size:17px;font-weight:400;line-height:1.35}.privacy-check{display:flex;align-items:flex-start;gap:11px;color:var(--muted);font-size:12px;line-height:1.55}.privacy-check input{width:18px;height:18px;flex:0 0 auto;margin-top:1px;accent-color:var(--wine)}.privacy-check a{color:var(--wine)}.submit-note{margin:18px 0 0;text-align:right;color:var(--muted);font-size:11px}.button-loading{display:none}.is-submitting .submit-button span:first-child{display:none}.is-submitting .button-loading{display:inline}.is-submitting .submit-button{opacity:.75;cursor:wait}.form-alert{margin-bottom:28px;padding:16px 18px;border:1px solid #e3a7a0;border-radius:12px;background:#fff4f2;color:#7e1d16;font-size:13px;line-height:1.55}.form-alert strong{display:block;margin-bottom:3px}.success-panel{text-align:center;animation:step-in .45s ease}.success-mark{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 24px;border-radius:50%;background:#e6f0e8;color:#356c43;font-size:26px}.success-panel .eyebrow{margin-bottom:0}.success-panel>p{max-width:590px;margin:16px auto;color:var(--muted);line-height:1.7}.success-appointment{max-width:520px;margin:30px auto;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--cream)}.success-appointment span,.success-appointment small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.success-appointment strong{display:block;margin:8px 0 5px;font-family:var(--serif);font-size:25px;font-weight:400;text-transform:capitalize}.success-appointment small{font-size:10px}.success-actions{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:32px;flex-wrap:wrap}@keyframes step-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:900px){.meet-hero-grid{grid-template-columns:1fr;gap:45px}.meet-promise{max-width:650px}.meet-layout{grid-template-columns:1fr}.meet-guide{position:static}.meet-guide ol{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.meet-guide li{padding:0}.meet-guide li small,.meet-guide>p{display:none}.meet-card{max-width:760px;width:100%;margin:auto}}@media(max-width:620px){.meet-back{font-size:0}.meet-back strong{font-size:12px}.meet-hero{padding:58px 0 54px}.meet-hero h1{font-size:54px}.meet-hero-grid>div>p{font-size:20px}.meet-promise{padding-left:0;border-left:0}.meet-area{padding:42px 0 75px}.meet-guide .eyebrow{display:none}.meet-guide{overflow:hidden}.meet-guide ol{margin:0;gap:5px}.meet-guide li{gap:7px}.meet-guide li>span{width:29px;height:29px}.meet-guide li strong{font-size:10px;line-height:1.2}.meet-card{padding:28px 20px;border-radius:19px}.form-step h2,.success-panel h2{font-size:39px}.step-intro{font-size:15px}.choice-grid,.slot-grid,.fields-row{grid-template-columns:1fr}.fields-row{gap:0}.dogs-heading{align-items:flex-start;flex-direction:column}.dog-card{padding:20px 15px}.meeting-summary{grid-template-columns:1fr}.submit-button{flex:1}.submit-note{text-align:center}.success-actions{flex-direction:column}.success-actions .primary-button{width:100%}}@media(prefers-reduced-motion:reduce){.form-step,.success-panel{animation:none}}
