:root{--bone: #f6f1e4;--bone-deep: #ece4cf;--ink: #12312f;--teal-900: #1f4d4a;--teal-600: #2e7d78;--gold: #b8892e;--earth: #5a4630;--magenta: #b3246b;--magenta-dark: #8f1a54;--font-title: "Fraunces", Georgia, "Times New Roman", serif;--font-text: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--tap: 44px;--header-h: 60px;--gutter: clamp(1.25rem, 5vw, 2.5rem);--radius: 6px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--safe-top) + 8px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--font-text);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-title);font-weight:600;line-height:1.15;margin:0 0 .6em;letter-spacing:-.01em}p{margin:0 0 1em}a{color:var(--teal-900);text-underline-offset:3px}:focus-visible{outline:3px solid var(--magenta);outline-offset:3px;border-radius:2px}.sr-only,.q-sr-label label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:1rem;top:-4rem;z-index:100;background:var(--ink);color:var(--bone);padding:.75rem 1rem}.skip:focus{top:calc(var(--safe-top) + .5rem)}.container{width:100%;max-width:1080px;margin-inline:auto;padding-inline:calc(var(--gutter) + var(--safe-left)) calc(var(--gutter) + var(--safe-right))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--tap);padding:.7rem 1.5rem;border:2px solid transparent;border-radius:var(--radius);font:700 1rem/1.2 var(--font-text);text-decoration:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease,opacity .2s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--cta{background:var(--magenta);color:#fff}.btn--cta:hover:not(:disabled){background:var(--magenta-dark)}.btn--lg{min-height:52px;padding:.9rem 2rem;font-size:1.1rem;box-shadow:0 6px 18px #b3246b59}.btn--ghost{background:transparent;color:inherit;border-color:currentColor}.btn--small{padding:.5rem 1rem;font-size:.95rem}.header{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:var(--safe-top);background:#f6f1e4eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(18,49,47,.12)}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;height:var(--header-h);padding-inline:calc(var(--gutter) + var(--safe-left)) calc(var(--gutter) + var(--safe-right));max-width:1080px;margin-inline:auto}.brand{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);text-decoration:none;min-height:var(--tap)}.brand__logo{width:34px;height:38px;flex:none}.brand__name{font-family:var(--font-title);font-weight:700;font-size:1.15rem}.header__nav{display:none}.header__actions{display:flex;align-items:center;gap:.5rem}.lang-toggle{min-width:var(--tap);min-height:var(--tap);border:2px solid var(--teal-900);border-radius:var(--radius);background:transparent;color:var(--teal-900);font:700 .9rem var(--font-text);cursor:pointer}.lang-toggle:hover{background:var(--teal-900);color:var(--bone)}@media (min-width: 880px){:root{--header-h: 68px}.header__nav{display:flex;gap:.25rem}.header__nav a{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 .85rem;color:var(--ink);text-decoration:none;font-weight:500}.header__nav a:hover{text-decoration:underline;text-underline-offset:6px}}@media (max-width: 380px){.brand__name{display:none}}.hero{position:relative;overflow:hidden;min-height:100svh;display:flex;align-items:center;padding:calc(var(--header-h) + var(--safe-top) + 2rem) 0 3rem}.hero__tree{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:.22;pointer-events:none}.hero__tree .tree{width:min(135vw,760px);height:auto;max-height:110%}.hero__content{position:relative}.eyebrow{display:inline-block;margin-bottom:1rem;padding-bottom:.35rem;border-bottom:2px solid var(--gold);color:var(--earth);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero__title{max-width:14ch;font-size:clamp(2.4rem,9.5vw,5rem);font-weight:700;color:var(--ink)}.hero__lead{max-width:34rem;font-size:clamp(1.1rem,3.6vw,1.3rem);color:var(--earth)}.hero__actions{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.75rem}.hero__alt{margin:1rem 0 0;font-size:.9rem;color:var(--earth)}.hero__alt a{display:inline-block;padding:.6rem .25rem;color:var(--ink);text-decoration:underline}.hero__note{font-size:.95rem;color:var(--earth)}@media (min-width: 880px){.hero__actions{flex-direction:row;align-items:center;gap:1.25rem}}.section{padding:clamp(3.5rem,10vw,6.5rem) 0}.section--tint{background:var(--bone-deep)}.section__head{max-width:38rem;margin-bottom:2.25rem}.section__head h2{font-size:clamp(1.9rem,6.5vw,3rem)}.section__head p{color:var(--earth)}.services{list-style:none;margin:0;padding:0;display:grid;gap:0}.service{display:grid;grid-template-columns:auto 1fr;gap:1.1rem;padding:1.5rem 0;border-top:1px solid rgba(18,49,47,.25)}.service__num{font-family:var(--font-title);font-size:2rem;line-height:1;color:var(--gold);min-width:2.4rem}.service h3{font-size:1.35rem;margin-bottom:.4rem}.service p{margin:0;color:var(--earth)}@media (min-width: 880px){.services{grid-template-columns:1fr 1fr;column-gap:3.5rem}}.steps{list-style:none;margin:0;padding:0 0 0 1.4rem;border-left:2px solid var(--teal-600);display:grid;gap:1.75rem}.step{position:relative}.step__dot{position:absolute;left:calc(-1.4rem - 7px);top:.4rem;width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--bone-deep)}.step h3{font-size:1.3rem;margin-bottom:.25rem}.step p{margin:0;color:var(--earth)}@media (min-width: 880px){.steps{grid-template-columns:repeat(4,1fr);border-left:0;border-top:2px solid var(--teal-600);padding:1.75rem 0 0;gap:2rem}.step__dot{left:0;top:calc(-1.75rem - 7px)}}.tag{position:absolute;top:.6rem;left:.6rem;z-index:1;padding:.2rem .6rem;border-radius:99px;background:var(--ink);color:var(--bone);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.portfolio{list-style:none;margin:0;padding:0;display:grid;gap:2rem}.media{position:relative;aspect-ratio:16 / 10;overflow:hidden;border-radius:var(--radius);background:var(--bone-deep)}.media__ph,.media__img,.media__frame{width:100%;height:100%;object-fit:cover;border:0;display:block}.work h3{font-size:1.25rem;margin:.2rem 0 .35rem}.work p{margin:0 0 .4rem;color:var(--earth)}.work__kind{margin:.8rem 0 0!important;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-900)!important}.work__note{font-size:.88rem;font-style:italic}@media (min-width: 700px){.portfolio{grid-template-columns:repeat(6,1fr)}.work{grid-column:span 3}.work--video{grid-column:span 6}.work--video .media{aspect-ratio:21 / 9}}.testi{position:relative;margin:0;padding:3rem 1.5rem 1.5rem;max-width:44rem;background:var(--bone);border-left:4px solid var(--gold)}.testi blockquote{margin:0 0 1rem;font-family:var(--font-title);font-size:clamp(1.25rem,4.5vw,1.7rem);line-height:1.35}.testi figcaption{display:flex;flex-direction:column;color:var(--earth)}.testi__nav{display:flex;align-items:center;gap:1rem;margin-top:1rem;color:var(--ink)}.closing{background:var(--bone-deep);padding:2rem 0}.closing__inner{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.closing__text{margin:0;font:600 1.25rem/1.35 var(--font-title);color:var(--ink)}@media (min-width: 700px){.closing__inner{flex-direction:row;align-items:center;justify-content:space-between;gap:2rem}}.contact{margin:0;display:grid;gap:1.25rem}.contact dt{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--earth)}.contact dd{margin:0;font-size:1.15rem}.contact a{display:inline-block;padding:.5rem 0;min-height:var(--tap);overflow-wrap:anywhere}@media (min-width: 700px){.contact{grid-template-columns:repeat(2,1fr);column-gap:3rem}}.footer{padding:2.5rem 0 calc(2.5rem + var(--safe-bottom));background:var(--ink);color:var(--bone)}.footer a{color:var(--bone)}.footer .brand{color:var(--bone);margin-bottom:.5rem}.footer__links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}.footer__links a{display:inline-flex;align-items:center;min-height:var(--tap)}.footer__legal{margin:0;font-size:.88rem;opacity:.8}.section--dark{background:var(--ink);color:var(--bone)}.section--dark .section__head p{color:#d9d2bd}.quiz{max-width:44rem}.quiz--done{text-align:left}.quiz--done h2{font-size:clamp(1.9rem,6.5vw,2.8rem)}.quiz__card{background:var(--bone);color:var(--ink);border-radius:var(--radius);padding:1.25rem 1.1rem}@media (min-width: 700px){.quiz__card{padding:2rem}}.progress{height:6px;background:var(--bone-deep);border-radius:99px;overflow:hidden}.progress__bar{height:100%;background:var(--teal-600);transform-origin:left center;transition:transform .4s ease}.quiz__step{margin:.9rem 0 .5rem;font:700 .85rem var(--font-text);letter-spacing:.08em;text-transform:uppercase;color:var(--earth)}.quiz__step:focus{outline:none}.quiz__body{animation:step-in .3s ease both}@keyframes step-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}.q-fieldset{border:0;margin:0;padding:0;min-width:0}.q-legend{padding:0;margin-bottom:.4rem;font-family:var(--font-title);font-size:clamp(1.4rem,5.5vw,1.9rem);font-weight:600;line-height:1.2}.q-hint{margin:0 0 1rem;color:var(--earth);font-size:.95rem}.q-field .q-hint{margin:0 0 .35rem;font-size:.85rem}.q-options{display:grid;gap:.6rem}.q-option{position:relative;display:block;cursor:pointer}.q-option input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;cursor:pointer}.q-option span{display:flex;align-items:center;min-height:56px;padding:.7rem 1rem .7rem 3rem;border:2px solid rgba(18,49,47,.3);border-radius:var(--radius);background:#fff9;font-weight:500;position:relative;transition:border-color .15s ease,background-color .15s ease}.q-option span:before{content:"";position:absolute;left:1rem;width:20px;height:20px;border:2px solid var(--teal-900);border-radius:50%;background:var(--bone)}.q-option input[type=checkbox]+span:before{border-radius:4px}.q-option input:checked+span{border-color:var(--teal-900);background:#fff}.q-option input:checked+span:before{background:var(--teal-900);box-shadow:inset 0 0 0 3px var(--bone)}.q-option input[type=checkbox]:checked+span:before{box-shadow:inset 0 0 0 3px var(--bone)}.q-option input:focus-visible+span{outline:3px solid var(--magenta);outline-offset:2px}.q-option:hover span{border-color:var(--teal-600)}.q-field{margin-bottom:1rem}.q-field label,.q-consent{font-weight:500}.q-field label{display:block;margin-bottom:.3rem}.q-field input{width:100%;min-height:52px;padding:.6rem .85rem;border:2px solid rgba(18,49,47,.45);border-radius:var(--radius);background:#fff;color:var(--ink);font:1rem var(--font-text)}.q-field input[aria-invalid=true]{border-color:var(--magenta)}.q-field input:focus-visible{outline:3px solid var(--magenta);outline-offset:1px}.q-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.q-consent{display:flex;gap:.75rem;align-items:flex-start;padding:.5rem 0;font-size:.95rem}.q-consent input{flex:none;width:24px;height:24px;margin:.1rem 0 0;accent-color:var(--teal-900)}.q-error{margin:.4rem 0 0;color:#9c1a5a;font-size:.92rem;font-weight:500}.q-error--box{margin-top:1rem;padding:.75rem 1rem;border-left:4px solid var(--magenta);background:#fff}.quiz__nav{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.5rem}.quiz__nav .btn{flex:1;min-height:52px}.quiz__nav .btn--ghost{color:var(--teal-900);flex:0 0 34%}.q-options--pills{display:flex;flex-wrap:wrap;gap:.6rem}.q-option--pill span{min-height:48px;padding:.5rem 1.1rem;border-radius:99px}.q-option--pill span:before{display:none}.q-option--pill input:checked+span{background:var(--teal-900);border-color:var(--teal-900);color:var(--bone)}.q-other{margin-top:1rem}.q-spinner{display:inline-block;width:1em;height:1em;margin-right:.5em;vertical-align:-.125em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:q-spin .7s linear infinite}@keyframes q-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.q-spinner{animation:none;border-right-color:currentColor;opacity:.6}.quiz__body{animation:none}.progress__bar{transition:none}}.tree{display:block;overflow:visible}.tree--animated .tree__crown-grow{transform-box:fill-box;transform-origin:50% 100%;animation:tree-grow 1.8s cubic-bezier(.22,.8,.3,1) both}.tree--animated .tree__roots{animation:tree-fade 1.4s ease both}.tree--animated .tree__crown-breath{transform-box:fill-box;transform-origin:50% 100%;animation:tree-breathe 9s ease-in-out 1.8s infinite alternate;will-change:transform}.tree--animated .tree__leaves{transform-box:fill-box;transform-origin:50% 100%;animation:tree-sway 6s ease-in-out 1.9s infinite alternate;will-change:transform}.tree--animated .tree__leaves--1{animation-name:tree-sway-b;animation-duration:8.5s;animation-delay:2s}.tree--animated .tree__leaves--2{animation-duration:11s;animation-delay:2.2s}.tree--animated .tree__flow{stroke-dasharray:14 86;stroke-dashoffset:100;opacity:.6;animation:tree-flow 8s linear infinite}.tree--animated .tree__node{transform-box:fill-box;transform-origin:center;animation:tree-pulse 3.2s ease-in-out 1s infinite}.tree--animated .tree__node--1{animation-delay:1.9s}.tree--animated .tree__node--2{animation-delay:2.8s}.tree--animated .tree__drift{transform-box:fill-box;transform-origin:center;opacity:0;animation:tree-drift 16s ease-in-out infinite}@keyframes tree-grow{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes tree-fade{0%{opacity:0}to{opacity:1}}@keyframes tree-breathe{0%{transform:scale(1)}to{transform:scale(1.025)}}@keyframes tree-sway{0%{transform:rotate(-4.5deg)}to{transform:rotate(4.5deg)}}@keyframes tree-sway-b{0%{transform:rotate(3.5deg)}to{transform:rotate(-4deg)}}@keyframes tree-flow{to{stroke-dashoffset:0}}@keyframes tree-pulse{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.5)}}@keyframes tree-drift{0%{opacity:0;transform:translate(0) rotate(0)}12%{opacity:var(--op, .8)}30%{transform:translate(calc(var(--dx) * .9),70px) rotate(calc(var(--rot) * .3))}55%{transform:translate(calc(var(--dx) * -.2),170px) rotate(calc(var(--rot) * .6))}80%{opacity:var(--op, .8)}to{opacity:0;transform:translate(var(--dx),270px) rotate(var(--rot))}}@keyframes tree-pulse-soft{0%,to{opacity:.85}50%{opacity:1}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}*:not(.tree--animated):not(.tree--animated *),*:before,*:after{animation:none!important}.tree--animated .tree__crown-grow,.tree--animated .tree__roots,.tree--animated .tree__crown-breath,.tree--animated .tree__leaves,.tree--animated .tree__flow,.tree--animated .tree__drift{animation:none}.tree--animated .tree__flow,.tree--animated .tree__drift{display:none}.tree--animated .tree__node{animation:tree-pulse-soft 6s ease-in-out infinite;transform:none}}:root{--spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.2, .7, .2, 1)}.demo{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:2.5rem 1.25rem 1.25rem;background:radial-gradient(120% 90% at 15% 10%,rgba(46,125,120,.35),transparent 60%),radial-gradient(90% 80% at 90% 100%,rgba(184,137,46,.3),transparent 60%),var(--bone-deep);overflow:hidden}.demo__glass{position:relative;background:#ffffffc7;border:1px solid rgba(255,255,255,.8);border-radius:14px;box-shadow:0 10px 30px #12312f1f,inset 0 1px #ffffffe6}.demo__label{display:block;font:700 .72rem/1 var(--font-text);letter-spacing:.1em;text-transform:uppercase;color:var(--teal-900)}.demo__tag{position:absolute;left:.6rem;bottom:.6rem;z-index:1;padding:.2rem .6rem;border-radius:99px;background:var(--ink);color:var(--bone);font:700 .78rem/1.2 var(--font-text)}.demo__skel{display:block;width:100%;height:.7rem;border-radius:99px;background:var(--teal-600);opacity:.55;transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease-out) .7s}.demo__skel--big{height:1.6rem;min-width:7rem}.is-on .demo__skel{transform:scaleX(1)}.demo__pill{display:inline-block;padding:.3rem .75rem;border-radius:99px;background:var(--teal-900);color:var(--bone);font:700 .8rem/1.2 var(--font-text);transform:scale(.4);opacity:0;transition:transform .6s var(--spring) 1.6s,opacity .3s ease 1.6s}.demo__pill[data-on=true]{transform:none;opacity:1}.demo__row{display:flex;align-items:center;gap:clamp(1rem,4vw,2.5rem)}.demo__col{display:grid;justify-items:center;gap:.4rem}.funnel{width:clamp(110px,22vw,160px);overflow:visible}.funnel__glass{fill:#ffffff80;stroke:#fffffff2;stroke-width:2}.funnel__drop{fill:var(--teal-600);opacity:0;transform-box:fill-box}.is-on .funnel__drop{animation:drop 2.2s var(--ease-out) infinite;animation-delay:calc(var(--i) * .16s)}.demo[data-visible=false] .funnel__drop{animation-play-state:paused}@keyframes drop{0%{transform:translate(0);opacity:0}12%{opacity:1}70%{transform:translate(var(--x),120px);opacity:1}to{transform:translate(var(--x),150px);opacity:0}}.demo__stat{display:grid;gap:.5rem;padding:1rem 1.25rem;min-width:9rem;transform:translateY(16px) scale(.94);opacity:0;transition:transform .7s var(--spring) .3s,opacity .4s ease .3s}.is-on .demo__stat{transform:none;opacity:1}.demo__stat--wide{justify-items:start;padding:1.25rem 1.5rem}.demo__chart{width:min(100%,340px);padding:.9rem 1rem 1rem}.demo__chart svg{display:block;width:100%;height:clamp(5.5rem,24vw,9.5rem);margin-top:.4rem;overflow:visible}.bars__bar{fill:#2e7d788c;transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);transition:transform .8s var(--spring);transition-delay:calc(var(--i) * .09s)}.is-on .bars__bar{transform:scaleY(1)}.bars__line{fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.bars__reveal{transform-box:fill-box;transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease-out) .9s}.is-on .bars__reveal{transform:scaleX(1)}.bars__tip{fill:var(--gold);transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .5s var(--spring) 1.8s}.is-on .bars__tip{transform:scale(1)}.orders{display:grid;justify-items:center;gap:.55rem;width:min(100%,260px)}.orders__card{display:flex;align-items:center;gap:.6rem;width:100%;padding:.65rem .9rem;font:700 .95rem/1.2 var(--font-text);color:var(--ink);transform:translateY(-30px) scale(.9);opacity:0;transition:transform .6s var(--spring),opacity .3s ease;transition-delay:calc(var(--i) * .25s)}.is-on .orders__card{transform:none;opacity:1}.orders__dot{width:10px;height:10px;border-radius:50%;background:var(--magenta);box-shadow:0 0 0 4px #b3246b2e}.orders__total{margin-top:.3rem;transition-delay:1s}.steps--anim{position:relative;border-color:transparent!important}.steps--anim:before{content:"";position:absolute;left:-2px;top:0;width:2px;height:100%;background:var(--teal-600);transform-origin:top;transform:scaleY(0);transition:transform 1.4s var(--ease-out)}.steps--anim.is-in:before{transform:scaleY(1)}.steps--anim .step{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .6s var(--spring);transition-delay:calc(.2s + var(--i) * .3s)}.steps--anim .step__dot{transform:scale(0);transition:transform .5s var(--spring);transition-delay:calc(.2s + var(--i) * .3s)}.steps--anim.is-in .step{opacity:1;transform:none}.steps--anim.is-in .step__dot{transform:scale(1)}@media (min-width: 880px){.steps--anim:before{left:0;top:-2px;width:100%;height:2px;transform-origin:left;transform:scaleX(0)}.steps--anim.is-in:before{transform:scaleX(1)}}.btn--done,.btn--done:disabled{background:var(--teal-600)!important;opacity:1;animation:btn-pop .55s var(--spring)}.btn__check{width:1.15em;height:1.15em}.btn__check path{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.btn__reveal{transform-box:fill-box;transform-origin:left;animation:check-draw .4s var(--ease-out) .15s backwards}@keyframes btn-pop{0%{transform:scale(.9)}to{transform:scale(1)}}@keyframes check-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion: reduce){.demo *,.steps--anim:before,.steps--anim .step,.steps--anim .step__dot,.btn--done,.btn__reveal{animation:none!important;transition:none!important}.demo__stat,.demo__pill,.orders__card,.steps--anim .step{opacity:1!important;transform:none!important}.bars__bar,.bars__tip,.bars__reveal,.demo__skel,.steps--anim .step__dot,.steps--anim:before{transform:none!important}}
