@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--paper:#f7f4ee;--white:#fffdf9;--ink:#30272a;--muted:#75696b;--wine:#4a1e2d;--wine-dark:#32151f;--accent:#b09a75;--line:#e1dad0;--green:#527363}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button{border:0}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h1,h2,.large-copy{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.045em;line-height:1.12}h1{font-size:clamp(54px,5.6vw,86px)}h2{font-size:clamp(38px,4vw,58px)}h3{font-weight:500;font-size:21px;line-height:1.35}em{font-weight:400;color:var(--wine)}.pilot-bar{min-height:33px;padding:7px 5%;display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.12em;background:var(--wine-dark);color:#e8ddd4}.pilot-bar>span:first-child{font-weight:600}.pilot-bar b{padding:0 8px;color:var(--accent)}i{display:inline-block;width:6px;height:6px;background:#c2b18e;border-radius:50%;margin-right:7px}header{min-height:106px;margin:0 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;line-height:1.2}.brand>span:last-child{font-family:'Playfair Display',Georgia,serif;font-size:23px}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.23em;margin-top:7px}.monogram{font-family:Georgia,serif;font-size:45px;letter-spacing:-6px;border-right:1px solid var(--line);padding-right:19px;color:var(--wine)}.monogram span{color:var(--accent)}nav{display:flex;gap:25px}.nav-item{padding:10px 0;background:transparent;font-size:12px;color:var(--muted);position:relative}.nav-item.active{color:var(--wine)}.nav-item.active:after{position:absolute;content:'';height:2px;background:var(--wine);bottom:0;left:0;width:100%}.nav-item span{padding-left:4px}.button{background:var(--wine);color:white;display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 24px;font-size:12px;font-weight:500;min-height:53px}.button:hover{background:#632a3d}.button.small{padding:12px 18px;min-height:44px;gap:16px}.button.outline{background:transparent;border:1px solid #bfb3aa;color:var(--wine)}.button.outline:hover{background:#eee7df}.button.light{background:var(--paper);color:var(--wine)}.button.light:hover{background:#e2d8c9}.text-link{background:transparent;padding:0;border-bottom:1px solid #b9ada4;font-size:12px;padding-bottom:5px;display:inline-block}.text-link span{margin-left:13px}.view{display:none}.view.active{display:block}.hero{position:relative;padding:75px 7% 70px;display:grid;grid-template-columns:1.15fr 1fr;gap:35px;min-height:685px;align-items:center;overflow:hidden}.eyebrow{font-size:9px;letter-spacing:.17em;font-weight:600;margin-bottom:24px;color:var(--wine)}.hero-description{max-width:410px;color:var(--muted);font-size:14px;margin-top:27px;line-height:1.85}.actions{display:flex;align-items:center;gap:28px;margin-top:32px}.hero-note{font-size:10px;color:var(--muted);margin-top:26px;display:flex;gap:9px;align-items:center}.tiny-icon{font-size:18px}.portrait-stage{position:relative;display:flex;flex-direction:column;align-items:center;min-height:470px;justify-content:center}.portrait{position:relative;width:min(100%,385px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:#e8e4dc}.portrait img{width:100%;height:100%;object-fit:cover;transform:scale(1.075)}.orbit{position:absolute;border:1px solid #d9ccbb;width:440px;height:440px;border-radius:50%;top:0;left:50%;transform:translateX(-50%)}.orbit-two{width:486px;height:486px;top:-23px;opacity:.5}.orbit-one:after{content:'✦';position:absolute;background:var(--paper);padding:5px;right:13px;top:64px;font-size:26px;color:var(--accent)}.portrait-label{font-size:8px;letter-spacing:.23em;color:var(--muted);margin-top:26px}.portrait-caption{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);padding:18px 65px 18px 23px;width:315px;margin-top:24px}.portrait-caption>span:first-child{font:24px 'Playfair Display',Georgia,serif}.portrait-caption small{font-size:10px;color:var(--muted);margin-top:4px}.portrait-seal{position:absolute;right:20px;top:19px;font:30px Georgia,serif;color:var(--accent)}.hero-number{position:absolute;bottom:20px;right:7%;color:#8d817b;font-size:8px;letter-spacing:.16em}.principles{margin:0 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-around;gap:20px;padding:22px 0;font-size:10px;color:var(--muted)}.principles span:before{content:'✧';margin-right:12px;color:var(--wine)}.section{padding:90px 7%}.practice{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.section-intro>p:last-child{color:var(--muted);max-width:320px;margin-top:26px;font-size:13px}.practice-row{width:100%;background:transparent;display:flex;text-align:left;border-top:1px solid var(--line);padding:25px 0;align-items:flex-start;gap:20px}.practice-row:last-child{border-bottom:1px solid var(--line)}.practice-row p{font-size:12px;color:var(--muted);margin-top:10px;max-width:340px}.row-number{font-size:10px;color:var(--accent);padding-top:6px}.arrow{margin-left:auto;font-size:22px;color:var(--wine)}.practice-row:hover h3{color:var(--wine);text-decoration:underline;text-underline-offset:5px}.process{background:var(--wine-dark);color:var(--paper)}.process em,.closing em{color:#cbb591}.process .eyebrow,.closing .eyebrow{color:#cbb591}.process-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.process-heading p{font-size:13px;color:#d0bdc0;max-width:350px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:55px 0 40px}.steps article{border-top:1px solid #75515c;padding-top:20px}.steps span{font-size:9px;letter-spacing:.13em;color:#cbb591}.steps h3{font-size:18px;margin:14px 0}.steps p{font-size:12px;color:#d0bdc0;max-width:290px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.large-copy{font-size:30px;line-height:1.4}.about p:not(.eyebrow):not(.large-copy){font-size:13px;color:var(--muted);margin-top:24px}.draft-note{display:block;font-size:10px;color:var(--muted);border-left:2px solid var(--accent);padding-left:13px;margin-top:24px}.closing{text-align:center;background:#eae3d8;padding:65px 20px}.closing .eyebrow{color:var(--wine)}.closing h2{margin-bottom:30px}.closing em{color:var(--wine)}.closing .button{background:var(--wine);color:white}footer{padding:40px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line)}footer p{font-size:9px;color:var(--muted);max-width:390px}footer>span{font-size:8px;letter-spacing:.1em;color:var(--muted)}footer b{display:block;color:var(--wine);margin-top:7px}.workspace{padding-top:55px;min-height:75vh}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:38px}.workspace-heading .eyebrow{margin-bottom:17px}.workspace-heading h2{font-size:48px}.assistant-layout{display:grid;grid-template-columns:280px 1fr;gap:30px;max-width:1100px}.assistant-aside{padding:28px;background:#ede6dc;border:1px solid var(--line)}.avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;margin-bottom:20px}.avatar img{width:100%;height:100%;object-fit:cover;transform:scale(1.1)}.assistant-aside h3{font-family:'Playfair Display',serif;font-size:23px}.assistant-aside p{font-size:12px;color:var(--muted);margin:12px 0 20px}.status-label{font-size:10px;color:var(--green)}.status-label i{background:var(--green)}hr{border:0;border-top:1px solid #d7ccbd;margin:25px 0}.assistant-aside h4{margin:0;font-size:12px;font-weight:500}.assistant-aside .button{width:100%;font-size:11px;padding:13px 15px}.assistant-aside small{display:block;font-size:10px;color:var(--muted);margin-top:25px}.chat-panel{border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;min-height:600px}.chat-heading{display:flex;gap:13px;padding:20px;border-bottom:1px solid var(--line);align-items:center}.assistant-symbol{font-size:30px;color:var(--wine)}.chat-heading b{font-size:12px;font-weight:500}.chat-heading small{display:block;font-size:9px;color:var(--muted)}.demo-tag{font-size:8px;letter-spacing:.1em;padding:4px 9px;background:#ede5da;color:var(--wine);margin-left:auto}.messages{height:330px;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:14px}.message{font-size:12px;padding:15px 18px;max-width:87%;white-space:pre-line}.message.bot{background:#f1ece4;align-self:flex-start}.message.user{background:var(--wine);color:white;align-self:flex-end}.chat-options{display:flex;flex-wrap:wrap;gap:8px;padding:10px 22px 18px;min-height:60px}.chat-options button{border:1px solid #d9ccbc;background:transparent;color:var(--wine);font-size:10px;padding:8px 12px;border-radius:20px}.chat-options button:hover{background:#eae1d4}.chat-form{display:flex;border:1px solid var(--line);margin:0 22px;align-items:center;padding:7px}.chat-form input{border:0;min-width:0;width:100%;background:transparent;padding:9px;font-size:12px}.chat-form button{background:var(--wine);color:white;width:36px;height:36px;font-size:20px;flex-shrink:0}.chat-footnote{text-align:center;font-size:9px;color:var(--muted);padding:12px}.dashboard-note{font-size:11px;color:var(--muted);border-left:2px solid var(--accent);padding:10px 15px;background:#eee7dd;margin-bottom:25px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.metrics article{border:1px solid var(--line);background:var(--white);padding:23px}.metrics span{font-size:11px;color:var(--muted)}.metrics strong{display:block;font:43px 'Playfair Display',serif;color:var(--wine);margin:10px 0}.metrics small{font-size:10px;color:var(--muted)}.pipeline-toolbar{margin:38px 0 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.pipeline-toolbar h3{font:26px 'Playfair Display',serif}.pipeline-toolbar label{font-size:10px;color:var(--muted)}select{border:1px solid var(--line);background:var(--white);padding:8px;font-size:11px;margin-left:10px}.pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.pipeline-column{background:#ede8e0;padding:15px;min-height:310px}.column-title{font-size:10px;font-weight:600;display:flex;justify-content:space-between;margin-bottom:20px}.column-title span{color:var(--muted)}.case-card{display:block;text-align:left;width:100%;padding:16px;background:var(--white);border:1px solid var(--line);margin-bottom:12px}.case-card:hover{border-color:var(--accent)}.case-card .case-topic{font-size:8px;color:var(--wine);background:#eee5df;padding:4px 7px}.case-card h4{font-size:12px;font-weight:500;margin:13px 0 6px}.case-card p{font-size:10px;color:var(--muted)}.case-card small{display:block;font-size:8px;color:#8f8178;border-top:1px solid var(--line);padding-top:12px;margin-top:15px}.management-bottom{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:45px}.management-bottom h3{font:27px 'Playfair Display',serif}.management-bottom p{font-size:12px;color:var(--muted);margin:14px 0}.management-callout{border-left:1px solid var(--line);padding-left:25px}.management-callout>span{font-size:10px;letter-spacing:.1em;color:var(--wine)}.project-stamp{border:1px solid var(--accent);padding:16px 25px;text-align:center;font-size:10px;letter-spacing:.15em;color:var(--wine);transform:rotate(4deg)}.project-stamp b{font-size:19px}.strategy-lead{background:var(--wine-dark);color:var(--paper);padding:35px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.strategy-lead h3{font:30px/1.35 'Playfair Display',serif}.strategy-lead p{font-size:12px;color:#d6c6c8}.roadmap{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:45px 0 65px}.roadmap article{border-top:1px solid var(--accent);padding-top:18px}.roadmap span{font-size:9px;letter-spacing:.1em;color:var(--wine)}.roadmap h3{font-size:17px;margin:13px 0}.roadmap p{font-size:12px;color:var(--muted)}.calculator{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line);padding-top:50px}.calculator h3{font:36px/1.2 'Playfair Display',serif}.calculator p{font-size:12px;color:var(--muted);margin:20px 0}.calculator small{font-size:10px;color:var(--muted)}.calculator form>label{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:14px;gap:15px}.calculator input{width:120px;padding:10px;border:1px solid var(--line);background:var(--white);color:var(--wine)}.calc-result{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.calc-result span{display:flex;justify-content:space-between;font-size:11px;margin:12px 0;align-items:center;gap:15px}.calc-result strong{font:29px 'Playfair Display',serif;color:var(--wine)}.responsibilities{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:55px}.responsibilities article{background:#ede6dc;padding:25px}.responsibilities span{font-size:9px;letter-spacing:.15em;color:var(--wine)}.responsibilities h3{font-size:19px;margin:13px 0}.responsibilities p,.launch-checklist p{font-size:12px;color:var(--muted)}.launch-checklist{border:1px solid var(--line);padding:25px;margin-top:25px}.launch-checklist h3{font-size:17px;margin-bottom:13px}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:40px;max-width:550px;width:calc(100% - 32px);max-height:85vh;overflow-y:auto}dialog::backdrop{background:#20121b99;backdrop-filter:blur(3px)}.modal-close{position:absolute;right:14px;top:10px;font-size:25px;background:transparent}.modal-content h2,#modal-content h2{font-size:35px;margin-bottom:20px}#modal-content p{font-size:13px;color:var(--muted);margin:15px 0}#modal-content label{display:block;font-size:11px;margin:18px 0}#modal-content select{display:block;width:100%;margin:8px 0;padding:13px}#modal-content .button{margin-top:12px}.modal-summary{padding:20px;background:#eae2d7;white-space:pre-line;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--wine-dark);color:white;padding:12px 22px;font-size:12px;display:none;z-index:20;max-width:90vw}
@media(min-width:1500px){header,.pilot-bar,footer{padding-left:max(5%,calc((100vw - 1400px)/2));padding-right:max(5%,calc((100vw - 1400px)/2))}header{margin:0}.hero,.section{padding-left:max(7%,calc((100vw - 1250px)/2));padding-right:max(7%,calc((100vw - 1250px)/2))}}
@media(max-width:1000px){header{flex-wrap:wrap;padding:20px 0;gap:14px}nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);padding-top:8px}.hero{padding-top:55px;gap:20px;min-height:620px}h1{font-size:60px}.portrait{width:290px}.orbit{width:330px;height:330px;top:52px}.orbit-two{width:360px;height:360px;top:37px}.portrait-stage{min-height:450px}.portrait-caption{width:280px}.practice{gap:35px}.pipeline{grid-template-columns:repeat(2,1fr)}.calculator{gap:35px}}
@media(max-width:650px){.pilot-bar{font-size:8px;justify-content:center}.pilot-bar>span:last-child{display:none}header{margin:0 6%;min-height:100px}.brand>span:last-child{font-size:20px}.monogram{font-size:35px}header>.button{font-size:9px;padding:9px;min-height:37px;gap:7px}nav{gap:0;justify-content:space-between}.nav-item{font-size:10px}.hero{display:flex;flex-direction:column;padding:40px 7% 55px;gap:35px;align-items:stretch}.eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:20px}h1{font-size:58px}.hero-description{font-size:13px}.actions{gap:20px}.button{font-size:11px;gap:20px;padding:15px 18px}.text-link{font-size:11px}.portrait-stage{min-height:380px;margin-top:5px}.portrait{width:265px}.orbit{width:300px;height:300px;top:0}.orbit-two{width:330px;height:330px;top:-15px}.portrait-label{font-size:7px}.portrait-caption{margin-top:15px;width:275px}.hero-number{font-size:7px;bottom:14px}.principles{display:grid;grid-template-columns:1fr 1fr;padding:18px 5%;font-size:9px;gap:15px}.principles span:before{margin-right:7px}.section{padding:55px 7%}h2{font-size:39px}.practice,.process-heading,.about,.management-bottom,.strategy-lead,.calculator,.responsibilities{grid-template-columns:1fr;gap:30px}.practice{gap:35px}.practice-row h3{font-size:19px}.steps{grid-template-columns:1fr;margin:30px 0;gap:25px}.steps article{padding-top:15px}.steps h3{margin:9px 0}.steps p{max-width:none}.large-copy{font-size:27px}.closing{padding:50px 20px}footer{align-items:flex-start;flex-wrap:wrap;padding:30px 7%;gap:20px}footer p{order:3;max-width:none;width:100%}footer>span{font-size:7px;margin-left:auto}.workspace-heading{align-items:flex-start;flex-wrap:wrap;gap:20px}.workspace-heading h2{font-size:37px}.assistant-layout{grid-template-columns:1fr;gap:15px}.assistant-aside{display:none}.chat-panel{min-height:570px}.messages{padding:18px;height:330px}.chat-options{padding:10px 15px}.chat-form{margin:0 15px}.chat-heading{padding:15px}.chat-heading small{font-size:8px}.metrics{gap:8px}.metrics article{padding:12px}.metrics strong{font-size:32px}.metrics span{font-size:9px}.metrics small{font-size:8px}.pipeline-toolbar{align-items:flex-start;flex-direction:column}.pipeline{grid-template-columns:1fr}.pipeline-column{min-height:100px}.management-callout{padding-left:20px}.project-stamp{padding:10px 15px;font-size:8px}.project-stamp b{font-size:14px}.strategy-lead{padding:25px}.strategy-lead h3{font-size:26px}.roadmap{grid-template-columns:1fr 1fr;gap:25px 20px;margin:30px 0 45px}.roadmap p{font-size:11px}.roadmap h3{font-size:15px}.calculator h3{font-size:32px}.calculator form>label{font-size:10px}.calculator input{width:100px}.responsibilities{gap:15px;margin-top:35px}dialog{padding:35px 24px}.chat-footnote{font-size:8px}}

