.workflow-page { background:#0b100d; color:#edf2eb; font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.6; margin:0; }
.workflow-page * { box-sizing:border-box; letter-spacing:0; }
.workflow-page a { color:#a2d6bb; text-underline-offset:4px; }
.workflow-page .eyebrow { color:#caa46b; font-size:12px; font-weight:700; }
.workflow-header { display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid #354338; padding:16px max(24px,calc((100% - 1240px)/2)); }
.workflow-brand { display:flex; align-items:center; gap:16px; text-decoration:none; color:#f2e6cb!important; font-weight:700; }
.workflow-brand img { width:74px; height:auto; }
.workflow-brand small { display:block; font-size:12px; font-weight:400; color:#b6c1b9; }
.workflow-header nav { display:flex; gap:24px; font-size:14px; }
.workflow-shell { width:min(1240px,calc(100% - 48px)); margin:36px auto 60px; }
.workflow-title { max-width:800px; margin-bottom:32px; }
.workflow-title h1 { font-size:38px; line-height:1.2; margin:8px 0 14px; }
.workflow-title p { color:#c3cbbf; }
.reservation-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:48px; align-items:start; }
.reservation-form { min-width:0; }
.step-progress { list-style:none; padding:0; margin:0 0 32px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.step-progress li { border-top:2px solid #38433c; padding-top:12px; color:#8c9d91; font-size:12px; }
.step-progress li span { display:block; font-size:14px; }
.step-progress [aria-current] { color:#b7e0c4; border-color:#90cba5; }
.workflow-page fieldset { margin:0; padding:0; border:0; min-width:0; }
.workflow-page legend { font-size:24px; font-weight:700; padding:0; margin-bottom:24px; line-height:1.3; }
.workflow-page label { display:grid; gap:6px; font-size:14px; margin-bottom:18px; color:#dde5dc; }
.workflow-page input,.workflow-page select,.workflow-page textarea { width:100%; min-width:0; border:1px solid #647468; border-radius:5px; background:#f3f5f0; color:#1b271e; padding:12px; font:inherit; font-size:16px; }
.workflow-page textarea { resize:vertical; }
.workflow-page input::placeholder,.workflow-page textarea::placeholder { color:#657065; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
.workflow-page .check-row { display:flex; align-items:flex-start; gap:12px; margin-top:20px; }
.check-row input { width:20px; height:20px; flex:0 0 20px; margin-top:3px; accent-color:#76b995; }
.workflow-page .puppy-choice { display:grid; grid-template-columns:24px 94px minmax(0,1fr); align-items:center; gap:16px; padding:18px; border:1px solid #779784; border-radius:8px; background:#15251b; cursor:pointer; }
.puppy-choice input { width:20px; height:20px; accent-color:#98ca9f; }
.puppy-choice img { width:94px; height:94px; object-fit:cover; border-radius:5px; }
.puppy-choice strong { display:block; font-size:23px; }
.puppy-choice small { display:block; font-size:13px; color:#bfcfc4; }
.puppy-choice .choice-price { margin-top:6px; color:#e5c693; font-weight:700; }
.form-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:24px; }
.workflow-page .button { font-size:15px; line-height:1.4; padding:12px 20px; border-radius:5px; box-shadow:none; font-weight:700; text-decoration:none; min-height:46px; cursor:pointer; }
.workflow-page .button.primary { background:#aed4ba; border:1px solid #aed4ba; color:#17291e; }
.workflow-page .button.secondary { background:#18231c; border:1px solid #708776; color:#edf2eb; }
.workflow-page button:disabled { opacity:.55; cursor:wait; }
.form-feedback { font-size:14px; color:#edbc97; min-height:1.5em; }
.muted { color:#afbeb2; font-size:14px; }
.reservation-aside { border-left:1px solid #455349; padding-left:32px; }
.reservation-aside > img { width:100%; aspect-ratio:4/3; height:auto; object-fit:cover; border-radius:6px; }
.reservation-aside h2 { font-size:24px; margin:5px 0 22px; line-height:1.3; }
.journey-list { list-style:none; counter-reset:journey; padding:0; }
.journey-list li { position:relative; padding:0 0 24px 28px; border-left:1px solid #52695b; margin-left:8px; font-size:14px; }
.journey-list li::before { content:''; width:9px; height:9px; position:absolute; left:-5px; top:7px; border-radius:50%; background:#a9caba; }
.journey-list strong,.journey-list span { display:block; }
.journey-list span { color:#b8c4b9; margin-top:5px; }
.reservation-aside a { font-size:14px; }
.summary-list { display:grid; gap:0; margin:0; }
.summary-list > div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:20px; border-bottom:1px solid #344538; padding:14px 0; }
.summary-list dt { color:#aabdac; font-size:14px; }
.summary-list dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
.reservation-tracking { max-width:820px; border-top:2px solid #9ac6a8; padding:28px 0; }
.reservation-tracking h2 { font-size:28px; line-height:1.3; }
.workflow-footer { width:min(1240px,calc(100% - 48px)); margin:0 auto; padding:24px 0; border-top:1px solid #3c4d40; display:flex; flex-wrap:wrap; gap:18px; justify-content:space-between; color:#adbaaf; font-size:12px; }
.preview-notice { padding:12px 16px; background:#15252c; color:#c1d8df; border-left:3px solid #6895a4; font-size:13px; margin-bottom:24px; }
.partner-layout { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.partner-layout h2 { font-size:26px; line-height:1.3; }
.partner-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,520px); gap:42px; align-items:center; border-bottom:1px solid #344538; padding-bottom:34px; margin-bottom:34px; }
.partner-hero h1 { font-size:42px; line-height:1.14; margin:8px 0 18px; max-width:760px; }
.partner-hero p { color:#c3cbbf; max-width:720px; }
.partner-hero img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:8px; border:1px solid #4b5f50; }
.partner-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.partner-proof { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0 0 42px; }
.partner-proof article { border:1px solid #3d5345; border-radius:8px; background:#111b15; padding:18px; }
.partner-proof strong { display:block; color:#f1d39e; font-size:18px; margin-bottom:6px; }
.partner-proof span { color:#b9c7be; font-size:14px; }
.partner-showcase { margin:0 0 48px; padding:30px 0; border-top:1px solid #344538; border-bottom:1px solid #344538; }
.partner-showcase h2 { margin:8px 0 22px; font-size:28px; line-height:1.25; }
.partner-showcase-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.partner-showcase-grid > a,.partner-showcase-grid > article { display:flex; align-items:center; gap:16px; min-width:0; margin:0; padding:16px; border:1px solid #3d5345; border-radius:8px; background:#111b15; color:#f7ecd4; text-decoration:none; }
.partner-showcase-grid > a:hover,.partner-showcase-grid > article:hover { border-color:#d6aa62; background:#17231b; }
.partner-showcase-grid > a:focus-visible { outline:2px solid #96cfb4; outline-offset:4px; }
.partner-showcase-grid img { flex:0 0 72px; width:72px; height:72px; object-fit:cover; border-radius:6px; }
.partner-showcase-grid span { display:grid; gap:4px; min-width:0; }
.partner-showcase-grid strong { font-size:17px; line-height:1.3; overflow-wrap:anywhere; }
.partner-showcase-grid small { color:#b9c7be; font-size:13px; line-height:1.4; }
.partner-card-links { display:flex !important; flex-wrap:wrap; gap:6px 12px !important; }
.partner-card-links a { color:#e9c88f; font-size:12px; line-height:1.4; text-underline-offset:3px; }
.partner-panel { min-width:0; }
.partner-options { list-style:none; margin:24px 0; padding:0; }
.partner-options li { padding:20px 0; border-top:1px solid #344538; }
.partner-options strong { display:block; color:#e9c88f; }
.partner-options span { color:#b9c7be; }
.partner-photo { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:6px; }
.partner-note { border:1px solid #526f5d; border-radius:8px; background:#14221a; padding:20px; }
.partner-note strong { color:#b8e1c7; }
.partner-note p { margin:8px 0 0; color:#c6d0c7; }
.management-summary { display:flex; gap:30px; flex-wrap:wrap; border-block:1px solid #3c4d40; padding:20px 0; margin-bottom:24px; }
.management-summary strong { display:block; font-size:28px; }
.management-summary span { font-size:13px; color:#b2c1b6; }
.management-toolbar { display:flex; gap:16px; align-items:center; justify-content:space-between; margin-bottom:24px; }
.management-toolbar select { width:auto; }
.dossier { border-top:1px solid #4f6255; padding:26px 0; }
.dossier header { display:flex; flex-wrap:wrap; gap:20px; justify-content:space-between; }
.dossier h2 { font-size:23px; margin:0; }
.dossier .summary-list { margin:20px 0; }
.dossier .review-form { border-left:2px solid #758f7e; padding:10px 0 10px 20px; max-width:700px; }
.workflow-page .status-tag { padding:6px 12px; align-self:start; font-size:12px; background:#253d30; color:#c1e0ca; border:1px solid #557d64; border-radius:4px; }
.workflow-page .status-tag.pending { background:#382e1b; color:#efdab2; border-color:#917951; }
.policy-content { max-width:850px; }
.policy-content h2 { font-size:23px; margin-top:32px; }
@media(max-width:800px) {
 .workflow-header { padding:12px 18px; align-items:flex-start; }
 .workflow-header nav { gap:10px; flex-wrap:wrap; justify-content:flex-end; font-size:12px; }
 .workflow-brand { gap:8px; font-size:13px; }
 .workflow-brand img { width:52px; }
 .workflow-brand small { font-size:11px; }
 .workflow-shell { width:calc(100% - 32px); margin-top:26px; }
 .workflow-title h1 { font-size:30px; }
 .workflow-title p { font-size:15px; }
 .reservation-layout,.partner-layout,.partner-hero,.partner-proof,.partner-showcase-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
 .partner-hero h1 { font-size:30px; }
 .partner-hero img { aspect-ratio:4/3; }
 .reservation-aside { border-left:0; padding:24px 0 0; border-top:1px solid #455349; display:grid; grid-template-columns:100px 1fr; gap:20px; }
 .reservation-aside h2 { font-size:21px; }
 .reservation-aside .journey-list { display:none; }
 .form-grid { grid-template-columns:1fr; }
 .summary-list > div { grid-template-columns:1fr; gap:4px; }
 .workflow-footer { width:calc(100% - 32px); }
 .puppy-choice img { width:74px; height:74px; }
 .workflow-page .puppy-choice { grid-template-columns:20px 74px minmax(0,1fr); padding:14px; gap:12px; }
 .form-actions .button { flex-grow:1; }
}
