
:root{--pg:#214c3b;--pg-dark:#15392d;--pg-pale:#e8eee8;--pg-gold:#d8b986;--pg-ink:#20382d;--pg-muted:#68766c;--pg-line:#d9e1d9;--pg-bg:#f7f6f1}*{box-sizing:border-box}.partner-landing,.partner-dashboard{margin:0;color:var(--pg-ink);background:var(--pg-bg);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}:where(.partner-landing,.partner-dashboard) a{color:inherit}.partner-landing button,.partner-dashboard button,.partner-dashboard input,.partner-dashboard select,.partner-dashboard textarea{font:inherit}.partner-button,.partner-dashboard button:not(#partner-menu):not(.partner-sidebar button):not(.calendar-nav button){display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:12px 20px;border:1px solid var(--pg);border-radius:7px;background:var(--pg);color:#fff;font-weight:600;text-decoration:none;cursor:pointer}.partner-button.outline,.partner-dashboard button.outline{background:transparent;color:var(--pg);border-color:#bbcbbf}.partner-button.gold{background:var(--pg-gold);color:var(--pg-dark);border-color:var(--pg-gold)}button:disabled{cursor:wait;opacity:.55}.partner-landing h1,.partner-landing h2,.partner-login h1{font-family:Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-1.8px}.partner-landing h1{font-size:clamp(44px,5.1vw,76px);margin:24px 0}.partner-landing h1 em{font-weight:400;color:#597b5c}.partner-landing h2{font-size:clamp(30px,3.3vw,48px);margin:10px 0 24px}.partner-eyebrow{font-size:11px;letter-spacing:2.1px;font-weight:700;color:#497256;margin:0 0 12px}.partner-public-nav{max-width:1400px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}.partner-public-nav nav{display:flex;gap:28px;align-items:center}.partner-public-nav nav>a{text-decoration:none;font-size:13px}.partner-logo{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;gap:4px}.partner-logo img{width:145px;height:73px;object-fit:contain}.partner-logo span{font-size:10px;letter-spacing:3.1px;margin-left:7px;font-weight:600}.partner-hero{max-width:1400px;margin:auto;padding:35px 5% 75px;display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.partner-intro{font-size:17px;max-width:470px;color:var(--pg-muted);margin-bottom:28px}.partner-small{font-size:12px;color:var(--pg-muted);line-height:1.7}.partner-role-icons{display:flex;gap:24px;list-style:none;padding:0;margin:0 0 28px;max-width:440px}.partner-role-icons li{display:flex;flex:1;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:12px;font-weight:600;line-height:1.35;min-width:0}.partner-role-circle{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#e3ece1;border:1px solid #cfddcc;color:#315c3f}.partner-role-circle.chauffeur{background:#eee7d7;border-color:#e0d4bc;color:#7b663c}.partner-role-circle.guide{background:#e0eae9;border-color:#cbdcda;color:#3f6a67}.partner-role-circle svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.partner-role-circle .icon-detail{opacity:.65}.partner-hero .partner-intro{margin-bottom:22px}.partner-hero-image{position:relative;margin:0;height:570px;border-radius:100px 8px 8px 8px;overflow:hidden;background:var(--pg)}.partner-hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,#0c2b21e0)}.partner-hero-image img{width:100%;height:100%;object-fit:cover}.partner-hero-image figcaption{position:absolute;z-index:1;bottom:35px;left:35px;color:white}.partner-hero-image figcaption span{display:block;font-size:10px;letter-spacing:2px;margin-bottom:12px}.partner-hero-image figcaption strong{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.2}.partner-story{background:var(--pg-pale);padding:75px max(5%,calc((100vw - 1260px)/2));display:grid;grid-template-columns:1fr 1.3fr;gap:12%}.partner-story>div>p:last-child{color:var(--pg-muted);max-width:350px}.partner-steps{list-style:none;margin:0;padding:0}.partner-steps li{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid #c6d2c7}.partner-steps li:first-child{padding-top:0}.partner-steps li>span{font-family:Georgia,serif;font-size:35px;color:#7d967e}.partner-steps h3{margin:0 0 6px;font-size:18px}.partner-steps p{margin:0;color:var(--pg-muted)}.partner-requirements{max-width:1400px;padding:80px 5%;margin:auto}.partner-requirement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:40px 0}.partner-requirement-grid article{border-top:2px solid #b9cbb9;padding:24px 0}.partner-requirement-grid span{font-size:10px;letter-spacing:1.5px;color:#60735f}.partner-requirement-grid h3{font-family:Georgia,serif;font-size:25px;font-weight:400}.partner-requirement-grid p{color:var(--pg-muted)}.partner-cta{background:var(--pg-dark);color:white;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:55px 7%}.partner-cta .partner-eyebrow{color:#bbd0b6}.partner-cta h2{font-size:36px;margin:0}.partner-footer{display:flex;justify-content:space-between;padding:25px 7%;font-size:11px;letter-spacing:1px}.partner-login{min-height:100vh;padding:35px 6%;background:linear-gradient(100deg,#e2e9df,transparent),var(--pg-bg)}.partner-login-card{max-width:500px;background:white;border:1px solid var(--pg-line);border-radius:20px;margin:10px auto 40px;padding:40px}.partner-login h1{font-size:44px;margin:15px 0}.partner-login-card>p{color:var(--pg-muted)}.partner-login form{display:grid;gap:15px;margin:25px 0}.partner-dashboard label,.partner-admin label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.partner-dashboard input,.partner-dashboard select,.partner-dashboard textarea,.partner-admin input,.partner-admin select,.partner-admin textarea{width:100%;border:1px solid #c8d4ca;border-radius:7px;padding:11px 12px;background:#fff;color:var(--pg-ink);min-width:0}.partner-dashboard textarea{min-height:90px}.partner-dashboard input:focus,.partner-dashboard select:focus,.partner-dashboard textarea:focus{outline:2px solid #779b7f;outline-offset:2px}.partner-dashboard input[type=checkbox],.partner-admin input[type=checkbox]{width:17px;height:17px;accent-color:var(--pg);margin:0}.partner-dashboard .check,.partner-admin .check{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:400}.partner-sidebar{position:fixed;left:0;top:0;bottom:0;width:245px;background:var(--pg-dark);color:#fff;padding:28px 22px;display:flex;flex-direction:column;z-index:20}.partner-sidebar .partner-logo img{filter:brightness(0) invert(1);width:165px}.partner-sidebar .partner-logo span{color:#bad0b9}.partner-nav-label{font-size:10px;letter-spacing:2px;color:#9eb9a6;margin:35px 10px 12px}.partner-sidebar nav{display:grid;gap:7px}.partner-sidebar button{font:inherit;background:none;border:0;color:#c8d7cc;text-align:left;padding:13px 12px;border-radius:7px;cursor:pointer;display:flex;gap:12px;align-items:center}.partner-sidebar button[aria-current=true]{background:#345d47;color:#fff;box-shadow:inset 3px 0 #d8b986}.partner-sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;border-top:1px solid #42604f;padding-top:20px}.partner-sidebar-bottom small{color:#a7beaf}.partner-sidebar-bottom button{padding-left:0}.partner-main{margin-left:245px}.partner-topbar{padding:22px 35px;display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid var(--pg-line);gap:15px}.partner-topbar .partner-eyebrow{margin:0;font-size:9px}.partner-topbar strong{font-family:Georgia,serif;font-size:26px;font-weight:400}.partner-topbar #partner-menu{display:none;border:0;background:none;font-size:24px}#partner-content{padding:30px 35px;max-width:1300px}.partner-welcome h1{font-family:Georgia,serif;font-weight:400;font-size:36px;margin:0 0 10px;line-height:1.2}.partner-welcome p{color:var(--pg-muted);max-width:680px}.partner-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}.partner-metric{background:#fff;border:1px solid var(--pg-line);border-radius:12px;padding:24px}.partner-metric:nth-child(2){background:#e7eee5}.partner-metric:nth-child(3){background:#f1eadd}.partner-metric small{display:block;color:var(--pg-muted);font-size:12px}.partner-metric strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:27px;margin:5px 0}.partner-card{background:white;border:1px solid var(--pg-line);border-radius:12px;padding:25px;margin-bottom:20px}.partner-card h2{font-family:Georgia,serif;font-weight:400;margin:0 0 15px;font-size:25px}.partner-card h3{margin:0 0 12px;font-size:17px}.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.partner-full{grid-column:1/-1}.partner-checks{display:flex;flex-wrap:wrap;gap:10px 20px;padding:8px 0}.partner-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.partner-note{background:#f0f3eb;color:#4e634f;border-left:3px solid #a4b59b;padding:14px 18px;border-radius:4px;margin:15px 0;font-size:13px}.partner-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:11px;background:#e8eced;color:#46565c;text-transform:capitalize;white-space:nowrap}.partner-badge.approved{background:#d8eddd;color:#245532}.partner-badge.submitted,.partner-badge.under_review{background:#e8e2f5;color:#59407f}.partner-badge.changes_requested{background:#fbebcc;color:#845b16}.partner-badge.suspended,.partner-badge.rejected{background:#f6dedc;color:#913b30}.partner-file-list{display:grid;gap:10px;margin-top:16px}.partner-file{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;background:#f4f6f2;border:1px solid #dee5dc;border-radius:8px;flex-wrap:wrap}.partner-file img{width:65px;height:65px;border-radius:6px;object-fit:cover}.partner-file-info{flex:1;min-width:120px}.partner-file-info small{display:block;color:var(--pg-muted)}.partner-file a{font-size:13px;font-weight:600}.partner-timeline{list-style:none;padding:0}.partner-timeline li{border-left:2px solid #bdccba;padding:0 0 23px 18px;margin-left:4px}.partner-timeline small{display:block;color:var(--pg-muted);font-size:11px}.partner-timeline p{margin:5px 0;font-size:13px;white-space:pre-wrap}.partner-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--pg-line);border-top:1px solid var(--pg-line);margin:18px 0}.partner-calendar>div{min-height:66px;border-right:1px solid var(--pg-line);border-bottom:1px solid var(--pg-line);padding:9px;font-size:12px}.partner-calendar .day-name{min-height:0;background:#f4f6f2;font-weight:600}.partner-calendar .blocked{background:#f3e5ce;color:#6c4b1e}.partner-calendar .today{box-shadow:inset 0 0 0 2px #5f8867}.partner-calendar small{display:block;font-size:9px}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:15px}.calendar-nav button{border:1px solid #c7d6c8;background:white;border-radius:5px;padding:5px 13px;cursor:pointer;color:var(--pg)}#partner-toast{position:fixed;top:18px;left:50%;transform:translateX(-50%);max-width:90vw;z-index:100;background:var(--pg-dark);color:white;padding:13px 22px;border-radius:10px;box-shadow:0 5px 30px #0002;display:none}#partner-toast.visible{display:block}#partner-toast.error{background:#953e32}.partner-admin .partner-grid{gap:15px}.partner-admin .partner-card{margin-top:16px}.partner-admin .partner-card button{margin:0}.partner-admin .partner-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;margin-top:22px}.partner-person{padding:20px;border:1px solid #d7e1d7;border-radius:12px;background:#f5f8f2}.partner-person-head{display:flex;align-items:center;gap:13px;margin-bottom:15px}.partner-avatar{width:58px;height:58px;object-fit:cover;border-radius:50%;background:#dce8d9;display:flex;align-items:center;justify-content:center;font-size:25px}.partner-person h3{margin:0;font-size:18px}.partner-person small{display:block;color:#657968}.partner-person dl{display:grid;grid-template-columns:100px 1fr;font-size:13px;gap:6px;margin:15px 0}.partner-person dt{color:#68766c}.partner-person dd{margin:0}.partner-admin-dialog{max-width:1050px;width:95vw;max-height:90vh;overflow:auto;padding:25px;border:1px solid #cfdbcf;border-radius:15px;color:var(--pg-ink)}.partner-admin-dialog::backdrop{background:#122a23aa}.partner-admin-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.partner-admin-dialog .partner-grid{margin-bottom:20px}.partner-admin-dialog dt{color:#6e7f71;font-size:12px;margin-top:12px}.partner-admin-dialog dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.partner-admin-dialog .partner-file{margin:8px 0}.partner-admin [role=status]{min-height:24px;color:#45644c}.partner-dashboard [hidden],.partner-admin [hidden]{display:none!important}.partner-login-status{font-size:13px}#partner-profile-form fieldset{border:0;padding:0;margin:0}.partner-admin fieldset{border:1px solid #dce5d9;border-radius:7px;padding:12px}.partner-admin legend{font-size:12px;color:#617662}button:focus-visible,a:focus-visible{outline:3px solid #b6904e;outline-offset:3px}
.partner-role-circle svg{animation:partner-icon-float 3s ease-in-out infinite;transform-origin:center}
.partner-role-icons li:hover .partner-role-circle{animation:partner-icon-pop .5s ease}
@keyframes partner-icon-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(4deg)}}
@keyframes partner-icon-pop{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.16) rotate(-5deg)}}
@media(prefers-reduced-motion:reduce){.partner-role-circle svg,.partner-role-icons li:hover .partner-role-circle{animation:none!important;transform:none}}
@media(max-width:1000px){.partner-hero{gap:4%}.partner-hero-image{height:470px}.partner-public-nav nav>a:not(.partner-button){display:none}.partner-sidebar{width:215px;padding:25px 15px}.partner-main{margin-left:215px}#partner-content{padding:25px}.partner-metrics{gap:10px}.partner-metric{padding:18px}}
@media(max-width:720px){.partner-public-nav{padding:15px 5%}.partner-logo img{width:120px;height:60px}.partner-hero{grid-template-columns:1fr;padding-top:20px;gap:35px}.partner-hero h1{font-size:47px}.partner-hero-image{height:340px;border-radius:60px 6px 6px 6px}.partner-role-icons{gap:12px;margin-bottom:26px}.partner-role-icons li{font-size:11px}.partner-role-circle{width:60px;height:60px}.partner-role-circle svg{width:33px;height:33px}.partner-story{grid-template-columns:1fr;gap:25px;padding:45px 6%}.partner-requirements{padding:45px 6%}.partner-requirement-grid{grid-template-columns:1fr;gap:12px}.partner-requirement-grid article{padding:18px 0}.partner-requirement-grid h3{margin:10px 0}.partner-cta{flex-direction:column;align-items:flex-start;padding:38px 6%}.partner-footer{flex-direction:column;gap:12px}.partner-login{padding:20px}.partner-login-card{padding:25px;margin-top:20px}.partner-sidebar{transform:translateX(-100%);transition:transform .2s;width:245px;box-shadow:10px 0 30px #0002}.partner-dashboard.nav-open .partner-sidebar{transform:translateX(0)}.partner-main{margin-left:0}.partner-topbar{padding:17px 20px}.partner-topbar #partner-menu{display:block}.partner-topbar>div{flex:1}.partner-topbar strong{font-size:21px}.partner-topbar .partner-eyebrow{font-size:8px;letter-spacing:1px}.partner-grid{grid-template-columns:1fr}.partner-metrics{grid-template-columns:1fr}.partner-metric{padding:16px 20px}.partner-metric strong{font-size:24px}.partner-card{padding:20px}#partner-content{padding:22px 16px}.partner-calendar>div{min-height:53px;padding:6px;font-size:11px}.partner-calendar small{font-size:8px}.partner-welcome h1{font-size:30px}.partner-topbar .partner-badge{max-width:100px;white-space:normal;text-align:center}.partner-admin-dialog{padding:18px}.partner-admin-dialog .partner-grid{grid-template-columns:1fr}}
.tour-filters{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.tour-filters button{padding:10px 18px}.tour-filters [aria-pressed=true]{background:#234f40;color:#fff;border-color:#234f40}.tour-filters small{margin-left:7px;opacity:.8}.tour-card-heading{display:flex;gap:20px;justify-content:space-between;align-items:start}.tour-card-heading h2{margin:9px 0}.tour-card-heading>.staff-response{flex-shrink:0}.staff-response{display:inline-block;border-radius:20px;padding:6px 12px;font-size:13px;font-weight:700;background:#e8edf2;color:#35516b}.staff-response.accepted{background:#d9eee1;color:#225b3d}.staff-response.declined{background:#f9e3dc;color:#943d2e}.staff-response.assigned{background:#fff0cc;color:#7a591a}.tour-fee{display:grid;gap:7px;background:#eef4f0;border:1px solid #d2e1d7;border-radius:12px;padding:18px;margin:18px 0}.tour-fee small{color:#61746b}.tour-day{background:#f1f5f7;border:1px solid #d6e0e6;border-radius:12px;padding:18px;margin:16px 0}.tour-day h3{margin-top:0}.tour-day p,.tour-brief p{font-size:15px;line-height:1.7}.tour-preline{white-space:pre-wrap;overflow-wrap:anywhere}.partner-tour summary{cursor:pointer;padding:12px 0;font-weight:700}.partner-tour .partner-actions{margin-top:22px}.tour-overview{border-left:5px solid #628f7a}.partner-calendar .assigned{background:#dbeaf6;color:#224c70}.partner-response-dialog{border:1px solid #c9dacf;border-radius:18px;padding:28px;max-width:560px;width:calc(100% - 28px);color:#234637}.partner-response-dialog::backdrop{background:#102c26aa}.partner-response-dialog label{display:grid;gap:10px}.partner-response-dialog textarea{min-height:130px;max-width:100%;border-radius:9px;padding:12px;border:1px solid #b7cabc;font:inherit}.partner-response-dialog button{border-radius:9px;padding:12px 18px;border:1px solid #244e40;background:#244e40;color:white;font:inherit;cursor:pointer}.partner-response-dialog button.outline{background:white;color:#244e40}@media(max-width:640px){.tour-card-heading{flex-direction:column}.tour-day{padding:13px}.partner-tour .partner-actions>*{width:100%;text-align:center}.partner-calendar .assigned small{font-size:9px}}
.partner-dashboard .tour-filters button.outline{background:transparent;color:#315845;border:1px solid #a6beaf}.partner-dashboard .tour-filters button[aria-pressed=true]{background:#234f40;color:white;border-color:#234f40}.staff-member-editor{display:grid;gap:12px;align-content:start}.staff-search{display:flex;gap:10px}.staff-search input{min-width:0;flex:1}.staff-search button{flex:none}
#partner-workspace #partner-content .tour-filters button.outline{background:transparent;color:#315845;border:1px solid #a6beaf}#partner-workspace #partner-content .tour-filters button[aria-pressed=true]{background:#234f40;color:white;border-color:#234f40}