.privacy-consent{display:block;padding:0 22px 15px;font-size:10px;color:var(--muted);line-height:1.6}.privacy-consent input{accent-color:var(--wine);vertical-align:middle}.privacy-consent button{background:transparent;color:var(--wine);padding:0;text-decoration:underline;font-size:10px}.chat-form button:disabled{opacity:.45}.chat-form input:disabled{opacity:.6}.message{overflow-wrap:anywhere}.messages{height:370px}.chat-panel{min-height:660px}

/* Preserve each bubble and keep feedback visible while awaiting the API. */
.messages{position:relative;flex:0 0 370px;overflow-anchor:none;scroll-padding:18px;overscroll-behavior:contain}
.message{flex:0 0 auto;border-radius:15px 15px 15px 3px;line-height:1.75}
.message.user{border-radius:15px 15px 3px 15px}
.message.is-thinking{display:flex;align-items:center;gap:18px;min-height:62px;min-width:218px;border:1px solid #ded0c1;color:var(--wine);background:#f0e7dc}
.thinking-label{font-size:12px;font-weight:500}
.thinking-dots{display:inline-flex;align-items:center;gap:5px;min-width:34px;height:18px;flex-shrink:0}
.thinking-dots span{display:block;width:6px;height:6px;background:var(--wine);border-radius:50%;animation:thinking-pulse 1.2s ease-in-out infinite}
.thinking-dots span:nth-child(2){animation-delay:.16s}.thinking-dots span:nth-child(3){animation-delay:.32s}
.message.is-answer{animation:answer-enter .22s cubic-bezier(.2,0,0,1) both}
.message.is-error{border-left:3px solid var(--wine)}
#assistant-state{color:var(--wine)}
@keyframes thinking-pulse{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
@keyframes answer-enter{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.thinking-dots span,.message.is-answer{animation:none}.thinking-dots span{opacity:.7}}
@media(max-width:650px){.message{font-size:13px;max-width:94%}.message.is-thinking{gap:12px;min-width:210px}.messages{flex-basis:370px}}
