:root{--black:#080a08;--green:#173b2a;--green2:#23543b;--gold:#c7a35b;--gold2:#e1c47e;--cream:#f3f0e8;--paper:#fff;--text:#222722;--muted:#667067;--line:#d9ddd7;--red:#8f2d2d;--redsoft:#f8e4e3;--success:#e2efe6}*{box-sizing:border-box}html{min-height:100%}body{min-height:100vh;margin:0;background:radial-gradient(circle at 75% 0,#234b35 0,#101d15 30%,#080a08 67%);color:var(--text);font:16px/1.6 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}.portal-shell{width:min(920px,100%);margin:0 auto;padding:28px 18px 50px}.portal-header{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px 26px;background:var(--black);border-bottom:3px solid var(--gold)}.portal-header img{width:195px;height:62px;object-fit:contain;object-position:left center}.portal-header nav{display:flex;gap:16px;align-items:center;color:#d6dbd7;font-size:12px}.portal-header a{text-decoration:none}.portal-main{background:var(--paper);padding:42px 46px 46px;box-shadow:0 26px 80px #0008}.eyebrow{margin:0;color:#8b681f;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}h1{margin:8px 0 12px;color:var(--green);font:400 clamp(38px,7vw,58px)/1.02 Georgia,serif}h2{margin:0 0 18px;color:var(--green);font:400 28px Georgia,serif}.lead{max-width:690px;margin:0;color:var(--muted)}.notice{margin:26px 0;padding:17px 18px;border-left:4px solid var(--green);background:var(--success);color:#205631}.notice.error{border-color:var(--red);background:var(--redsoft);color:var(--red)}.reference-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:28px 0;padding:18px 20px;background:var(--cream);border:1px solid #e2ddcf}.reference-row span{display:block;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.reference-row strong{display:block;margin-top:3px;color:var(--green);font:24px Georgia,serif}.status{display:inline-block;padding:7px 11px;border-radius:999px;background:#e3eee7;color:#1d5a33;font-size:11px;font-weight:700;text-transform:uppercase}.status-confirmed{background:#f3e6ba;color:#74560f}.status-completed{background:#dce9df;color:#235c34}.status-cancelled{background:#f2dddd;color:#8b2929}.summary{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:26px 0 34px;background:var(--line);border:1px solid var(--line)}.summary div{min-height:92px;padding:17px 19px;background:#fff}.summary small{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.summary strong{display:block;color:#252b25;font-size:15px}.summary .route{grid-column:1/-1}.actions{display:flex;gap:11px;flex-wrap:wrap;margin:24px 0}.button,button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;border:0;padding:13px 19px;background:var(--green);color:white;text-decoration:none;font-weight:700;cursor:pointer}.button.gold{background:var(--gold);color:#111}.button.secondary{background:white;color:var(--green);border:1px solid #aeb7ae}.button.danger,button.danger{background:var(--red)}.panel{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;color:#4f574f;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;min-height:50px;padding:13px 14px;border:1px solid #bfc6bf;background:#fbfcfa;color:var(--text);font-size:16px;letter-spacing:0;text-transform:none}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #173b2a1d}.help{margin:9px 0 0;color:var(--muted);font-size:12px}.cancel-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding:21px;background:#fbf3f2;border:1px solid #ead2cf}.cancel-row p{margin:0;color:#74504c;font-size:13px}.lookup-card{max-width:620px;margin:0 auto}.lookup-card .portal-main{padding-top:48px}.lookup-card form{margin-top:30px}.lookup-card .field{margin-bottom:17px}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.portal-footer{display:flex;justify-content:space-between;gap:20px;padding:18px 22px;color:#aeb7b0;font-size:11px}.portal-footer a{color:var(--gold2);text-decoration:none}@media(max-width:650px){.portal-shell{padding:0}.portal-header{padding:14px 18px}.portal-header img{width:160px;height:56px}.portal-header nav a:not(:last-child){display:none}.portal-main{padding:32px 20px 36px;box-shadow:none}.reference-row{display:block}.reference-row .status{margin-top:13px}.summary,.form-grid{grid-template-columns:1fr}.summary .route,.field.full{grid-column:auto}.actions{display:grid}.actions .button{width:100%}.cancel-row{display:block}.cancel-row button{width:100%;margin-top:15px}.portal-footer{flex-direction:column;align-items:center;text-align:center;gap:4px}}

.portal-shell{width:100%;padding:0 0 50px}.portal-main,.portal-footer{width:min(920px,calc(100% - 36px));margin-right:auto;margin-left:auto}.portal-main{margin-top:28px}.lookup-card{width:100%;max-width:none}.lookup-card .portal-main{width:min(620px,calc(100% - 36px))}
@media(max-width:650px){.portal-main,.lookup-card .portal-main,.portal-footer{width:100%}.portal-main{margin-top:0}}

.portal-main,.portal-footer,.reference-row,.summary,.form-grid,.actions,.panel{min-width:0}.reference-row strong,.summary strong,.help{overflow-wrap:anywhere}

.distance-unknown{display:grid!important;grid-template-columns:20px 1fr;gap:11px;align-items:start;padding:13px 14px;background:#f7f8f5;border:1px solid var(--line);color:#4f574f!important;font-size:12px!important;line-height:1.45;letter-spacing:0!important;text-transform:none!important;cursor:pointer}.distance-unknown input{width:18px!important;height:18px!important;min-height:18px!important;margin:1px 0 0;padding:0}.distance-unknown strong{display:block;margin-bottom:2px;color:var(--green);font-size:13px}.field input:disabled{background:#ecefeb;color:#707770;cursor:not-allowed}

.booking-notes{padding:20px;background:var(--cream);overflow-wrap:anywhere}.booking-notes h2{font-size:22px;margin-bottom:8px}.booking-notes p{margin:0}.booking-next{margin-bottom:24px}.booking-next ol{padding-left:22px}.booking-next li{margin:9px 0}.booking-next p,.booking-recovery{color:var(--muted);font-size:14px;overflow-wrap:anywhere}
