.assistant-launcher{position:fixed;right:24px;bottom:22px;z-index:40;display:flex;align-items:center;gap:13px;min-height:58px;padding:9px 20px 9px 10px;background:var(--ink);color:var(--paper);border:1px solid #718566;border-radius:4px;box-shadow:0 8px 32px #17271c24;font-size:.875rem}.assistant-launcher>span:last-child{font-size:1.5rem;margin-left:8px}.assistant-mark{display:grid;place-items:center;width:36px;height:36px;background:#c5d6ac;color:var(--ink);font-size:1.15rem;font-weight:700;letter-spacing:-.09em}.assistant-launcher:hover{background:#36533e}.assistant-open{overflow:hidden}
.online-contact{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #ffffff35;padding:30px 0}.online-contact h3{font-size:1.4rem;font-weight:500;letter-spacing:-.03em}.online-contact p{font-size:1rem;color:#c0cbba;line-height:1.7;margin-top:8px}.online-contact button{background:#c5d6ac;color:#263d32;border:0;flex-shrink:0}.online-contact button:hover{background:#e0e9d3}
.cp-assistant{position:fixed;inset:auto 24px 22px auto;margin:0;width:min(620px,calc(100vw - 48px));height:min(850px,calc(100dvh - 44px));max-width:none;max-height:none;padding:0;border:1px solid #c3ccbb;border-radius:6px;color:var(--ink);background:var(--paper);box-shadow:0 22px 100px #10231840;overflow:hidden}.cp-assistant::backdrop{background:#14251d55;backdrop-filter:blur(3px)}.assistant-shell{display:flex;flex-direction:column;height:100%;min-height:0}.assistant-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;background:var(--ink);color:var(--paper)}.assistant-header .mono{color:#c5d6ac;font-size:.75rem;letter-spacing:.035em}.assistant-header h2{font-size:1.75rem;font-weight:500;letter-spacing:-.045em;line-height:1.25;margin-top:10px}.assistant-header>button{background:#ffffff0b;color:var(--paper);border:1px solid #ffffff35;width:44px;height:44px;font-size:1.8rem;line-height:1;flex-shrink:0}.assistant-tabs{display:grid;grid-template-columns:1fr 1.2fr;flex-shrink:0;border-bottom:1px solid var(--line)}.assistant-tabs button{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#e9ece3;border:0;border-bottom:2px solid transparent;min-height:58px;padding:14px 20px;font-size:.875rem;text-align:left}.assistant-tabs button+button{border-left:1px solid var(--line)}.assistant-tabs button[aria-pressed=true]{background:var(--paper);border-bottom-color:var(--green);font-weight:600}.assistant-tabs span{font-family:var(--mono);font-size:.75rem;color:var(--green)}
.assistant-content{overflow:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:28px;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#a7b29b transparent}.assistant-content h3{font-size:1.9rem;font-weight:500;line-height:1.15;letter-spacing:-.055em}.assistant-content p{font-size:1rem;line-height:1.7}.cp-faq-intro p,.cp-step-intro{margin-top:12px;color:var(--muted)}.assistant-status{padding:0 28px;font-size:.875rem;line-height:1.5;color:var(--green);flex-shrink:0;background:#e9ece3;max-height:120px;overflow:auto}.assistant-status:not(:empty){padding-block:12px;border-top:1px solid var(--line)}
.cp-search{display:flex;border:1px solid #a5b298;border-radius:3px;background:white;margin:23px 0;overflow:hidden;gap:2px}.cp-search input{width:100%;min-width:0;border:0;background:transparent;padding:15px;font-size:1rem;color:var(--ink)}.cp-search button{flex-shrink:0;border:0;background:var(--ink);color:var(--paper);padding:12px 15px;font-size:.875rem}.cp-browse>label{font-size:.875rem;font-weight:600;display:block;margin:26px 0 10px}.cp-browse select{width:100%;padding:12px;border:1px solid var(--line);background:#edf0e6;color:var(--ink);font-family:inherit;font-size:1rem;border-radius:2px}.cp-question-list{margin-top:12px}.cp-question{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);font-size:.9375rem;padding:14px 22px 14px 0;line-height:1.5;position:relative}.cp-question::after{content:'↗';position:absolute;right:0;top:14px;color:var(--green)}.cp-question:hover{color:var(--green);background:#57754907}.cp-faq-cta{margin-top:28px;padding:22px;background:#e6ebdd;border-left:2px solid var(--green)}.cp-faq-cta p{margin-bottom:16px}
.cp-primary,.cp-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 17px;border:1px solid var(--ink);border-radius:2px;font-family:inherit;font-size:.875rem;line-height:1.5;text-align:center}.cp-primary{background:var(--ink);color:var(--paper)}.cp-primary:hover{background:var(--green);border-color:var(--green)}.cp-secondary{background:transparent;color:var(--ink);border-color:#a7b29b}.cp-secondary:hover{background:#e8eddf}.cp-inline-action,.cp-clear-choice,.cp-delete,.cp-skip{background:none;border:0;padding:10px 0;font-size:.875rem;text-decoration:underline;text-underline-offset:4px;color:var(--green);min-height:40px;text-align:left}.cp-clear-choice{font-size:.8125rem}.cp-delete{color:#77544a}.cp-conversation{display:grid;gap:24px}.cp-turn{min-width:0}.cp-user-message{background:#e2e9d7;padding:12px 16px;margin-left:28px!important;border-radius:3px;overflow-wrap:anywhere}.cp-answer{margin:12px 15px 0 0;padding:18px;border:1px solid var(--line);background:#f9faf5;border-radius:3px}.cp-answer>.mono{font-size:.75rem;color:var(--green)}.cp-answer h4{font-size:1rem;line-height:1.6;font-weight:600;margin:12px 0 8px}.cp-answer>p{margin-top:10px}.cp-answer .cp-question{font-size:.875rem}.cp-source{display:block;margin-top:14px;font-size:.8125rem;text-decoration:underline;text-underline-offset:3px;line-height:1.6;color:var(--green)}.cp-answer>.cp-inline-action{margin-top:6px}
.cp-progress{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:3px 15px;color:var(--green)}.cp-progress>.mono{font-size:.75rem}.cp-progress-track{width:100%;height:2px;background:#d3dcc8;margin:6px 0 18px}.cp-progress-track span{display:block;height:100%;background:var(--green)}.cp-step-nav{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;margin-bottom:27px}.cp-step-nav button{height:38px;padding:0;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:var(--mono);font-size:.8125rem;border-radius:2px}.cp-step-nav button.has-data{background:#e6ebdd;border-bottom:2px solid #7a9565}.cp-step-nav button[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.cp-inquiry-form{margin-top:26px}.cp-field{margin-bottom:22px}.cp-field>label,.cp-options legend{display:block;margin-bottom:9px;font-size:.875rem;font-weight:600;line-height:1.6}.cp-field>input,.cp-field>select,.cp-field>textarea{display:block;width:100%;background:#fdfef9;color:var(--ink);border:1px solid #bbc5af;border-radius:2px;padding:13px 14px;font-family:inherit;font-size:1rem;line-height:1.55}.cp-field>textarea{resize:vertical}.cp-options{border:0;margin:0;padding:0;min-width:0;display:grid;gap:8px}.cp-options legend{padding:0}.cp-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #c9d1c0;background:#f9faf5;font-size:1rem;line-height:1.5;cursor:pointer;border-radius:2px}.cp-option:has(input:checked){background:#e4ebd9;border-color:var(--green)}.cp-option input{appearance:auto;accent-color:var(--green);width:17px;height:17px;flex-shrink:0;margin:0}.cp-step-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.cp-step-actions .cp-primary{margin-left:auto;min-width:110px}.cp-step-actions .cp-skip{margin-left:auto}.assistant-content .cp-optional{font-size:.8125rem;color:var(--muted);margin-top:15px}.cp-draft-footer{display:flex;align-items:center;gap:18px;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;margin-top:28px}.cp-draft-footer .cp-storage-note{font-size:.8125rem;line-height:1.65;color:var(--muted);max-width:370px}.cp-delete{white-space:nowrap;flex-shrink:0}.cp-error{color:#933c31;background:#f6e9e2;border-left:2px solid #ad6251;padding:12px 15px;font-size:.875rem;line-height:1.6;margin:18px 0}.cp-notice{background:#e9eddf;padding:12px 15px;margin-top:18px;font-size:.875rem!important}.cp-review-sections{margin:25px 0}.cp-review-group{border-bottom:1px solid var(--line)}.cp-review-group summary{padding:15px 0;cursor:pointer;font-size:.9375rem}.cp-review-group dl{margin:0 0 10px;padding:0 14px;border-left:2px solid #bdcbae}.cp-review-group dt{font-size:.8125rem;color:var(--muted);margin-top:13px}.cp-review-group dd{margin:5px 0 0;font-size:1rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.cp-preview-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:10px}.cp-email-preview{width:100%;padding:14px;background:#f9faf5;color:var(--ink);border:1px solid #b7c3aa;border-radius:2px;font-family:inherit;font-size:.875rem;line-height:1.7;resize:vertical}.cp-send-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.cp-send-actions>*{flex:1}.assistant-content .cp-mail-help{font-size:.8125rem;color:var(--muted);margin-top:16px;overflow-wrap:anywhere}.cp-confirm{padding:20px 0}.cp-confirm>.mono{font-size:.75rem;color:var(--green);margin-bottom:24px}.cp-confirm h3{margin-bottom:20px}.cp-confirm .cp-send-actions{margin-top:28px}
@media(max-width:760px){.online-contact{align-items:flex-start;flex-direction:column;gap:20px}.online-contact button{max-width:100%}.assistant-launcher{right:14px;bottom:14px;padding-right:15px;gap:10px;min-height:52px;font-size:.8125rem}.assistant-mark{width:32px;height:32px}.cp-assistant{inset:auto 0 0;width:100%;height:min(920px,100dvh);border-radius:8px 8px 0 0;border-bottom:0}.assistant-header{padding:20px}.assistant-header h2{font-size:1.65rem}.assistant-header .mono{font-size:.75rem}.assistant-tabs button{padding:12px 15px;font-size:.8125rem;min-height:60px}.assistant-content{padding:24px 20px}.assistant-status{padding-inline:20px}.cp-step-nav{gap:4px}.cp-step-nav button{font-size:.75rem}.cp-step-actions{gap:10px}.cp-step-actions .cp-primary{min-width:0}.cp-step-actions .cp-secondary{padding:12px}.cp-draft-footer{flex-direction:column;align-items:flex-start;gap:5px}.cp-draft-footer .cp-storage-note{max-width:none}.cp-answer{margin-right:0}.cp-user-message{margin-left:15px!important}.cp-send-actions{flex-direction:column}.cp-assistant input,.cp-assistant textarea,.cp-assistant select{font-size:1rem}.assistant-launcher:focus-visible{outline-offset:3px}.footer-bottom{padding-bottom:65px}}
@media(max-width:360px){.assistant-tabs button{padding-inline:12px}.assistant-tabs span{display:none}.assistant-content{padding-inline:16px}.cp-step-nav{grid-template-columns:repeat(5,1fr)}.cp-step-actions{flex-wrap:wrap}.cp-search input{padding:12px 9px}}

/* Centered inquiry workspace. FAQ remains outside the public flow. */
.cp-assistant{inset:0;margin:auto;width:min(1000px,calc(100vw - 64px));height:min(850px,calc(100dvh - 64px));border-radius:14px;border:1px solid #ffffff85;box-shadow:0 32px 120px #10231845}
.cp-assistant::backdrop{background:#14251d70;backdrop-filter:blur(7px)}
.assistant-header{padding:24px 32px;flex-shrink:0;background:var(--ink)}
.assistant-header h2{font-size:1.7rem;letter-spacing:-.055em;margin-top:6px}.assistant-header>button{border-radius:50%;background:transparent}
.assistant-workspace{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;flex:1;min-height:0}
.cp-inquiry-aside{grid-column:1;grid-row:1/3;min-height:0;overflow:auto;background:#e9ede2;padding:26px 18px;border-right:1px solid #d5ddcb}
.cp-aside-intro{padding:0 10px 22px}.cp-aside-intro>.mono{color:var(--green);font-size:.75rem}.cp-aside-intro>p:last-child{font-size:.875rem;line-height:1.7;color:var(--muted);margin-top:12px}
.cp-step-nav{display:flex;flex-direction:column;gap:5px;margin:0;position:relative}
.cp-step-nav button{display:flex;align-items:center;gap:13px;padding:10px 12px;min-height:44px;height:auto;border:1px solid transparent;text-align:left;border-radius:5px;font-family:inherit;font-size:.875rem;background:transparent;color:#606e59}
.cp-step-nav .cp-step-number{font-family:var(--mono);font-size:.75rem;opacity:.7}.cp-step-nav .cp-step-name{font-size:.875rem}
.cp-step-nav button.has-data{background:#dce5d0;border:1px solid transparent}.cp-step-nav button[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.cp-step-nav button:hover:not([aria-current]){border-color:#b3c3a3}.cp-step-nav button[aria-current] .cp-step-number{color:#c5d6ac;opacity:1}
.assistant-content{grid-column:2;grid-row:1;padding:30px clamp(24px,4vw,58px);min-width:0;scroll-padding:20px}
.assistant-content h3{font-size:clamp(2rem,3vw,2.7rem);line-height:1.1;letter-spacing:-.055em;text-wrap:balance}
.cp-step-intro{max-width:530px;margin-top:16px}.cp-progress{margin-bottom:20px}.cp-progress-track{margin-bottom:8px;border-radius:5px;height:3px}.cp-progress-track span{border-radius:5px}
.cp-inquiry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;margin-top:30px}
.cp-field{grid-column:1/-1;margin:0;min-width:0}.cp-field[data-field=email],.cp-field[data-field=phone]{grid-column:auto}
.cp-field>label,.cp-options legend{font-size:.875rem;font-weight:500}.cp-field>input,.cp-field>select,.cp-field>textarea{border-radius:6px;background:#fffefa;border-color:#c8d1bf;min-height:52px;padding:14px 16px;max-width:100%}
.cp-field>input:hover,.cp-field>select:hover,.cp-field>textarea:hover{border-color:#8ca27b}.cp-field>input:focus,.cp-field>select:focus,.cp-field>textarea:focus{border-color:var(--green);outline:2px solid #57754935;outline-offset:2px}
.cp-field>input::placeholder,.cp-field>textarea::placeholder{color:#7b8474;font-size:.9375rem}.cp-option{border-radius:7px;min-height:58px;padding:15px 16px;background:#fcfdf8;border-color:#ccd5c3;transition:background .15s,border-color .15s}.cp-option:hover{border-color:#8fa47e}.cp-option:has(input:checked){background:#e6efdc;border-color:var(--green)}.cp-option input{width:19px;height:19px}.cp-options{gap:10px}
.cp-primary,.cp-secondary{border-radius:5px;min-height:48px;padding:13px 20px;font-size:.9375rem}.cp-inline-action,.cp-skip,.cp-delete{font-size:.875rem;min-height:44px}
.cp-fixed-actions{grid-column:2;grid-row:2;padding:16px clamp(24px,4vw,58px);background:#f4f4eff5;border-top:1px solid var(--line);min-width:0}.cp-fixed-actions:empty{display:none}
.cp-fixed-actions .cp-step-actions{border:0;margin:0;padding:0;gap:16px;flex-wrap:nowrap}.cp-fixed-actions .cp-send-actions{margin:0;flex-direction:row}.cp-fixed-actions .cp-step-actions .cp-primary{min-width:125px}.cp-fixed-actions .cp-step-actions .cp-skip{margin-left:auto}
.cp-draft-footer{margin-top:26px;gap:16px;align-items:flex-start}.cp-draft-footer .cp-storage-note{font-size:.8125rem;line-height:1.65}.cp-optional{grid-column:1/-1}.cp-error{grid-column:1/-1}.cp-inquiry-form .cp-error{margin:0}.cp-review-group summary{min-height:48px}.cp-email-preview{border-radius:6px}.assistant-status{padding-inline:32px;max-height:90px}
.cp-assistant button:focus-visible,.cp-assistant a:focus-visible{outline-offset:2px}.cp-assistant h3:focus-visible{outline:none}
@media(min-width:701px) and (max-height:700px){.cp-assistant{height:calc(100dvh - 24px);width:min(1000px,calc(100vw - 24px))}.assistant-header{padding-block:14px}.assistant-header h2{font-size:1.4rem}.cp-aside-intro{display:none}.cp-inquiry-aside{padding-block:15px}.assistant-content{padding-block:22px}}
@media(max-width:700px){
  .cp-assistant{inset:var(--cp-viewport-top,0px) 0 auto;margin:0;width:100%;height:var(--cp-viewport-height,100dvh);max-height:none;border:0;border-radius:0}
  .assistant-header{padding:calc(14px + env(safe-area-inset-top,0px)) 20px 14px;gap:16px}.assistant-header h2{font-size:1.5rem}.assistant-header .mono{font-size:.75rem;letter-spacing:.02em}.assistant-header>button{width:44px;height:44px}
  .assistant-workspace{display:flex;flex-direction:column}.cp-inquiry-aside{flex:none;overflow:hidden;padding:10px 0;border:0;border-bottom:1px solid var(--line)}.cp-aside-intro{display:none}
  .cp-step-nav{flex-direction:row;overflow-x:auto;overscroll-behavior-x:contain;gap:7px;margin:0;padding:2px 20px;scrollbar-width:none}.cp-step-nav::-webkit-scrollbar{display:none}.cp-step-nav button{flex:0 0 auto;min-width:44px;min-height:44px;padding:10px 12px;justify-content:center;border:1px solid #c8d2bc;border-radius:5px}.cp-step-nav .cp-step-number{font-size:.875rem;opacity:1}.cp-step-nav .cp-step-name{display:none}.cp-step-nav button[aria-current] .cp-step-name{display:block;font-size:.875rem}
  .assistant-content{flex:1;min-height:0;padding:22px 20px 24px;scroll-padding:16px}.assistant-content h3{font-size:clamp(1.9rem,8vw,2.6rem)}.cp-progress{margin-bottom:17px;gap:0 10px}.cp-progress>.mono{font-size:.75rem}.cp-progress>.cp-inline-action{font-size:.8125rem}.cp-progress-track{margin:6px 0}.cp-step-intro{font-size:1rem;margin-top:13px}
  .cp-inquiry-form{grid-template-columns:1fr;gap:22px;margin-top:26px}.cp-field[data-field=email],.cp-field[data-field=phone]{grid-column:1/-1}.cp-field>input,.cp-field>textarea,.cp-field>select{font-size:1rem;scroll-margin:18px}.cp-option{padding:14px;min-height:56px;font-size:1rem}
  .cp-fixed-actions{flex:none;width:100%;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:var(--paper)}.cp-fixed-actions .cp-step-actions{gap:10px}.cp-fixed-actions .cp-step-actions .cp-primary{min-width:0;padding:12px 15px}.cp-fixed-actions .cp-step-actions .cp-secondary{padding:12px;min-width:0}.cp-fixed-actions .cp-send-actions{gap:10px}.cp-fixed-actions .cp-send-actions>*{min-width:0;padding:12px 10px;font-size:.875rem}
  .cp-draft-footer{flex-direction:column;gap:3px}.assistant-status{padding-inline:20px;font-size:.8125rem;max-height:76px}.assistant-status:not(:empty){padding-block:9px}.assistant-launcher{bottom:calc(14px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 28px)}
  .online-contact>div{min-width:0}.online-contact button{width:100%;justify-content:space-between}.cp-confirm .cp-send-actions{flex-direction:column}.cp-confirm{padding-top:8px}
}
@media(max-width:360px){.assistant-content{padding-inline:16px}.assistant-header{padding-inline:16px}.assistant-header h2{font-size:1.35rem}.assistant-header .mono{font-size:.6875rem}.cp-fixed-actions{padding-inline:12px}.cp-fixed-actions .cp-step-actions{gap:8px}.cp-fixed-actions .cp-step-actions .cp-primary,.cp-fixed-actions .cp-step-actions .cp-secondary{font-size:.875rem;padding-inline:10px}.cp-step-nav{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.cp-option{transition:none}}

.header-chat-icon,.launcher-chat-icon{display:none}
.header-cta .header-cta-text{font-size:inherit}.header-chat-icon,.launcher-chat-icon{stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){
  :root{--mobile-header-height:calc(76px + env(safe-area-inset-top,0px))}
  html{scroll-padding-top:calc(var(--mobile-header-height) + 16px)}
  .header{position:sticky;top:0;z-index:60;height:var(--mobile-header-height);padding-top:env(safe-area-inset-top,0px);background:#f4f4eff5;backdrop-filter:blur(14px);box-shadow:0 2px 14px #26352e08}
  .mobile-nav{position:fixed;top:var(--mobile-header-height);left:0;right:0;z-index:55;max-height:calc(100dvh - var(--mobile-header-height));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 12px 22px #26352e12}
  .header-cta{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #aabd99;border-radius:50%;background:#e4edd9;color:var(--ink);margin-left:auto}
  .header-cta .header-cta-text,.header-cta .header-cta-arrow{display:none}.header-chat-icon{display:block;width:23px;height:23px}.menu-toggle{flex:0 0 44px;width:44px;height:44px;margin-left:0}
  .assistant-launcher{display:grid;place-items:center;width:60px;height:60px;min-height:60px;border-radius:50%;padding:0;gap:0;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));background:var(--ink);color:#d9e9c5;box-shadow:0 6px 25px #1d352e35;animation:invite-conversation 2.5s ease-out 2}
  .assistant-launcher .assistant-mark,.assistant-launcher .launcher-text,.assistant-launcher .launcher-arrow{display:none}.launcher-chat-icon{display:block;width:28px;height:28px}
  .assistant-launcher:hover,.assistant-launcher:focus-visible{background:var(--green)}
}
@keyframes invite-conversation{0%,100%{box-shadow:0 6px 25px #1d352e35,0 0 0 0 #7e9c6240}65%{box-shadow:0 6px 25px #1d352e35,0 0 0 12px #7e9c6200}}
@media(prefers-reduced-motion:reduce){.assistant-launcher{animation:none}}
