
:root{--ink:#173047;--navy:#112b41;--gold:#b59a6a;--muted:#697781;--cream:#f7f7f3;--line:#e5e7e4;--white:#fff;--soft:#eef2ef}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.container{width:min(1160px,calc(100% - 48px));margin:auto}
.nav{height:88px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(18px)}
.navin{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}
.brand{display:flex;align-items:center;gap:14px;white-space:nowrap}
.monogram{font-family:Georgia,serif;border:1px solid var(--gold);height:46px;width:46px;display:grid;place-items:center;font-size:19px;letter-spacing:-3px;padding-right:3px}
.brandtitle{font-weight:720;letter-spacing:.18em;font-size:12px;line-height:1.5}.brandsub{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.2em}
.links{display:flex;align-items:center;gap:31px;font-size:13px;font-weight:600}.links a:not(.btn):hover{color:#a08453}
.rightnav{display:flex;align-items:center;gap:14px}.lang{display:flex;border:1px solid var(--line);padding:3px;background:#fff}
.lang button{border:0;background:transparent;padding:6px 9px;color:var(--muted);font-weight:700;font-size:11px;cursor:pointer}
.lang button.active{background:var(--navy);color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:var(--navy);color:#fff;border:1px solid var(--navy);padding:14px 21px;font-size:12px;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:.2s}
.btn:hover{background:#28485e;transform:translateY(-1px)}.btn.outline{background:transparent;color:var(--navy);border-color:#ccd2d3}.btn.outline:hover{background:#f0f2ef}
.menu{display:none;background:none;border:0;font-size:26px;color:var(--ink);cursor:pointer}
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#fafaf7 0%, #f1f3ef 100%)}
.herogrid{display:grid;grid-template-columns:1.02fr .98fr;min-height:655px;align-items:center}
.herotext{padding:76px 40px 90px 0;position:relative;z-index:1}
.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.23em;font-size:10px;font-weight:750;color:#8a7654}.eyebrow:before{content:"";height:1px;width:29px;background:var(--gold)}
h1,h2,h3,p{margin-top:0}h1,h2,.bigserif{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.04em}h1{font-size:clamp(46px,5vw,74px);line-height:1.1;margin:28px 0 27px}h1 em{font-style:normal;color:#a58b5f}
.lead{font-size:16px;line-height:1.9;max-width:510px;color:#64747c}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:33px}
.proof{display:flex;gap:42px;margin-top:61px;padding-top:23px;border-top:1px solid #dcdedb}.proof strong{display:block;font-size:23px;font-family:Georgia,serif;font-weight:400}.proof span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.heroart{display:flex;align-items:center;justify-content:center;height:100%;padding:58px 0 58px 32px;position:relative}
.heroart:before{content:"";position:absolute;inset:12% 10% 10% 20%;border:1px solid rgba(181,154,106,.25)}
.heroimgwrap{position:relative;max-width:470px;width:100%;aspect-ratio:4/5;border-radius:0;overflow:hidden;box-shadow:0 28px 70px rgba(17,43,65,.17);z-index:1;background:#d8ddd7}
.heroimgwrap img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:-20px;top:42px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(23,48,71,.08);padding:14px 16px;z-index:2;max-width:200px}
.badge strong{display:block;font-size:14px}.badge span{font-size:11px;color:var(--muted)}
.heroquote{position:absolute;right:-18px;bottom:24px;color:#fff;z-index:2;background:rgba(17,43,65,.96);padding:24px 29px;max-width:310px;box-shadow:0 18px 40px rgba(17,43,65,.22)}
.heroquote b{font-family:Georgia,serif;font-weight:400;font-size:21px;line-height:1.35;display:block}.heroquote small{color:#c8d4d9;display:block;margin-top:14px;letter-spacing:.11em;font-size:10px;text-transform:uppercase}
.section{padding:105px 0}.sectionhead{max-width:670px;margin-bottom:47px}.section h2{font-size:clamp(35px,4vw,51px);line-height:1.13;margin:15px 0 15px}.sectionhead p{color:var(--muted);max-width:585px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card{background:#fff;border:1px solid var(--line);padding:30px 24px 26px;min-height:293px;display:flex;flex-direction:column;transition:.2s}.card:hover{transform:translateY(-4px);border-color:#c7b38f;box-shadow:0 15px 30px #162d3b0a}
.card .num{font-size:11px;color:var(--gold);letter-spacing:.14em;font-weight:700}.card svg{width:37px;height:37px;stroke:var(--ink);stroke-width:1.25;fill:none;margin:24px 0}.card h3{font-size:16px;margin-bottom:9px}.card p{color:var(--muted);font-size:12px;line-height:1.8;flex:1}.card .arr{font-size:20px}
.about{background:#ecf0ed}.aboutgrid{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}
.portrait{min-height:480px;position:relative;background:#d9dfd9;display:flex;align-items:center;justify-content:center;overflow:hidden}
.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,34,45,.04),rgba(18,34,45,.18))}
.portraitlabel{position:absolute;right:0;bottom:0;background:var(--navy);color:white;padding:22px 30px;font-size:12px;letter-spacing:.11em;z-index:1}
.about p{color:var(--muted);line-height:1.9}.ticks{display:grid;gap:13px;margin-top:28px}.tick{display:flex;align-items:flex-start;gap:12px;font-size:14px}.tick:before{content:"✓";color:var(--gold);font-weight:800}
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.step{border-top:1px solid #cbd2ce;padding-top:22px}.step span{font-family:Georgia,serif;color:var(--gold);font-size:34px}.step h3{font-size:17px;margin:18px 0 9px}.step p{font-size:13px;color:var(--muted)}
.reviews{background:#fff}.reviewtop{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:26px;flex-wrap:wrap}
.reviewbadge{display:flex;align-items:center;gap:18px;background:var(--soft);border:1px solid var(--line);padding:18px 20px;min-width:280px}
.stars{font-size:20px;letter-spacing:3px;color:#c6a86d}.reviewbadge strong{display:block;font-size:20px}.reviewbadge span{display:block;font-size:12px;color:var(--muted)}
.reviewgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.review{background:var(--soft);border:1px solid var(--line);padding:24px;min-height:210px;display:flex;flex-direction:column}
.review q{font-family:Georgia,serif;font-size:20px;line-height:1.45;color:var(--ink);display:block;margin:0 0 16px}
.review p{color:var(--muted);font-size:13px;line-height:1.8;flex:1}.review .meta{padding-top:16px;border-top:1px solid #dfe5e1;font-size:12px;color:#7b8790;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.contact{background:var(--navy);color:#fff}.contactgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:start}.contact .eyebrow{color:#d3bd95}.contact p{color:#adbdc7;line-height:1.9}.contact h2{font-size:clamp(36px,4vw,52px)}.contactinfo{margin-top:35px;display:grid;gap:15px;font-size:14px}.contactinfo span{color:#adbdc7}
.form{background:#fff;padding:34px;color:var(--ink);display:grid;gap:15px}.form h3{margin-bottom:3px;font-size:17px}.fields2{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:5px}.field label{font-size:11px;font-weight:700}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #dbe0df;outline:0;background:#fbfcfa;color:var(--ink);border-radius:0;font-size:13px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}.field textarea{resize:vertical;min-height:85px}.consent{display:flex;gap:9px;font-size:11px;color:var(--muted);align-items:flex-start}.consent input{margin-top:4px}.form .btn{width:100%}.note{font-size:10px;color:#75818a;line-height:1.7}
.footer{background:#0b1e2c;color:#e8eff0;padding:31px 0}.footrow{display:flex;justify-content:space-between;gap:22px;align-items:center}.footer small{color:#a9b9bf;font-size:11px;max-width:700px;line-height:1.7}.footer .brandtitle{color:#fff}.footer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:990px){.links{gap:12px}.navcta{display:none}.cards{grid-template-columns:repeat(2,1fr)}.herogrid{min-height:550px}h1{font-size:52px}.proof{gap:20px}.reviewgrid{grid-template-columns:1fr}}
@media(max-width:720px){.container{width:min(100% - 36px,550px)}.nav{height:72px}.menu{display:block}.links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);box-shadow:0 15px 22px #0001}.links.open{display:flex}.brandtitle{font-size:10px}.brandsub{font-size:8px}.monogram{height:40px;width:40px}.herogrid{display:flex;flex-direction:column}.herotext{padding:62px 0 35px}.heroart{width:100%;min-height:auto;padding:6px 0 60px}h1{font-size:clamp(43px,11vw,58px);margin:23px 0}.lead{font-size:15px}.proof{margin-top:38px;gap:18px;flex-wrap:wrap}.heroimgwrap{max-width:100%;aspect-ratio:4/5}.heroquote{left:16px;right:16px;bottom:-18px;max-width:none;padding:16px}.heroquote b{font-size:18px}.badge{left:14px;top:16px}.section{padding:70px 0}.cards{grid-template-columns:1fr}.card{min-height:235px}.card svg{margin:15px 0}.aboutgrid,.contactgrid{grid-template-columns:1fr;gap:35px}.portrait{min-height:350px}.process{grid-template-columns:1fr;gap:18px}.form{padding:22px}.fields2{grid-template-columns:1fr}.reviewtop{align-items:start}.reviewbadge{min-width:unset;width:100%}.footrow{align-items:flex-start;flex-direction:column}}

/* V3 tools and booking */
.tools{background:#f2f4f0}.tooltabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.tooltab{padding:12px 18px;border:1px solid #d4dad6;background:white;color:var(--navy);cursor:pointer;font-size:13px;font-weight:700}.tooltab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.toolpane{display:none;grid-template-columns:1fr 1fr;gap:44px;align-items:stretch}.toolpane.active{display:grid}.toolinputs,.toolresult{background:white;border:1px solid var(--line);padding:32px}.toolresult{background:#173047;color:#fff;display:flex;flex-direction:column;gap:10px;justify-content:center}.toolresult .light{color:#afc0c9;font-size:13px}.toolresult .value{font-family:Georgia,serif;font-size:clamp(38px,4vw,55px);line-height:1.12;margin:2px 0 8px}.toolresult .resultrow{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:12px;border-top:1px solid #456073;font-size:13px}.toolresult .resultrow b{white-space:nowrap;font-size:15px}.toolform{display:grid;gap:18px}.toolform label{font-size:12px;font-weight:700;display:block;margin-bottom:6px}.toolform input,.toolform select{display:block;width:100%;border:1px solid #d7dfdb;background:#fbfcfa;color:var(--ink);padding:12px 13px;outline:0;font-size:16px}.toolform input:focus,.toolform select:focus{border-color:var(--gold)}.inlinefields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hint{font-size:12px;line-height:1.7;color:#697781;margin:14px 0 0}.toolresult .hint{color:#b6c7cd}.bars{height:17px;display:flex;overflow:hidden;background:#dbdfdd;margin:10px 0 0}.bars .principal{background:#b5c8d0}.bars .growth{background:#b59a6a}.legend{display:flex;flex-wrap:wrap;gap:15px;color:#bdcdd4;font-size:11px}.legend span:before{content:'';display:inline-block;width:9px;height:9px;background:#b5c8d0;margin-right:6px}.legend span:last-child:before{background:#b59a6a}.advisor{background:white}.advisorgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;align-items:start}.chatbox{border:1px solid var(--line);background:#fff;box-shadow:0 20px 55px #17304710;overflow:hidden}.chathead{background:var(--navy);color:white;padding:20px 23px;display:flex;justify-content:space-between;align-items:center;gap:15px}.chatsub{font-size:11px;color:#d0dce1}.demo{background:#e6eee9;color:#35604d;padding:6px 10px;font-size:10px;font-weight:800;letter-spacing:.08em}.chatmessages{height:320px;overflow:auto;padding:24px;background:#fbfcfa;display:flex;flex-direction:column;gap:14px}.bubble{max-width:86%;font-size:13px;line-height:1.75;padding:13px 16px;white-space:pre-wrap}.bubble.assistant{background:#edf1ee;align-self:flex-start}.bubble.user{background:var(--navy);color:white;align-self:flex-end}.chatsuggest{display:flex;gap:8px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--line)}.chatsuggest button{border:1px solid #d0d7d2;background:white;color:#173047;padding:7px 9px;font-size:11px;cursor:pointer}.chatinput{display:flex;padding:13px 18px 18px;gap:8px}.chatinput input{min-width:0;flex:1;border:1px solid #d4dbd8;padding:12px;font-size:13px}.chatinput button{background:var(--navy);color:#fff;border:0;padding:10px 16px;cursor:pointer}.booking{background:#eaf0ed}.bookinggrid{display:grid;grid-template-columns:.95fr 1.05fr;align-items:start;gap:10%}.bookingform{background:white;border:1px solid var(--line);padding:30px}.status{font-size:12px;border-left:3px solid var(--gold);padding:12px 16px;background:#f4f5f0;color:#63717a;margin-top:20px}.review .meta a{color:var(--navy)}.reviewbadge .stars{font-family:Georgia,serif;color:var(--navy);font-size:27px;letter-spacing:0}.formstatus{font-size:12px;color:#5d6d71}
@media(max-width:850px){.toolpane,.advisorgrid,.bookinggrid{grid-template-columns:1fr;gap:22px}}@media(max-width:720px){.inlinefields{grid-template-columns:1fr}.toolinputs,.toolresult,.bookingform{padding:22px}.tooltabs{display:grid;grid-template-columns:1fr 1fr}.tooltab{padding:12px 8px}.chatmessages{height:300px}.bookinggrid{gap:25px}}
