@charset "UTF-8";
:root{--ink:#203e36;--muted:#63716a;--cream:#f7f5ef;--paper:#eeece4;--copper:#a65d42;--line:#d9ddd4;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;scroll-padding-top:32px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button,a{touch-action:manipulation}button{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--copper);outline-offset:5px}button{border:0;background:none}::selection{background:#d7e2ca}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.05em;line-height:1.1}h1{font-size:clamp(50px,5.35vw,84px);margin-bottom:26px}h2{font-size:clamp(38px,4vw,60px);margin-bottom:34px}h3{font-weight:500;font-size:27px;letter-spacing:-.025em;line-height:1.25}em{font-weight:400;color:var(--copper)}.wrap{width:min(1240px,calc(100% - 100px));margin-inline:auto}.section{padding-block:105px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;line-height:1.7}.header{width:min(1340px,calc(100% - 80px));margin:auto;display:flex;align-items:center;justify-content:space-between;height:116px;gap:25px}.brand{display:flex;align-items:center;gap:14px;white-space:nowrap}.brand-mark{font-family:var(--serif);font-size:40px;letter-spacing:-.09em;line-height:1;position:relative;padding-right:16px}.brand-mark>span{font-family:var(--sans);font-size:22px;position:absolute;right:0;top:-8px}.brand-name{font-size:17px;font-weight:600;letter-spacing:-.035em}.version{font-family:var(--sans);display:inline-block;font-size:9px;font-weight:400;letter-spacing:.02em;vertical-align:middle;opacity:.7;margin-left:5px}.header nav{display:flex;gap:34px;align-items:center;font-size:13px}.header nav a{padding:8px 0}.header nav a:hover{color:var(--copper)}.header nav .nav-contact{border-bottom:1px solid var(--ink);margin-left:10px}.nav-contact span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:52px;padding-top:32px;padding-bottom:76px;align-items:center}.hero-copy{padding:10px 0}.hero .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:30px;font-size:10px}.line{width:27px;height:1px;background:var(--copper);flex-shrink:0}.hero h1 em{display:block}.hero-intro{max-width:390px;color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:32px}.button{min-height:53px;padding:15px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:13px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--cream)}.button-dark:hover{background:#36594b}.button-cream{background:var(--cream);color:var(--ink)}.button-cream:hover{background:#e1e6d6}.button span{font-size:20px;line-height:1}.hero-note{display:flex;align-items:center;gap:13px;font-size:11px;line-height:1.6;color:var(--muted);margin-top:38px}.tiny-star{font-size:34px;line-height:1;color:var(--copper)}.hero-visual{position:relative;aspect-ratio:640/760;max-height:650px;background:#d9dbc8}.hero-visual>img{display:block;width:100%;height:100%;object-fit:cover}.visual-label{position:absolute;bottom:22px;left:25px;right:25px;display:flex;gap:10px;align-items:center;font-size:9px;letter-spacing:.14em;color:var(--ink);background:rgba(247,245,239,.87);padding:13px 15px}.label-dot{width:6px;height:6px;border-radius:50%;background:var(--copper)}.visual-stamp{position:absolute;right:-20px;top:35px;background:var(--ink);color:var(--cream);width:130px;height:130px;padding:20px;font-size:13px;line-height:1.5;transform:rotate(5deg)}.visual-stamp>span{font-family:var(--serif);font-size:21px;font-style:italic}.visual-stamp svg{width:31px;height:31px;display:block;margin:9px 0 0 auto;stroke:#e2b999;stroke-width:1.3;fill:none}.values-strip{border-block:1px solid var(--line)}.values-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:77px;font-size:12px;letter-spacing:.02em}.values-strip span:nth-child(even){font-size:24px;color:var(--copper)}.section-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.section-top .eyebrow{margin-bottom:0}.section-aside{font-size:13px;color:var(--muted);margin:0;max-width:320px}.expertises h2{margin-bottom:52px}.service{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:70px;padding:48px 0}.service:last-child{border-bottom:1px solid var(--line);padding-bottom:50px}.service-side{position:relative;display:flex;flex-direction:column;align-items:flex-start}.service-number{font-family:var(--serif);font-size:20px;color:var(--muted)}.service-icon{stroke:var(--ink);stroke-width:1.3;max-width:125px;width:100%;margin:9px 0 24px 40px}.service-home .service-icon{stroke:var(--copper)}.tag{font-size:9px;letter-spacing:.13em;background:#e8eddf;padding:6px 10px}.service-home .tag{background:#efe4d9;color:#805039}.service-main h3{margin-bottom:16px}.service-main>p{font-size:15px;max-width:590px;color:var(--muted);line-height:1.8}.service-list{list-style:none;padding:0;margin:24px 0;font-size:14px}.service-list li{padding:5px 0 5px 24px;position:relative}.service-list li:before{content:'↗';position:absolute;left:0;color:var(--copper)}.text-link{padding:0 0 5px;border-bottom:1px solid currentColor;display:inline-flex;align-items:center;gap:30px;font-size:13px;font-weight:500}.text-link:hover{color:var(--copper)}.text-link span{font-size:19px}.service-main .scope-note{border-left:2px solid #c5a28d;padding-left:14px;font-size:12px;line-height:1.7;margin-bottom:25px}.approche{background:var(--ink);color:var(--cream)}.approche .eyebrow{color:#c3cdbb}.approach-symbol{font-size:49px;color:#b6c99e;line-height:.8}.approach-heading{display:flex;justify-content:space-between;gap:55px;align-items:flex-end}.approach-heading h2{margin-bottom:0;flex:1.8}.approche em{color:#bfcda8}.approach-heading>p{flex:1;max-width:290px;font-size:14px;color:#d0d7ce;margin:0 0 4px}.steps{margin-top:65px;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid #5b7264;padding-top:22px}.steps article>span{font-size:10px;letter-spacing:.14em;color:#c3cdbb}.steps h3{font-family:var(--serif);font-size:27px;margin:23px 0 14px;font-weight:400}.steps p{font-size:14px;color:#d0d7ce;max-width:310px;margin-bottom:0}.about{display:grid;grid-template-columns:1fr 1.16fr;gap:100px;align-items:center}.about-art{max-width:430px}.about-frame{aspect-ratio:1/1.05;background:#e9e9dc;position:relative;overflow:hidden;display:grid;place-items:center}.about-monogram{font-family:var(--serif);font-size:210px;font-style:italic;color:var(--ink);line-height:1;margin-top:-38px;z-index:1}.orbit{border:1px solid #a2aa93;position:absolute;width:80%;height:80%;border-radius:50%;transform:rotate(-30deg) scaleX(.68)}.orbit-two{transform:rotate(38deg) scaleX(.68)}.orbit-dot{width:22px;height:22px;border-radius:50%;background:var(--copper);position:absolute;left:17%;bottom:21%;box-shadow:0 0 0 8px #e9e9dc}.about-art-caption{display:block;padding:17px 0;font-size:9px;letter-spacing:.2em;text-align:center}.about-copy>.eyebrow{margin-bottom:25px}.about-copy p:not(.eyebrow){color:var(--muted);font-size:15px}.about-copy .text-link{margin-top:10px}.signature{display:block;font-family:var(--serif);font-style:italic;font-size:32px;margin-top:28px;color:var(--copper);transform:rotate(-7deg);transform-origin:left}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;padding-top:30px}.faq h2{font-size:46px}.faq .eyebrow{margin-bottom:25px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;font-size:14px;line-height:1.6}summary::-webkit-details-marker{display:none}summary span{font-size:23px;font-weight:300;transition:transform .2s;color:var(--copper)}details[open] summary span{transform:rotate(45deg)}details p{font-size:14px;color:var(--muted);padding:0 30px 8px 0}.contact{background:var(--ink);color:var(--cream);position:relative}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.contact .eyebrow{color:#c3cdbb}.contact h2{font-size:clamp(45px,4.5vw,68px);margin-bottom:25px}.contact em{color:#bdcba6}.contact p:not(.eyebrow){font-size:14px;color:#d0d7ce;margin:0}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:26px}.contact-email{font-family:var(--serif);font-size:clamp(23px,2.2vw,32px);border-bottom:1px solid #6c8372;padding-bottom:10px}.contact-email span{margin-left:25px}.contact-email:hover{color:#c3d3af}.contact-actions>span{font-size:10px;color:#c3cdbb}.footer{display:flex;justify-content:space-between;align-items:center;padding-block:35px;gap:20px}.footer-brand{font-size:17px;font-weight:600;white-space:nowrap}.footer>p{font-family:var(--serif);font-style:italic;font-size:16px;margin:0;color:var(--muted)}.footer>div{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:10px;color:var(--muted)}.footer button{font-size:10px;padding:0;text-decoration:underline;text-underline-offset:3px}dialog{background:var(--cream);color:var(--ink);border:1px solid var(--line);padding:45px;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto}dialog::backdrop{background:#12271fd1;backdrop-filter:blur(5px)}dialog h2{font-size:39px;margin-bottom:22px}dialog p{font-size:14px;color:var(--muted)}dialog h3{font-size:18px;margin:25px 0 10px}dialog .eyebrow{color:var(--copper);font-size:10px;margin-right:20px}.dialog-close{position:absolute;top:10px;right:14px;font-size:28px;line-height:1;min-width:36px;min-height:36px}.dialog-list{font-size:14px;padding-left:20px;margin-block:24px}.dialog-list li{margin-bottom:10px}.dialog-note{border-left:2px solid var(--copper);padding-left:14px}body.has-dialog{overflow:hidden}fieldset{border:0;margin:22px 0;padding:0}legend,form>label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.topic-options{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #bbc6b8;padding:4px;gap:4px}.topic-options label{position:relative;min-width:0;cursor:pointer}.topic-options input{opacity:0;position:absolute;width:100%;height:100%;margin:0;cursor:pointer}.topic-options span{display:block;text-align:center;padding:10px 3px;font-size:12px;transition:background .2s}.topic-options input:checked+span{background:var(--ink);color:var(--cream)}.topic-options input:focus-visible+span{outline:2px solid var(--copper);outline-offset:2px}form>input,textarea{width:100%;border:1px solid #bbc6b8;background:#fffdf8;padding:12px;color:var(--ink);font-size:14px;margin-bottom:19px;border-radius:0}textarea{resize:vertical}form .button{width:100%;margin-top:0}form .form-note{font-size:10px;margin:12px 0}.fallback-email{font-size:12px;text-decoration:underline;text-underline-offset:3px}#form-status{font-size:12px}#form-status:empty{display:none}.skip{position:fixed;z-index:20;left:15px;top:-80px;background:var(--ink);color:white;padding:12px 18px}.skip:focus{top:12px}
@media(min-width:1500px){.hero{gap:75px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{width:calc(100% - 64px)}.header nav{gap:21px}.hero{gap:32px}.hero .eyebrow{font-size:9px;letter-spacing:.09em}.hero-visual{min-height:500px}.visual-stamp{width:110px;height:116px;font-size:11px;right:-10px;padding:15px}.visual-stamp>span{font-size:19px}.about{gap:60px}.contact-inner{gap:35px}.contact-actions>span{max-width:230px}.service,.faq{gap:50px}}
@media(max-width:800px){.header{height:91px}.brand-name{font-size:15px}.header nav{font-size:11px;gap:15px}.header nav .nav-contact{margin-left:0}.nav-contact span{margin-left:6px}.hero{padding-top:18px;padding-bottom:48px;gap:28px}.hero h1{font-size:53px}.hero-visual{min-height:470px}.hero .eyebrow{max-width:280px}.hero-intro{font-size:14px}.hero .button{gap:15px;padding-inline:18px;font-size:12px}.hero-note{margin-top:28px;font-size:10px}.visual-label{left:14px;right:14px;bottom:15px;font-size:8px;letter-spacing:.08em;padding:10px}.section{padding-block:75px}.about{gap:40px}.about-copy h2{font-size:42px}.about-monogram{font-size:170px}.approach-heading{display:block}.approach-heading>p{max-width:440px;margin-top:25px}.steps{gap:25px;margin-top:45px}.steps h3{font-size:24px}.steps p{font-size:13px}.faq{padding-top:10px;gap:35px}.faq h2{font-size:40px}.contact-inner{align-items:flex-start;flex-direction:column;gap:35px}.contact-actions>span{max-width:none}.contact-email{font-size:29px}.footer>p{display:none}}
@media(max-width:650px){.wrap,.header{width:calc(100% - 40px)}.header{height:85px;position:relative}.brand-mark{font-size:37px}.header nav{display:none;position:absolute;top:76px;right:0;left:0;background:var(--cream);border:1px solid var(--line);z-index:5;padding:15px 22px;box-shadow:0 15px 25px #203e3610;font-size:14px}.header nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:4px}.header nav .nav-contact{margin-top:8px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;padding:9px}.menu-toggle span{display:block;height:1px;background:var(--ink);width:26px;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{grid-template-columns:1fr;gap:37px;padding-top:26px}.hero h1{font-size:clamp(48px,11.3vw,68px);margin-bottom:24px}.hero .eyebrow{max-width:none;font-size:9px;margin-bottom:24px}.hero-intro{font-size:15px;max-width:420px;margin-bottom:27px}.hero-note{margin-top:24px}.hero-visual{min-height:0;max-height:560px;aspect-ratio:1/.98;width:100%}.hero-visual>img{object-position:50% 55%}.visual-stamp{top:22px;right:12px;transform:rotate(5deg);width:108px;height:115px}.visual-label{font-size:8px;letter-spacing:.12em}.values-strip .wrap{flex-wrap:wrap;justify-content:center;column-gap:12px;row-gap:4px;min-height:87px;padding-block:15px;font-size:10px}.values-strip span:nth-child(even){font-size:17px}.values-strip span:last-child{width:100%;text-align:center}.values-strip span:nth-child(4){display:none}.section{padding-block:59px}.section-top{display:block;margin-bottom:24px}.section-aside{margin-top:18px;font-size:12px}.expertises h2{font-size:40px;margin-bottom:35px}.service{grid-template-columns:1fr;gap:24px;padding-top:30px;padding-bottom:35px}.service-side{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:15px}.service-icon{width:65px;margin:0;grid-column:2;grid-row:1;margin-left:auto}.service-number{grid-column:1;grid-row:1}.tag{grid-column:1/3;width:fit-content}.service-main h3{font-size:25px}.service-main>p{font-size:14px}.service-list{font-size:13px;margin-block:19px}.service:last-child{padding-bottom:35px}.approche .section-top{display:flex}.approach-heading h2{font-size:39px}.approach-heading>p{font-size:14px;margin-top:24px}.steps{grid-template-columns:1fr;gap:30px;margin-top:38px}.steps article{padding-top:19px}.steps h3{margin:13px 0 10px;font-size:27px}.steps p{font-size:14px;max-width:none}.about{grid-template-columns:1fr;gap:32px}.about-art{max-width:none}.about-frame{aspect-ratio:1/.73}.about-monogram{font-size:170px;margin-top:-30px}.orbit{width:75%;height:125%}.orbit-dot{left:24%;bottom:16%;width:18px;height:18px}.about-copy h2{font-size:40px}.signature{margin-top:21px}.faq{grid-template-columns:1fr;gap:10px;padding-top:8px}.faq h2 br{display:none}.faq h2{font-size:38px}.faq h2 em:before{content:' '}.faq h2{margin-bottom:22px}.faq .eyebrow{margin-bottom:17px}summary{font-size:13px;padding-block:20px}.contact h2{font-size:47px}.contact p:not(.eyebrow){font-size:13px}.contact-inner{gap:30px}.contact-email{font-size:25px}.contact-email span{margin-left:14px}.contact-actions{gap:22px}.footer{padding-block:25px;align-items:flex-start}.footer-brand{font-size:15px}.footer>div{font-size:9px;gap:7px}.footer button{font-size:9px;max-width:150px;text-align:right}.footer .version{font-size:8px;margin-left:2px}dialog{padding:35px 24px 25px;max-height:calc(100dvh - 24px)}dialog h2{font-size:34px}.topic-options span{font-size:11px}.button{gap:25px}dialog .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
