:root{--ink:#132e38;--muted:#536771;--sea:#0e666c;--sea-dark:#094c50;--sand:#f5f2eb;--paper:#fff;--line:#c9d3d2;--gold:#b07226;--error:#a32724}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:var(--sea-dark)}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}[hidden]{display:none!important}
.topbar{background:var(--paper);border-bottom:1px solid var(--line);min-height:72px;padding:12px max(20px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:18px;text-decoration:none;line-height:1.2;white-space:nowrap}.brand strong{display:block;letter-spacing:.02em}.brand-mark{background:var(--ink);color:#fff;padding:9px;font-weight:800;font-size:19px;line-height:1}.header-caption,.text-link{font-size:14px;color:var(--muted)}.shell{width:min(100% - 40px,1120px);margin:auto}.home{padding:84px 0 64px}.eyebrow{color:var(--sea);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;margin:0 0 12px}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(36px,5.5vw,68px);letter-spacing:-.055em;line-height:1.06;margin:0 0 22px;max-width:850px}h2{font-size:clamp(25px,3vw,36px);letter-spacing:-.035em;line-height:1.14;margin:0 0 14px}h3{font-size:20px;line-height:1.25;margin:0 0 8px}.lead{font-size:19px;line-height:1.6;max-width:680px;color:var(--muted);margin:0 0 28px}.notice{background:#e7f2f0;border-left:4px solid var(--sea);padding:16px 20px;color:var(--ink);margin:20px 0}.notice.error{background:#f8e9e7;border-color:var(--error);color:var(--error)}.notice:empty{display:none}.split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:56px 0}.split>div,.card,.service-card,.result{background:var(--paper);border:1px solid var(--line);padding:25px}.split p{color:var(--muted);margin:0}.step-number{color:var(--sea);font-size:13px;font-weight:800;letter-spacing:.1em;display:block;margin-bottom:24px}.callout{background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:36px}.callout .eyebrow{color:#a4d2d0}.callout h2{max-width:560px}.callout p:last-child{color:#d7e1e2;max-width:560px;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 22px;border:2px solid var(--sea);background:var(--sea);color:#fff;text-decoration:none;font-weight:750;cursor:pointer;text-align:center}.button:hover{background:var(--sea-dark);border-color:var(--sea-dark)}.button:disabled{background:#d9dfdc;border-color:#d9dfdc;color:#576665;cursor:not-allowed}.callout .button{background:#fff;color:var(--ink);border-color:#fff;flex:none}.link-button{border:0;background:none;color:var(--sea-dark);font-weight:750;cursor:pointer;padding:10px}footer{border-top:1px solid var(--line);padding:24px 0 40px;color:var(--muted);font-size:13px}
.booking,.status-page{max-width:900px;padding:42px 0 70px}.loading{background:var(--paper);border:1px solid var(--line);padding:26px;color:var(--muted)}.operator-head{display:flex;align-items:flex-start;gap:20px;margin-bottom:24px}.operator-head h1{font-size:clamp(32px,4vw,52px);margin-bottom:8px}.operator-head .lead{font-size:17px;margin:0}.operator-logo{width:76px;height:76px;flex:none;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:23px;font-weight:800;overflow:hidden}.operator-logo img{width:100%;height:100%;object-fit:cover}.operator-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:0 0 42px;color:var(--muted);font-size:14px}.operator-details p{margin:5px 0}.operator-details p:empty{display:none}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:0 0 18px}.section-head>p{color:var(--muted);font-size:14px;max-width:300px;margin:0}.section-head.compact{margin-top:35px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card{text-align:left;width:100%;cursor:pointer;color:var(--ink)}.service-card:hover{border-color:var(--sea);box-shadow:inset 4px 0 0 var(--sea)}.service-card p{color:var(--muted);margin:0 0 14px}.service-card .meta{font-size:13px;font-weight:750;color:var(--sea-dark);margin:12px 0 0}.service-card .price{font-size:20px;font-weight:800;color:var(--ink)}.service-card .category{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--gold)}.service-photo{width:100%;height:150px;object-fit:cover;margin:-25px -25px 20px;width:calc(100% + 50px);display:block}.empty{padding:35px;border:1px solid var(--line);background:var(--paper);color:var(--muted)}#booking-form{background:var(--paper);border:1px solid var(--line);padding:30px;margin-top:30px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid label,.stack label{display:block;font-size:13px;font-weight:750;color:var(--ink)}.form-grid .wide{grid-column:1/-1}input,select,textarea{display:block;width:100%;min-height:44px;border:1px solid #7a9396;border-radius:0;background:#fff;color:var(--ink);padding:10px 12px;margin-top:6px}textarea{resize:vertical;min-height:90px}.required{color:var(--error)}.choices{display:grid;gap:12px;margin:28px 0}.choices label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;color:var(--muted)}.choices input{width:20px;height:20px;min-height:20px;flex:none;margin:2px 0 0;accent-color:var(--sea)}.fare-summary{padding:18px 20px;border:1px solid var(--line);background:var(--sand);font-weight:700}.fare-summary small{display:block;font-size:13px;color:var(--muted);font-weight:400}.fineprint{font-size:13px;color:var(--muted)}.result{max-width:700px;margin:25px 0}.reference{font-size:24px;font-weight:800;letter-spacing:.08em}.state{display:inline-block;padding:5px 9px;background:#e7f2f0;color:var(--sea-dark);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.summary{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:0;margin:24px 0}.summary dt,.summary dd{border-bottom:1px solid var(--line);padding:10px 0;margin:0}.summary dt{color:var(--muted)}
.owner{padding:38px 0 70px}.owner h1{font-size:clamp(34px,4vw,50px)}.workspace-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.workspace-head p{color:var(--muted);margin:0}.owner-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px}.owner-nav{display:flex;flex-direction:column;gap:6px}.owner-nav button{text-align:left;border:1px solid transparent;background:transparent;padding:11px 13px;color:var(--muted);font-weight:700;cursor:pointer}.owner-nav button[aria-selected=true]{border-color:var(--line);background:#fff;color:var(--ink)}.owner-main .card{margin-bottom:20px}.card h2{font-size:26px}.card p{color:var(--muted)}.stack{display:grid;gap:14px}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.badge{display:inline-block;padding:3px 8px;background:#ede8da;color:#71511e;font-size:12px;font-weight:750}.badge.approved{background:#e7f2f0;color:var(--sea-dark)}.list{display:grid;gap:10px}.list-item{border:1px solid var(--line);padding:16px;background:#fff}.list-item h3{margin:0 0 5px}.list-item p{margin:4px 0;color:var(--muted);font-size:14px}.list-item .actions{margin-top:12px}.secondary{border:1px solid var(--sea);background:#fff;color:var(--sea-dark);padding:8px 13px;min-height:40px;cursor:pointer;font-weight:700}.secondary:hover{background:#e7f2f0}.danger{color:var(--error)}.workspace-status{margin:10px 0;min-height:24px;color:var(--sea-dark)}.tabs-line{border-top:1px solid var(--line);margin:28px 0}.muted{color:var(--muted)}
label.choices{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--muted);cursor:pointer}label.choices input{width:20px;height:20px;min-height:20px;flex:none;margin:2px 0 0;accent-color:var(--sea)}
.readiness-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}.readiness-list li{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:11px 12px;font-size:14px}.readiness-list li.ready{background:#e7f2f0}.readiness-list li.missing{background:#fff8eb}.readiness-list .check-mark{font-size:20px;color:var(--sea-dark);line-height:1}.readiness-list li.missing .check-mark{color:var(--gold)}.readiness-list li span:nth-child(2){flex:1}.readiness-list button{min-height:34px;padding:4px 10px}.owner-preview{border:1px solid var(--line);background:#f7faf9;padding:18px;margin:18px 0;overflow-wrap:anywhere}.owner-preview h4{margin:24px 0 10px}.owner-preview h5{font-size:16px;margin:0 0 7px}.owner-preview p{margin:7px 0;white-space:pre-wrap}.preview-service{border-top:1px solid var(--line);padding:13px 0}.preview-service:last-of-type{border-bottom:1px solid var(--line)}#share-link{display:block;overflow-wrap:anywhere;user-select:all}.secondary:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;background:#f2f4f2}
.save-feedback{border:1px solid #8bbdb7;background:#e7f2f0;color:var(--sea-dark)!important;padding:14px 16px;margin:0;font-weight:750}.save-feedback.error{border-color:#dda6a0;background:#f8e9e7;color:var(--error)!important}
.tier-fieldset{border:0;padding:0;margin:10px 0 4px}.tier-fieldset legend{font-size:17px;font-weight:800}.tier-fieldset p{font-size:13px;color:var(--muted);margin:2px 0 12px}.tier-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tier-option{display:flex!important;align-items:center;gap:12px;border:2px solid var(--line);padding:15px;cursor:pointer;min-width:0}.tier-option:has(input:checked){border-color:var(--sea);background:#e7f2f0}.tier-option input{width:20px;height:20px;min-height:20px;flex:none;margin:0;accent-color:var(--sea)}.tier-option .tier-copy{display:grid;min-width:0}.tier-option strong{font-size:16px}.tier-option small{font-size:13px;color:var(--muted);font-weight:600}@media(max-width:760px){.tier-options{grid-template-columns:1fr}}
@media(max-width:760px){.topbar{min-height:64px;padding:10px 20px}.shell{width:min(100% - 32px,1120px)}.home{padding-top:54px}.split,.service-grid{grid-template-columns:1fr}.split{margin:36px 0}.callout{display:block;padding:26px}.callout .button{margin-top:24px}.header-caption{display:none}.operator-head{gap:12px}.operator-logo{width:56px;height:56px;font-size:18px}.section-head{display:block}.section-head>p{margin:8px 0}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}#booking-form{padding:20px}.owner-grid{grid-template-columns:1fr;gap:16px}.owner-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.owner-nav button{min-height:48px;border-color:var(--line);background:var(--paper);white-space:normal}.owner-nav button:last-child{grid-column:1/-1}.workspace-head{display:block}.workspace-head .button{margin-top:18px}.summary{grid-template-columns:1fr}.summary dt{border-bottom:0;padding-bottom:0}.summary dd{padding-top:0}}
.logo-editor{display:flex;align-items:flex-start;gap:20px;padding:18px;border:1px solid var(--line);background:var(--sand);margin:0 0 24px}.logo-preview{width:96px;height:96px;flex:none;display:grid;place-items:center;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:13px;text-align:center;overflow:hidden}.logo-preview img{width:100%;height:100%;object-fit:contain}.logo-controls{min-width:0;flex:1}.logo-controls label{font-size:13px;font-weight:750}.logo-controls input{margin-top:6px}.logo-controls .fineprint{margin:8px 0 12px}
@media(max-width:760px){.logo-editor{display:block}.logo-preview{margin-bottom:14px}}
.trip-notes{white-space:pre-wrap}
.team-link-wrap{padding:14px;border:1px solid var(--line);background:#f7faf9;margin:12px 0}.team-link-wrap a{overflow-wrap:anywhere;word-break:break-word}.team-link-wrap p{margin:0 0 9px}#team-card h3{margin:20px 0 8px}

/* Operator workspace follows the public homepage design without changing customer pages. */
body:has(.owner){background:#f4f7f6;color:#132e38;font-family:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
body:has(.owner) .topbar{background:#f4f7f6;border-bottom-color:#d6e0de}
body:has(.owner) .brand{font-family:"Bricolage Grotesque",system-ui,sans-serif;font-size:20px;font-weight:800;gap:10px}
body:has(.owner) .brand strong{display:inline;letter-spacing:0}
body:has(.owner) .brand-mark{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:9px;color:#f2b632;font-size:15px}
body:has(.owner) .link-button{color:#132e38;text-decoration:underline;text-underline-offset:3px}
body:has(.owner) footer{border-top-color:#d6e0de}
body:has(.owner) a{color:#132e38}
.owner h1,.owner h2,.owner h3,.owner h4,.owner h5{font-family:"Bricolage Grotesque",system-ui,sans-serif}
.owner .eyebrow{color:#2b4a55;font-size:13px;font-weight:700;text-transform:none;letter-spacing:0}
.owner .workspace-head p,.owner .card p,.owner .list-item p,.owner .muted{color:#5b7079}
.owner .workspace-head .eyebrow,.owner .card .eyebrow{color:#2b4a55}
.owner .card{background:#fff;border:1px solid #d6e0de;border-radius:20px}
.owner .list-item,.owner .owner-preview,.owner .team-link-wrap,.owner .logo-editor{border:1px solid #d6e0de;border-radius:16px;background:#fff}
.owner .logo-preview{border-radius:12px;border-color:#d6e0de}
.owner .badge{border-radius:999px;background:#fff5dc;color:#74500e}
.owner .badge.approved{background:#eaf4f1;color:#24544d}
.owner .owner-nav button{border-radius:12px;color:#5b7079}
.owner .owner-nav button[aria-selected=true]{border-color:#d6e0de;background:#fff;color:#132e38;box-shadow:inset 4px 0 0 #f2b632}
.owner .button{border:1.5px solid #132e38;border-radius:12px;background:#132e38;color:#fff;font-weight:600}
.owner .button:hover{background:#2b4a55;border-color:#2b4a55}
.owner .button:disabled{background:#d9dfdc;border-color:#d9dfdc;color:#576665}
.owner .secondary{border:1.5px solid #132e38;border-radius:12px;background:#fff;color:#132e38;font-weight:600}
.owner .secondary:hover{background:#f4f7f6}
.owner .secondary:disabled{border-color:#d6e0de;background:#f4f7f6;color:#5b7079}
.owner a.secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.owner a.secondary[aria-disabled=true]{border-color:#d6e0de;background:#f4f7f6;color:#5b7079;cursor:not-allowed}
.owner input:not([type=checkbox]):not([type=radio]):not([type=file]),.owner select,.owner textarea{border:1px solid #9badad;border-radius:10px}
.owner input[type=file]{border:1px solid #9badad;border-radius:10px}
.owner input[type=checkbox],.owner input[type=radio]{accent-color:#132e38}
.owner .tier-option{border:1.5px solid #d6e0de;border-radius:12px}
.owner .tier-option:has(input:checked){border-color:#132e38;background:#f4f7f6}
.owner .workspace-status{color:#132e38}
.owner .save-feedback{border-radius:10px;color:#132e38!important}
.owner .readiness-list li{border-color:#d6e0de;border-radius:12px}
.owner .readiness-list li.ready{background:#eaf4f1}
.owner .readiness-list .check-mark{color:#132e38}
