.hero-stage{min-height:570px}
.hero-stage:before{inset:28px 0 21px 38px;background:#eef3f9}
.hero-photo{top:0;right:0;width:78%;height:470px;border-radius:19px;background-image:url('../../../assets/at-home-pet-care-hero.png');background-position:center 48%}
.hero-ui{left:0;bottom:0;width:56%;border-color:#eed9e5;box-shadow:0 19px 43px rgba(23,38,61,.13)}
.public-head strong,.public-body small,.service-info .ui-kicker{color:#c92e73}
.public-head b,.hero-next b,.service-info .ui-action{background:#c92e73}
.hero-service{border-color:#f2dbe6;background:#fff8fb}
.hero-service b{color:#a62061}
.hero-fields div{border-color:#f0e2e9}
.product-frame{background:#f5f0f3}
.setup-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:11px 14px;border:1px solid #d7e4f5;border-radius:8px;background:#fff;color:#1355b2;font-size:10px}
.setup-summary span{font-weight:800}
.setup-summary strong{color:#43536a;font-weight:700;text-align:right}
.care-pains{padding:90px 0;background:#f7f9fc}
.care-pains-head{max-width:760px;margin-bottom:39px}
.care-pains-head h2,.care-journey-head h2{margin:13px 0 14px;font-size:clamp(35px,4.1vw,50px);line-height:1.1;letter-spacing:-.055em}
.care-pains-head p,.care-journey-head p{max-width:680px;color:#607089;font-size:14px;line-height:1.7}
.care-pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}
.care-pain{padding:22px 5px 0;border-top:2px solid #cdd9e8}
.care-pain>span{color:#c92e73;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.care-pain h3{min-height:62px;margin:15px 0 12px;font-size:22px;line-height:1.2;letter-spacing:-.04em}
.care-pain>p{min-height:76px;margin:0;color:#607089;font-size:12px;line-height:1.65}
.care-pain>div{margin-top:18px;padding-top:16px;border-top:1px solid #dae3ed}
.care-pain>div strong{color:#1355b2;font-size:11px}
.care-pain>div p{margin:7px 0 0;color:#43536a;font-size:12px;line-height:1.6}
.care-journey{padding:76px 0 80px;background:#fff}
.care-journey-head{max-width:800px;margin-bottom:31px}
.care-journey-list{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0;padding:26px 0 0;border-top:1px solid #cedbea;list-style:none}
.care-journey-list li{position:relative;min-height:72px;padding:0 17px 0 0}
.care-journey-list li:before{position:absolute;top:-32px;left:0;width:11px;height:11px;border:3px solid #1355b2;border-radius:50%;background:#fff;content:""}
.care-journey-list li span{display:block;margin-bottom:9px;color:#61748e;font-size:10px;font-weight:800;letter-spacing:.08em}
.care-journey-list li strong{font-size:18px;letter-spacing:-.035em}
.service-module-link{margin-top:23px}
.example-caption{margin:12px 4px 0;color:#718198;font-size:10px;line-height:1.5}
.service-photo{background-image:url('../../../assets/at-home-pet-care-dog-walk.png');background-position:center 45%}
.service-price span{background:#fde8f1;color:#a62061}
.booking-canvas{background:#eef2f7}
.booking-grid .booking-panel:first-child{border-color:#efdce6}
.booking-grid .booking-panel:first-child .window-head strong{color:#c92e73}
.booking-grid .booking-panel:first-child .window-head span{background:#fde8f1;color:#a62061}
.booking-grid .booking-panel:last-child .window-head strong{color:#1355b2}
.booking-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:1px 0 15px}
.booking-progress span{padding:8px 5px;border-radius:5px;background:#fff0f6;color:#a62061;font-size:10px;font-weight:800;text-align:center}
.booking-progress span:last-child{border:1px solid #e9c6d6;background:#fff}
.booking-grid .selection{padding:10px 12px;margin-bottom:7px}
.booking-grid .selection small{font-size:9px}
.booking-grid .selection strong{font-size:12px}
.pet-inline{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}
.pet-inline img{width:29px;height:29px;flex:none;object-fit:cover;border:1px solid #e1e8f1;border-radius:7px}
.booking-confirm{display:flex;justify-content:space-between;margin-top:12px;padding:10px 12px;border-radius:5px;background:#c92e73;color:#fff;font-size:11px;font-weight:800}
.team-booking-status{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.team-booking-status small{color:#1355b2;font-size:10px;font-weight:850;letter-spacing:.06em}
.team-booking-status strong{padding:6px 8px;border-radius:5px;background:#e8f5ef;color:#16805a;font-size:10px}
.booking-grid .detail-row,.context-windows .detail-row{font-size:11px}
.booking-grid .detail-row b,.context-windows .detail-row b{font-size:11px}
.booking-grid .status{background:#e8f5ef;color:#16805a!important}
.booking-grid .window-head strong,.context-windows .window-head strong{font-size:12px}
.booking-grid .window-head span,.context-windows .window-head span{font-size:9px}
.context-frame{background:#eaf1fa}
.context-windows .ui-window{min-height:300px}
.context-windows .panel-body{padding:18px}
.context-windows .panel-body h3{font-size:19px}
.pet-profile-heading{display:flex;align-items:center;gap:10px;margin:1px 0 11px}
.pet-profile-heading img{width:43px;height:43px;flex:none;object-fit:cover;border:1px solid #dce6f0;border-radius:9px}
.pet-profile-heading h3{margin:4px 0 0!important}
.agreement-link{margin-top:13px}
.visit-report{padding:100px 0;background:#f8fafd}
.report-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:75px}
.report-copy h2{max-width:510px;margin:14px 0 18px;font-size:clamp(36px,4.2vw,51px);line-height:1.08;letter-spacing:-.06em}
.report-copy p{max-width:510px;color:var(--body);font-size:14px;line-height:1.74}
.report-points{margin:27px 0 22px;border-top:1px solid #d8e3ee}
.report-points div{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid #d8e3ee;font-size:11px;line-height:1.5}
.report-points strong{color:#17263d}
.report-points span{color:#607089}
.report-stage{display:grid;grid-template-columns:300px 1fr;align-items:center;gap:19px;min-height:620px;padding:28px;border-radius:22px;background:#eaf1fa}
.report-phone{width:300px;overflow:hidden;border:8px solid #23324b;border-radius:34px;background:#fff;box-shadow:0 25px 52px rgba(23,38,61,.2)}
.phone-top{display:flex;justify-content:space-between;padding:11px 20px 7px;color:#17263d;font-size:9px;font-weight:850}
.phone-brand{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid #e2e9f1;font-size:10px}
.phone-brand strong{color:#1355b2;font-size:16px;letter-spacing:-.05em}
.phone-brand span{color:#77869a}
.phone-body{padding:17px}
.phone-body>small,.phone-note small{color:#1355b2;font-size:8px;font-weight:850;letter-spacing:.09em}
.phone-body h3{margin:7px 0 13px;font-size:20px;letter-spacing:-.04em}
.phone-body img{display:block;width:100%;height:154px;object-fit:cover;border-radius:8px}
.phone-check{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #e2e9f1;font-size:10px}
.phone-check span{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#e8f5ef;color:#16805a;font-weight:850}
.phone-photo{position:relative;margin-top:10px}
.phone-photo img{height:123px}
.phone-photo span{display:block;margin-top:5px;color:#62748b;font-size:9px}
.phone-row{display:flex;justify-content:space-between;gap:8px;padding:14px 0;border-bottom:1px solid #e2e9f1;font-size:9px}
.phone-row span{color:#75849a}.phone-row strong{text-align:right}
.phone-note{margin-top:12px;padding:12px;border-radius:7px;background:#f4f7fb}
.phone-note p{margin:6px 0 0;font-size:9px;line-height:1.55}
.phone-action{margin-top:13px;padding:10px;border-radius:6px;background:#1355b2;color:#fff;font-size:9px;font-weight:800;text-align:center}
.shared-preview{padding:17px;border:1px solid #eadde6;border-radius:11px;background:#fff;box-shadow:0 12px 24px rgba(23,38,61,.06)}
.shared-preview small{display:block;margin-bottom:9px;color:#c92e73;font-size:9px;font-weight:850;letter-spacing:.08em}
.shared-preview-photo{display:block;width:100%;height:88px;margin:0 0 11px;object-fit:cover;object-position:center 55%;border-radius:6px}
.shared-preview strong{font-size:15px}
.shared-preview p{margin:8px 0 14px;color:#64748b;font-size:10px;line-height:1.55}
.shared-preview span{color:#c92e73;font-size:10px;font-weight:800}
.report-caption{grid-column:1/-1;margin:0!important;color:#687993!important;font-size:10px!important;text-align:center}
.payment-heading{margin:8px 0 17px;font-size:20px;letter-spacing:-.04em}
.payment-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;padding:13px;border-radius:7px;background:#edf4fd;font-size:11px}
.payment-summary strong{color:#1355b2;font-size:18px}
.payment-split{height:9px;overflow:hidden;margin:14px 0 4px;border-radius:99px;background:#dfe8f2}
.payment-split span{display:block;width:27.78%;height:100%;border-radius:99px;background:#1355b2}
.payment-frame .detail-row{font-size:11px}.payment-frame .detail-row b{font-size:11px}
@media(max-width:1000px){.report-stage{grid-template-columns:1fr;justify-items:center}.shared-preview{width:min(300px,100%)}.care-pain-grid{gap:18px}}
@media(max-width:700px){.hero-stage{min-height:500px}.hero-photo{width:82%;height:365px}.hero-ui{width:70%}.care-pains,.care-journey{padding:73px 0}.care-pain-grid{grid-template-columns:1fr;gap:25px}.care-pain h3,.care-pain>p{min-height:0}.care-journey-list{grid-template-columns:repeat(2,1fr);row-gap:18px}.care-journey-list li:before{display:none}.report-grid{grid-template-columns:1fr;gap:24px}.visit-report{padding:73px 0}.report-stage{min-height:580px}}
@media(max-width:460px){.hero-stage{min-height:430px}.hero-photo{width:89%;height:310px}.hero-ui{width:82%}.care-journey-list{grid-template-columns:1fr}.setup-summary{align-items:flex-start;flex-direction:column}.setup-summary strong{text-align:left}.booking-progress span{font-size:8px}.report-stage{min-height:auto;padding:24px 12px}.report-phone{width:min(300px,100%)}.report-points div{grid-template-columns:100px 1fr}}
@media(max-width:460px){
  .service-ui{grid-template-columns:1fr;min-height:0}
  .service-photo{min-height:210px;background-position:center 43%}
  .service-info{padding:21px}
  .service-info h3{font-size:22px}
  .service-info p{font-size:12px}
  .service-price{gap:8px;margin:16px 0}
  .service-price span{padding:8px 10px;font-size:10px}
  .service-add{font-size:11px;line-height:1.55}
  .service-add strong{font-size:11px}
  .service-info .ui-action{font-size:10px}
}
