:root{
  --primary:#0a7075;--primary-deep:#075f63;--primary-soft:#e7f2f2;--ink:#17343c;
  --muted:#6d8187;--line:#d9e3e5;--soft:#f5f8f8;--white:#fff;--danger:#9b3434;
  --emergency:#8d3030;--shadow:0 18px 55px rgba(14,52,60,.09);--body:'Manrope',Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f7f7;color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5}button,input,textarea{font:inherit}button{cursor:pointer}a{color:var(--primary)}[hidden]{display:none!important}.skip-link{position:absolute;left:-9999px;top:8px;z-index:99;background:#fff;padding:10px}.skip-link:focus{left:8px}.mobile-brand-bar{display:none}.scheduler-hero{height:238px;position:relative;overflow:hidden;background:var(--primary-deep)}.scheduler-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;opacity:.34}.scheduler-hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(3,47,48,.96),rgba(7,95,99,.84),rgba(7,95,99,.68))}.scheduler-hero-content{position:relative;z-index:1;width:min(100% - 48px,1000px);height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:40px}.scheduler-hero-copy{max-width:620px;color:#fff}.scheduler-hero-copy p{margin:0 0 9px;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;opacity:.85}.scheduler-hero-copy h1{margin:0;font-size:38px;line-height:1.05;letter-spacing:-.04em}.scheduler-hero-copy span{display:block;margin-top:12px;max-width:560px;font-size:14px;opacity:.9}.scheduler-hero-logo{width:220px;height:auto;object-fit:contain}.form-section{padding:28px 0 44px}.form-layout{width:min(100% - 40px,740px);margin:auto}.form-card{padding:26px 30px 30px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.form-heading{padding-bottom:18px;border-bottom:1px solid #e6edef}.form-heading>span,.panel-heading>span{color:var(--primary);font-size:10px;font-weight:800;letter-spacing:.13em}.form-heading h2,.panel-heading h3,.confirmation h2,.registration-success h2{margin:5px 0 6px;line-height:1.15;letter-spacing:-.03em}.form-heading h2{font-size:27px}.form-heading p,.panel-heading p{margin:0;color:var(--muted);font-size:13px}.flow-steps{display:flex;gap:6px;overflow-x:auto;padding:17px 0 12px;scrollbar-width:none}.flow-steps::-webkit-scrollbar{display:none}.flow-step{white-space:nowrap;padding:6px 9px;border-radius:999px;background:#f1f5f5;color:#7c8f94;font-size:10px;font-weight:800}.flow-step.active{background:var(--primary-soft);color:var(--primary-deep)}.flow-step.done{color:#47666c;background:#edf3f3}.selection-trail{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.trail-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #dbe7e8;border-radius:9px;background:#fbfcfc;color:#49636a;font-size:11px}.trail-chip button{border:0;background:transparent;color:var(--primary);padding:0;font-weight:800}.flow-panel{padding-top:4px}.service-grid,.professional-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-card,.professional-card{appearance:none;text-align:left;padding:16px;border:1px solid #d2dfe1;border-radius:12px;background:#fff;color:var(--ink);transition:.15s ease}.service-card:hover,.professional-card:hover{border-color:#9ccfcb;background:#fbfefe}.service-card.selected,.professional-card.selected{border-color:#78bbb8;background:#edf7f6;box-shadow:inset 0 0 0 1px rgba(10,112,117,.06)}.service-kicker{display:block;margin-bottom:5px;color:var(--primary);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.service-card strong,.professional-card strong{display:block;font-size:14px}.service-card small,.professional-card small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.45}.emergency-card{border-color:#ead4d4}.emergency-card .service-kicker{color:var(--emergency)}.panel-heading{margin:2px 0 15px}.panel-heading h3{font-size:21px}.date-strip{display:grid;grid-auto-flow:column;grid-auto-columns:74px;gap:7px;overflow-x:auto;padding:2px 1px 10px;scroll-snap-type:x proximity}.date-btn{scroll-snap-align:start;height:68px;border:1px solid #d1dfe1;border-radius:10px;background:#fff;color:#496269;font-size:11px;font-weight:700}.date-btn span{display:block;margin-top:3px;color:var(--ink);font-size:18px;font-weight:800}.date-btn.selected{color:var(--primary-deep);background:var(--primary-soft);border-color:#95c9c6}.schedule-status{min-height:22px;margin:4px 0 7px;color:var(--muted);font-size:12px}.schedule-status.loading{color:var(--primary)}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.time-btn{min-height:46px;border:1px solid #cfdbde;border-radius:10px;background:#fff;color:#39545b;font-weight:800}.time-btn:hover{border-color:#9ccfcb}.time-btn.selected{background:var(--primary-deep);border-color:var(--primary-deep);color:#fff}.fecha-note{margin:12px 0 0;color:#71858b;font-size:11px}.field-group{margin-bottom:15px}.field-group label{display:block;margin-bottom:6px;color:#344f57;font-size:12px;font-weight:800}.field-group label small{font-weight:600;color:#829399}.field-group input,.field-group textarea{width:100%;padding:0 14px;color:var(--ink);background:#fbfcfc;border:1px solid #cfdbde;border-radius:10px;outline:none}.field-group input{height:48px}.field-group textarea{padding-top:12px;resize:vertical}.field-group input:focus,.field-group textarea:focus{background:#fff;border-color:var(--primary);box-shadow:0 0 0 3px rgba(10,112,117,.10)}.booking-summary{margin:2px 0 16px;padding:13px 14px;border:1px solid #dbe7e8;border-radius:11px;background:#f8fbfb}.booking-summary strong{display:block;margin-bottom:7px;font-size:12px}.summary-row{display:flex;justify-content:space-between;gap:14px;padding:4px 0;color:#62787e;font-size:11px}.summary-row b{text-align:right;color:#29464d}.btn{width:100%;min-height:50px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;font-weight:800}.submit-btn:hover,.emergency-submit:hover{background:#085f63}.cta-caption{margin:8px 0 0;text-align:center;color:#71858b;font-size:10px}.error-msg{display:none;margin-top:10px;padding:10px 12px;border:1px solid #f0d3d0;border-left:3px solid var(--danger);border-radius:9px;background:#fdf2f1;color:var(--danger);font-size:12px}.error-msg.show{display:block}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.emergency-banner{margin-bottom:17px;padding:16px;border:1px solid #ead4d4;border-radius:12px;background:#fff8f7}.emergency-banner span{color:var(--emergency);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.emergency-banner h3{margin:5px 0 5px;font-size:22px}.emergency-banner p{margin:0;color:#725d5d;font-size:12px}.emergency-submit{background:var(--emergency);border-color:var(--emergency)}.confirmation{text-align:center;padding:6px 0}.confirmation-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-deep);font-size:24px;font-weight:800}.confirmation-kicker{margin:0;color:var(--primary);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.confirmation h2,.registration-success h2{font-size:27px}.confirmation>p:not(.confirmation-kicker),.registration-success p{color:var(--muted)}.confirmation-location{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;text-align:left;border:1px solid var(--line);border-radius:12px;overflow:hidden}.confirmation-location-copy{padding:18px}.confirmation-location-copy span{font-size:10px;color:var(--primary);font-weight:800;text-transform:uppercase}.confirmation-location-copy h3{margin:5px 0;font-size:17px}.confirmation-location-copy p{margin:0 0 12px;color:var(--muted);font-size:11px}.confirmation-location-copy a{font-size:11px;font-weight:800}.confirmation-map iframe{display:block;width:100%;height:100%;min-height:170px;border:0}.confirmation-actions{margin-top:15px;display:grid;gap:9px}.secondary-btn{text-decoration:none;display:grid;place-items:center;background:#fff;color:var(--primary);border-color:#b9d8d7}.text-btn{border:0;background:transparent;color:var(--primary);font-weight:800}.text-btn span{margin-left:4px;color:#7b9095;font-size:10px}.back-link{padding:0;margin-bottom:12px}.registration{padding-top:4px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent-row{display:flex;align-items:flex-start;gap:9px;margin:4px 0 16px;color:#5f747a;font-size:11px}.consent-row input{margin-top:3px}.registration-success{text-align:center;padding:20px 0}.footer-compact{width:min(100% - 40px,900px);margin:0 auto 28px;padding:18px 0;display:flex;align-items:flex-start;gap:22px;border-top:1px solid #dbe4e6;color:#6e8288}.footer-compact img{width:135px;height:auto}.footer-compact strong{color:#36545b}.footer-compact p{margin:3px 0;font-size:11px}.footer-note{font-style:italic}
@media(max-width:640px){body{font-size:16px}.mobile-brand-bar{min-height:58px;display:flex;align-items:center;padding:9px 12px;background:#fff;border-bottom:1px solid #e1e9ea}.mobile-brand-logo{height:35px;width:auto}.mobile-brand-tagline{margin-left:10px;color:#71858b;font-size:9px;line-height:1.3;letter-spacing:.06em}.scheduler-hero{height:178px}.scheduler-hero-photo{object-position:55% 61%;opacity:.32}.scheduler-hero-overlay{background:linear-gradient(110deg,rgba(3,47,48,.96),rgba(7,86,90,.82))}.scheduler-hero-content{width:calc(100% - 28px)}.scheduler-hero-logo{display:none}.scheduler-hero-copy p{font-size:9px}.scheduler-hero-copy h1{font-size:29px;max-width:350px}.scheduler-hero-copy span{margin-top:8px;font-size:12px;line-height:1.4}.form-section{padding:14px 0 30px}.form-layout{width:calc(100% - 24px)}.form-card{padding:19px 16px 24px;border-radius:13px}.form-heading h2{font-size:25px}.form-heading p,.panel-heading p{font-size:13px}.flow-steps{margin-left:-4px;margin-right:-4px}.service-grid,.professional-grid{grid-template-columns:1fr}.service-card,.professional-card{padding:14px}.service-card strong,.professional-card strong{font-size:15px}.service-card small,.professional-card small{font-size:12px}.panel-heading h3{font-size:21px}.date-strip{grid-auto-columns:70px;margin-right:-16px;padding-right:16px}.time-grid{grid-template-columns:repeat(2,1fr)}.time-btn,.submit-btn,.emergency-submit,input,textarea{font-size:16px}.booking-summary{padding:12px}.summary-row{font-size:12px}.confirmation-location{grid-template-columns:1fr}.confirmation-map iframe{min-height:180px}.two-columns{grid-template-columns:1fr;gap:0}.footer-compact{width:calc(100% - 24px);display:block}.footer-compact img{width:118px;margin-bottom:10px}}
@media(max-width:370px){.scheduler-hero-copy h1{font-size:26px}.form-card{padding-left:13px;padding-right:13px}.date-strip{grid-auto-columns:67px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
