@font-face{font-family:Manrope;src:url('assets/manrope-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-semibold.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--paper:#f5f3ed;--ink:#26252b;--muted:#66636b;--line:#d8d5cf;--accent:#6341d9;--lilac:#e5def6;--font:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}a,button,input,textarea,select{outline-offset:5px;touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent)}::selection{background:var(--lilac)}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:var(--ink);color:white;z-index:10}.skip:focus{top:10px}header{max-width:1600px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:inline-flex;align-items:center;font-weight:700;font-size:34px;letter-spacing:-2px;line-height:1.1}.brand-dot{color:var(--accent)}.brand-mark{width:20px;height:20px;border-radius:50% 50% 0 50%;transform:rotate(-45deg);background:var(--accent);margin-right:12px;position:relative}.brand-mark:after{content:'';width:6px;height:6px;background:var(--paper);border-radius:50%;position:absolute;top:7px;left:7px}nav{display:flex;gap:28px;font-size:14px}nav a{padding:10px 0}.header-end{display:flex;align-items:center;gap:27px}.languages{display:flex;gap:9px;font-size:12px}.languages a{padding:8px 2px;color:var(--muted)}.languages [aria-current]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--accent);border:1px solid var(--accent);color:#fff;padding:15px 22px;min-height:50px;border-radius:3px;font-weight:600;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#4f2dbc;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.header-cta{padding:12px 18px;min-height:44px}.text-link{display:inline-block;background:none;border:0;border-bottom:1px solid currentColor;padding:5px 0;font-size:14px;line-height:1.5;color:inherit}.text-link:hover,nav a:hover{color:var(--accent)}h1,h2,h3,p{margin:0}h1{font-size:clamp(64px,7.7vw,116px);line-height:1.05;letter-spacing:-.068em;font-weight:600}h1 span{color:var(--accent)}h2{font-size:clamp(38px,4.2vw,64px);line-height:1.1;letter-spacing:-.055em;font-weight:600}h3{font-size:28px;line-height:1.2;letter-spacing:-1.2px;font-weight:600}.eyebrow{font-size:11px;font-weight:600;line-height:1.5;letter-spacing:1.3px;display:block}.hero{max-width:1600px;margin:auto;padding:44px 5% 44px}.hero>.eyebrow{margin-bottom:28px}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-top:30px}.hero-bottom>p{max-width:500px;font-size:19px;line-height:1.5;color:var(--muted)}.hero-bottom>div{display:flex;align-items:center;gap:24px}.hero-bottom .text-link{font-size:13px}.journey{margin:0 auto;max-width:1600px;padding:24px 5% 28px;background:#e7e0f3;border-top:1px solid #d4c9e9;border-bottom:1px solid #d4c9e9}.journey-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;margin-bottom:20px}.journey-heading>span:first-child{font-weight:600}.journey-heading>span:last-child{font-size:11px;color:#625773}.journey-grid{display:grid;grid-template-columns:.72fr 1.5fr .86fr;gap:30px;align-items:start}.journey-grid .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:14px}.journey-ad{transform:rotate(-2deg)}.journey-ad a,.journey-web a{display:block;overflow:hidden;box-shadow:0 12px 35px #34294617;transition:transform .25s}.journey-ad a:hover,.journey-web a:hover{transform:translateY(-4px)}.journey-ad img,.journey-web img{display:block;width:100%;height:auto}.journey-web{padding-top:24px}.journey-web img{aspect-ratio:1.64;object-fit:cover;object-position:top}.journey-book{padding-left:8px}.booking-graphic{padding:21px;background:#f8f5ec;max-width:260px;border-radius:4px;box-shadow:0 12px 35px #34294612;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;font-size:13px}.booking-check{width:32px;height:32px;border:1px solid #49735b;border-radius:50%;color:#49735b;display:grid;place-items:center;font-size:18px}.booking-rule{width:100%;height:1px;background:#d8d2c8;margin:5px 0}.booking-graphic>span:last-child{font-size:20px;letter-spacing:2px}.booking-graphic i{font-style:normal;color:#928879;padding:0 12px}.journey-book h2{font-size:25px;letter-spacing:-1px;margin-top:19px}.journey-book p{font-size:13px;margin-top:8px;color:#625773;line-height:1.6}.journey-book .text-link{font-size:12px;margin-top:14px}.journey-note{font-size:12px;margin-top:24px;color:#625773}.section{padding:88px 5%;max-width:1600px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:42px}.section-top .eyebrow{margin-bottom:20px}.section-top>p{max-width:350px;color:var(--muted);font-size:15px}.project{display:grid;grid-template-columns:1.25fr 1fr;column-gap:48px;margin-top:52px;padding-top:30px;border-top:1px solid var(--line)}.project-heading{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.project-heading .eyebrow{color:var(--muted)}.project-heading h3{font-size:35px}.website-shot{display:block;position:relative;overflow:hidden;padding:25px 25px 50px;background:#ebe5dc;border-radius:3px;align-self:start}.derma .website-shot{background:#dce7e1}.restaurant .website-shot{background:#e8d9bf}.website-shot img{display:block;width:100%;height:auto;aspect-ratio:1.45;object-fit:cover;object-position:top;box-shadow:0 9px 24px #27232d0d;transition:transform .35s}.website-shot:hover img{transform:translateY(-4px)}.shot-link{position:absolute;bottom:13px;right:25px;font-size:13px}.project-info{align-self:center;min-width:0}.project-info>p{font-size:18px;line-height:1.6;max-width:440px}.campaigns{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:28px 0 15px}.campaigns img{width:100%;height:auto;display:block;transition:transform .2s}.campaigns a:hover img{transform:translateY(-4px)}.project-info>.text-link{font-size:13px}.services{background:#292631;color:#f6f3ec;max-width:none}.services .section-top,.services .service-tabs,.services #service-panel{max-width:1440px;margin-left:auto;margin-right:auto}.services .section-top>p{color:#c7c0d0}.service-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #61596d}.service-tabs button{border:0;background:none;color:#c7c0d0;text-align:left;font-size:18px;padding:18px 10px 20px 0;line-height:1.4;position:relative}.service-tabs button[aria-selected=true]{color:white}.service-tabs button[aria-selected=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:18px;height:3px;background:#b6a1ff}.service-tabs button:hover{color:white}#service-panel{display:grid;grid-template-columns:1.6fr 1fr;gap:60px;padding-top:40px;min-height:335px}.service-content{display:flex;gap:28px}.service-number{color:#b6a1ff;font-size:15px;padding-top:6px}.service-content h3{font-size:32px;max-width:530px;margin-bottom:17px}.service-content p{color:#c7c0d0;max-width:540px}.service-content ul{display:flex;gap:8px 20px;flex-wrap:wrap;padding:0;list-style:none;margin:22px 0}.service-content li{font-size:12px;border:1px solid #61596d;padding:5px 10px;border-radius:2px}.service-content .text-link{color:#d1c2ff}.service-example{border-left:1px solid #61596d;padding:4px 0 0 35px}.service-example .eyebrow{color:#b6a1ff}.service-example>p{font-size:21px;line-height:1.55;margin-top:20px;max-width:350px}.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:100px;padding-bottom:100px}.about .eyebrow{margin-bottom:25px}.about-lead{font-size:20px;line-height:1.6;margin-top:28px}.bio{color:var(--muted);font-size:14px;margin-top:25px}.about ol{list-style:none;padding:0;margin:0}.about li{display:flex;gap:23px;padding:27px 0;border-top:1px solid var(--line)}.about li>span{font-size:12px;color:var(--accent);padding-top:5px}.about li h3{font-size:24px}.about li p{margin-top:12px;font-size:15px;color:var(--muted)}.pricing{background:#eae5f1;max-width:none}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.price-grid article{border-top:1px solid #b9adcb;padding-top:25px;display:flex;flex-direction:column}.price-grid h3{font-size:21px;margin-bottom:25px}.price-grid strong{font-size:clamp(28px,3.4vw,46px);letter-spacing:-2px;line-height:1.2;font-weight:600}.price-unit{font-size:13px;display:block;margin:9px 0 22px;color:#60536b}.price-grid p{font-size:15px;max-width:350px;margin-bottom:25px}.price-grid .text-link{align-self:flex-start;margin-top:auto}.price-note{font-size:12px;margin-top:35px;color:#60536b}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:95px;padding-bottom:95px}.contact .eyebrow{margin-bottom:23px}.contact>div>p:not(.eyebrow){max-width:400px;margin-top:25px;color:var(--muted)}.email-label{display:block;font-size:12px;margin-top:35px;color:var(--muted)}.email-address{display:inline-block;font-size:clamp(19px,2vw,28px);letter-spacing:-.8px;border-bottom:1px solid var(--line);padding-bottom:4px;margin-top:6px}.contact .remote{font-size:12px!important;max-width:320px!important}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}form label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}form input,form textarea,form select{display:block;width:100%;min-width:0;background:transparent;border:1px solid #b9b5bd;border-radius:3px;padding:12px 13px;margin-bottom:20px;color:var(--ink);font-size:15px}form textarea{resize:vertical;min-height:125px}form ::placeholder{color:#757079;font-size:14px}.form-note{font-size:12px;color:var(--muted);margin:0 0 20px}.form-actions{display:flex;align-items:center;gap:24px}.form-actions .text-link{font-size:12px}#form-status{font-size:13px;margin-top:15px;color:var(--accent)}.privacy-note{font-size:11px;color:var(--muted);margin-top:16px}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px;max-width:1600px;margin:auto}footer .brand{font-size:29px}footer p,footer>a:last-child{font-size:13px}footer>a:last-child{border-bottom:1px solid currentColor}
@media(min-width:1600px){.services,.pricing{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1050px){nav{gap:18px}.header-end{gap:18px}.hero-bottom{align-items:flex-start}.hero-bottom>p{max-width:350px;font-size:17px}.hero-bottom>div{flex-direction:column;align-items:flex-start;gap:12px}.journey-grid{gap:20px;grid-template-columns:.8fr 1.3fr .9fr}.journey-book .booking-graphic{padding:14px}.journey-book h2{font-size:22px}.project{gap:25px}.project-info>p{font-size:16px}.service-tabs button{font-size:16px}#service-panel{gap:30px}.service-content{gap:18px}.service-content h3{font-size:28px}.about{gap:7%}.contact{gap:6%}}
@media(max-width:760px){html{scroll-padding-top:18px}header{padding:20px 6%;gap:12px;flex-wrap:wrap}.brand{font-size:30px}.brand-mark{width:16px;height:16px;margin-right:9px}.brand-mark:after{width:5px;height:5px;left:5.5px;top:5.5px}nav{order:3;width:100%;justify-content:space-between;font-size:13px;border-top:1px solid var(--line);padding-top:12px;gap:20px}nav a{padding:3px 0}.header-end{gap:15px}.languages{font-size:11px;gap:7px}.header-cta{padding:9px 12px;min-height:40px;font-size:12px;gap:12px}.hero{padding:33px 6% 35px}.hero>.eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:24px}h1{font-size:clamp(46px,10.4vw,78px);letter-spacing:-.065em;line-height:1.09}h2{font-size:clamp(36px,8vw,50px)}.hero-bottom{display:block;margin-top:23px}.hero-bottom>p{font-size:17px;max-width:430px}.hero-bottom>div{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:13px 20px;margin-top:24px}.hero-bottom .button{font-size:13px;padding:13px 16px;gap:18px}.hero-bottom .text-link{font-size:12px}.journey{padding:22px 6% 25px}.journey-heading{font-size:12px;align-items:flex-start;gap:15px}.journey-heading>span:last-child{font-size:10px;max-width:135px;text-align:right}.journey-grid{grid-template-columns:.8fr 1.25fr;gap:16px}.journey-grid .eyebrow{font-size:8px;letter-spacing:.5px;margin-bottom:10px}.journey-web{padding-top:20px}.journey-web img{aspect-ratio:1.13;object-fit:cover}.journey-book{grid-column:1/-1;display:grid;grid-template-columns:105px 1fr;column-gap:20px;padding:20px 0 0;border-top:1px solid #c9bddc;margin-top:7px}.journey-book>.eyebrow{grid-column:1/-1;margin-bottom:15px}.journey-book .booking-graphic{grid-column:1;grid-row:2/5;padding:12px;gap:4px}.booking-graphic>span{font-size:10px}.booking-graphic>span:last-child{font-size:13px;letter-spacing:0}.booking-graphic i{padding:0 5px}.booking-check{width:25px;height:25px;font-size:14px!important}.journey-book h2{font-size:24px;margin:0}.journey-book p{font-size:12px;margin-top:5px}.journey-book .text-link{font-size:11px;justify-self:start;margin-top:7px}.journey-note{font-size:11px;margin-top:20px}.section{padding:58px 6%}.section-top{display:block;margin-bottom:30px}.section-top .eyebrow{font-size:10px;margin-bottom:17px}.section-top>p{margin-top:22px;max-width:440px;font-size:14px}.project{display:block;margin-top:33px;padding-top:23px}.project-heading{margin-bottom:17px;gap:10px}.project-heading h3{font-size:28px}.project-heading .eyebrow{font-size:9px;letter-spacing:.7px}.website-shot{padding:18px 18px 44px}.website-shot img{aspect-ratio:1.38}.shot-link{font-size:12px;right:18px;bottom:12px}.project-info{padding:22px 0 0}.project-info>p{font-size:16px}.campaigns{margin-top:20px;gap:8px}.service-tabs{grid-template-columns:1fr 1fr;gap:0 15px}.service-tabs button{font-size:15px;padding:13px 0}#service-panel{display:block;padding-top:30px;min-height:0}.service-content{gap:17px}.service-content h3{font-size:27px}.service-content p{font-size:15px}.service-content ul{gap:8px;margin:19px 0}.service-content li{font-size:11px}.service-example{border-left:0;border-top:1px solid #61596d;padding:22px 0 0;margin-top:30px}.service-example>p{font-size:19px;max-width:100%;margin-top:12px}.about{display:block}.about-lead{font-size:18px;margin-top:24px}.bio{font-size:13px;margin-top:19px}.about ol{margin-top:35px}.about li{padding:23px 0}.about li h3{font-size:23px}.about li p{font-size:14px}.price-grid{grid-template-columns:1fr;gap:30px}.price-grid h3{margin-bottom:20px}.price-grid strong{font-size:40px}.price-unit{margin-bottom:17px}.price-grid p{max-width:none;margin-bottom:17px}.price-note{font-size:11px;margin-top:27px}.contact{display:block}.email-address{font-size:25px}.contact .remote{margin-bottom:32px}.form-row{gap:16px}.form-actions{gap:20px}.form-actions .button{padding:13px 16px;font-size:13px}.privacy-note{font-size:10px}footer{padding:28px 6%;flex-wrap:wrap;gap:20px}footer p{order:3;width:100%;font-size:12px}footer .brand{font-size:27px}}
@media(max-width:380px){.header-end{gap:10px}.header-cta{padding:8px;font-size:11px}.brand{font-size:27px}h1{font-size:42px}.hero>.eyebrow{font-size:8px}.hero-bottom>div{align-items:flex-start;flex-direction:column}.form-row{grid-template-columns:1fr;gap:0}.journey-book{grid-template-columns:90px 1fr;gap:12px}.journey-book h2{font-size:21px}.email-address{font-size:22px}.service-tabs button{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.website-shot:hover img,.campaigns a:hover img,.journey-ad a:hover,.journey-web a:hover{transform:none}}

/* Three clearly scoped monthly offers. */
.price-grid{gap:24px;align-items:stretch}.price-grid .plan{padding:25px;background:#f8f6fb;border:1px solid #cfc4de;border-radius:3px}.price-grid .plan-0{border-top:3px solid var(--accent);padding-top:23px}.plan-label{display:block;color:#60536b;font-size:10px;letter-spacing:1px;margin-bottom:18px}.price-grid h3{font-size:23px;min-height:55px;margin-bottom:15px}.price-grid .plan-2 strong{font-size:32px;min-height:55px;letter-spacing:-1.4px}.price-grid strong{min-height:55px}.price-unit{min-height:44px;margin-bottom:15px}.price-grid p{min-height:75px;margin-bottom:17px}.price-grid ul{list-style:none;padding:0;margin:0 0 25px;font-size:13px}.price-grid li{padding:10px 0 10px 18px;border-top:1px solid #ddd5e5;position:relative;line-height:1.6}.price-grid li:before{content:'+';position:absolute;left:0;color:var(--accent)}.plan-term{font-size:11px;color:#60536b;display:block;margin-top:auto;margin-bottom:20px}.price-grid .text-link{margin-top:0;font-size:13px}.plan-explainer{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid #c7bbd5;margin-top:30px;padding-top:28px}.plan-explainer h3{font-size:20px;margin-bottom:12px;letter-spacing:-.6px}.plan-explainer p{font-size:13px;color:#60536b}.selected-plan{font-size:12px;line-height:1.6;background:var(--lilac);padding:12px 15px;margin-bottom:20px;border-left:2px solid var(--accent)}.selected-plan[hidden]{display:none}@media(max-width:1050px){.price-grid{gap:15px}.price-grid .plan{padding:20px}.price-grid .plan-0{padding-top:18px}.price-grid h3{font-size:21px}.price-grid .plan-2 strong{font-size:28px}}@media(max-width:760px){.price-grid{gap:22px}.price-grid h3{min-height:0;margin-bottom:20px;font-size:24px}.price-grid strong,.price-grid .plan-2 strong{min-height:0}.price-grid .plan-2 strong{font-size:34px}.price-unit{min-height:0;margin-bottom:20px}.price-grid p{min-height:0}.price-grid .plan{padding:25px}.price-grid .plan-0{padding-top:23px}.plan-explainer{grid-template-columns:1fr;gap:27px}.plan-explainer h3{font-size:21px}}

.upfront-label{font-size:21px;letter-spacing:-.7px;font-weight:600}.price-grid .price-unit{font-size:14px;color:var(--ink);font-weight:600;line-height:1.6}@media(max-width:1050px){.upfront-label{font-size:18px}}@media(max-width:760px){.upfront-label{font-size:22px}}

/* Preserve complete layouts; never force screenshots into a photo crop. */
.project-visual{min-width:0;align-self:start}.website-shot img,.journey-web img{height:auto;aspect-ratio:auto;object-fit:contain;object-position:top}.website-shot:hover img{transform:none}.preview-zoom{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:12px}.preview-zoom svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}.campaigns a{cursor:zoom-in}.journey-web img{width:100%;display:block}.journey-ad a{cursor:zoom-in}#image-viewer{width:min(1100px,94vw);max-width:none;max-height:92dvh;padding:0;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0004}#image-viewer::backdrop{background:#1c1827c9}.viewer-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:1}.viewer-header h2{font-size:20px;letter-spacing:-.6px;line-height:1.3}.viewer-header button{width:44px;height:44px;display:grid;place-items:center;background:none;color:var(--ink);border:1px solid var(--line);border-radius:50%;flex-shrink:0}.viewer-header svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.viewer-image{padding:20px;background:#e8e4de;display:flex;justify-content:center;align-items:flex-start}.viewer-image img{display:block;width:auto;max-width:100%;height:auto;max-height:68dvh;object-fit:contain}.viewer-footer{padding:15px 22px;display:flex;align-items:center;justify-content:space-between;gap:25px}.viewer-footer p{font-size:12px;color:var(--muted);max-width:570px}.viewer-footer .text-link{font-size:12px;flex-shrink:0}body.viewer-open{overflow:hidden}@media(max-width:760px){.project-info{padding-top:24px}.viewer-header{padding:10px 15px}.viewer-header h2{font-size:18px}.viewer-image{padding:10px}.viewer-image img{max-height:none;width:100%}.viewer-footer{display:block;padding:15px}.viewer-footer .text-link{margin-top:10px}.preview-zoom{min-height:40px;margin-top:5px}.journey-web img{aspect-ratio:auto}}

/* Clarvilo: one connected customer journey, rather than a stack of panels. */
:root{--paper:#f5f3ed;--accent:#6142d9;--ink:#242229}header{border:0;padding-top:29px;padding-bottom:29px}.brand{font-size:36px}.hero{background:var(--ink);color:var(--paper);max-width:none;padding:30px 5% 0}.hero-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #5c5568;padding-top:20px}.hero-meta .eyebrow{font-size:10px;letter-spacing:1.4px;margin:0;color:#c9b9ff}.hero-meta>span{font-size:10px;letter-spacing:1px;color:#bcb5c6}.hero-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:10%;padding:35px 0 38px;align-items:center}.hero h1{font-size:clamp(68px,7.4vw,118px);line-height:.98;letter-spacing:-.065em;font-weight:600;max-width:820px}.hero h1 em{font:400 italic 1.11em/.95 Georgia,'Times New Roman',serif;letter-spacing:-.075em;color:#c7b6ff;white-space:nowrap}.hero-aside{padding-top:20px}.hero-aside>p{font-size:18px;line-height:1.65;max-width:380px;color:#d4cedb}.hero-aside .button{margin-top:25px;background:#c7b6ff;color:#242229;border-color:#c7b6ff;gap:28px}.hero-aside>.text-link{display:table;margin-top:15px;font-size:12px;color:#e3dceb}.hero-end{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #5c5568;padding:19px 0;font-size:10px;letter-spacing:1.1px}.hero-end>span:nth-child(2){letter-spacing:0;color:#c5bdcf;font-size:12px}.hero-end>a{display:grid;place-items:center;width:32px;height:32px;border:1px solid #71667f;border-radius:50%}.hero-end svg{width:17px;height:17px;fill:none;stroke:#ded4f0;stroke-width:1.4}.journey{background:var(--ink);color:var(--paper);border:0;position:relative;padding-top:6px;padding-bottom:30px;max-width:none}.journey-heading{color:#e8e0ef;margin:0 0 13px}.journey-heading>span:last-child{color:#bcb5c6}.journey-grid{position:relative;grid-template-columns:.7fr 1.65fr .7fr;gap:20px;align-items:center;padding:28px 0 15px}.journey-ad{position:relative;z-index:2;transform:rotate(-5deg);margin-right:-50px;margin-top:40px}.journey-web{padding-top:0;position:relative;z-index:1}.journey-web>a{border:8px solid #e6e0ed;border-radius:5px;box-shadow:0 18px 45px #0004}.journey-web .eyebrow{padding-left:4px}.journey-ad .eyebrow{transform:rotate(5deg);padding-left:8px}.journey-book{z-index:2;margin-left:-35px;padding-left:0;align-self:center;padding-top:45px}.journey-book .booking-graphic{background:#d0c3ef;box-shadow:0 15px 40px #0003;color:#292136;padding:18px}.booking-rule{background:#a99aba}.booking-check{border-color:#5a466c;color:#5a466c}.journey-book h2{color:#f5f3ed;font-size:23px}.journey-book p,.journey-note{color:#c7becf}.journey-book .text-link{color:#e1d0ff}.journey-note{font-size:11px;margin-top:10px}.journey-route{position:absolute;left:5%;top:40px;width:90%;height:calc(100% - 80px);fill:none;stroke:#a28dbd;stroke-width:1;opacity:.65;pointer-events:none}.journey-route circle{fill:#c7b6ff;stroke:none}.section{padding-top:90px;padding-bottom:90px}.section-top h2{font-size:clamp(38px,4.1vw,62px)}.work>.section-top{align-items:flex-end}.project{border-top:1px solid #bfb9c6;padding-top:26px;margin-top:65px;column-gap:55px}.project-heading{align-items:baseline;margin-bottom:28px}.project-heading h3{font-size:clamp(42px,5.6vw,84px);letter-spacing:-.06em;line-height:1}.project-heading .eyebrow{font-size:10px}.website-shot{padding:0 0 30px;background:none!important;border-radius:0;overflow:visible}.website-shot img{box-shadow:0 8px 25px #26212e10;border:1px solid #dfd9d1}.shot-link{bottom:0;right:0;font-size:12px}.project-info>p{font-size:18px;line-height:1.6}.project-visual{position:relative}.preview-zoom{font-size:11px;margin-top:6px;min-height:30px}.campaigns{gap:12px}.campaigns img{box-shadow:0 5px 15px #24222908}.services{background:#ebe6f1;color:var(--ink)}.services .section-top>p{color:var(--muted)}.service-tabs{border-bottom-color:#bbb0c7}.service-tabs button{color:#71667c}.service-tabs button[aria-selected=true],.service-tabs button:hover{color:var(--ink)}.service-tabs button[aria-selected=true]:after{background:var(--accent)}.service-number,.service-example .eyebrow{color:var(--accent)}.service-content p{color:var(--muted)}.service-content li{border:0;border-bottom:1px solid #c8bdd5;padding:5px 0;border-radius:0}.service-content .text-link{color:var(--accent)}.service-example{border-color:#c5b9d1}.about{padding-top:100px;padding-bottom:100px}.pricing{background:var(--paper);border-top:1px solid var(--line)}.price-grid{gap:0;border-top:1px solid #a99fb5;border-bottom:1px solid #a99fb5}.price-grid .plan{background:none;border:0;border-right:1px solid #ccc5d3;border-radius:0;padding:30px}.price-grid .plan:first-child{padding-left:0}.price-grid .plan:last-child{border-right:0;padding-right:0}.price-grid .plan-0{padding-top:30px}.price-grid li{border-color:#ded8e5}.price-grid h3{font-size:25px}.plan-label{color:var(--accent)}.price-grid strong{font-size:50px;letter-spacing:-2.4px}.upfront-label{font-size:21px;letter-spacing:-.7px}.price-grid .plan-2 strong{font-size:32px}.plan-explainer{border-top:0}.contact{background:var(--ink);color:var(--paper);max-width:none;position:relative}.contact:before{content:'';position:absolute;left:5%;top:0;width:90%;height:5px;background:linear-gradient(90deg,#c7b6ff 0 34%,#716086 34% 67%,#433a50 67%)}.contact .eyebrow{color:#c7b6ff}.contact>div>p:not(.eyebrow),.contact .email-label{color:#c8c0d1}.contact .email-address{border-color:#756983}.contact form input,.contact form textarea,.contact form select{color:var(--paper);border-color:#74677e;background:#302b38}.contact form select option{background:#302b38}.contact form ::placeholder{color:#b0a4b9}.contact .form-note,.contact .privacy-note{color:#c5bacf}.contact .button{background:#c7b6ff;color:var(--ink);border-color:#c7b6ff}.contact #form-status{color:#e0ccff}.contact .selected-plan{background:#483b5e;border-color:#c7b6ff}.bot-field{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}footer{background:var(--ink);color:var(--paper);max-width:none;border-top:1px solid #5c5568;padding-top:30px;padding-bottom:30px}footer .brand-dot{color:#c7b6ff}footer p{color:#bcb0c8}
@media(min-width:1600px){.hero,.journey,.contact,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1050px){.hero-layout{gap:6%;grid-template-columns:1.4fr 1fr}.hero h1{font-size:78px}.hero-aside>p{font-size:16px}.journey-grid{grid-template-columns:.75fr 1.5fr .8fr;gap:20px}.journey-book{margin-left:-25px}.journey-book h2{font-size:21px}.journey-book .text-link{font-size:11px}.price-grid .plan{padding:25px 20px}.price-grid .plan-0{padding-top:25px}.price-grid h3{font-size:22px}.price-grid .plan-2 strong{font-size:28px}.project{gap:30px}.project-info>p{font-size:16px}}
@media(max-width:760px){header{padding:20px 6%}.brand{font-size:30px}.hero{padding:25px 6% 0}.hero-meta{display:block;padding-top:16px}.hero-meta .eyebrow{font-size:9px;letter-spacing:1px}.hero-meta>span{display:none}.hero-layout{display:block;padding:27px 0 28px}.hero h1{font-size:clamp(59px,14vw,95px);max-width:600px;letter-spacing:-.065em;line-height:1}.hero h1 em{letter-spacing:-.075em}.hero-aside{padding-top:23px}.hero-aside>p{font-size:16px;max-width:450px}.hero-aside .button{margin-top:20px;font-size:13px;padding:13px 17px}.hero-aside>.text-link{margin-top:13px}.hero-end{gap:10px;padding:15px 0;font-size:8px;letter-spacing:1px}.hero-end>span:nth-child(2){display:none}.journey{padding:12px 6% 24px}.journey-heading{font-size:11px}.journey-heading>span:last-child{font-size:9px}.journey-grid{grid-template-columns:.7fr 1.2fr;padding:10px 0 0;gap:13px;align-items:center}.journey-ad{margin-right:-22px;margin-top:30px;transform:rotate(-4deg)}.journey-web{padding-top:0}.journey-web>a{border-width:4px}.journey-ad .eyebrow{font-size:7px;transform:rotate(4deg)}.journey-grid .eyebrow{font-size:8px}.journey-book{margin:25px 0 0;padding:20px 0 0;border-color:#66546f;grid-template-columns:100px 1fr;gap:0 20px;display:grid;grid-column:1/-1}.journey-book>.eyebrow{grid-column:1/-1;margin-bottom:14px}.journey-book .booking-graphic{padding:12px;grid-column:1;grid-row:2/5}.journey-book h2{font-size:23px;color:var(--paper)}.journey-book p{font-size:12px}.journey-book .text-link{font-size:11px}.journey-route{top:45px;height:180px}.journey-note{font-size:10px;margin-top:20px}.section{padding-top:57px;padding-bottom:57px}.project{margin-top:40px;padding-top:20px}.project-heading{margin-bottom:22px}.project-heading h3{font-size:clamp(33px,8.6vw,55px)}.project-heading .eyebrow{font-size:8px}.project-info{padding-top:20px}.website-shot{padding-bottom:30px}.preview-zoom{font-size:12px;min-height:40px}.project-info>p{font-size:16px}.campaigns{gap:8px}.service-example{border-color:#c5b9d1}.price-grid{border-bottom:0;gap:0}.price-grid .plan,.price-grid .plan:first-child,.price-grid .plan:last-child{padding:27px 0;border-right:0;border-bottom:1px solid #bfb4cc}.price-grid h3{font-size:25px}.price-grid strong{font-size:48px}.price-grid .plan-2 strong{font-size:33px}.upfront-label{font-size:22px}.price-grid .plan-0{padding-top:27px}.contact{padding:60px 6%}.contact:before{left:6%;width:88%}footer{padding:28px 6%}}
@media(max-width:360px){.hero h1{font-size:56px}.hero-aside>p{font-size:15px}.journey-grid .eyebrow{font-size:7px}.journey-book h2{font-size:21px}}
@media(max-width:360px){header .brand{font-size:26px}header .brand-mark{margin-right:7px}header .header-end{gap:9px}header .header-cta{font-size:10px;padding:8px;gap:8px}}
button:disabled{cursor:wait;opacity:.65}
/* One type family and a shared, readable hierarchy across both languages. */
:root{--type-hero:clamp(80px,6.6vw,88px);--type-section:clamp(42px,3.6vw,48px);--type-project:clamp(40px,3.6vw,48px);--type-body:17px;--type-label:13px}
body{font-size:var(--type-body)}.hero h1{font-size:var(--type-hero);line-height:1.04;letter-spacing:-.055em}.hero h1 em{font:600 1em/1.04 var(--font);letter-spacing:inherit;color:#c7b6ff;white-space:normal}.hero-aside>p{font-size:18px;line-height:1.65}.section-top h2,h2{font-size:var(--type-section);line-height:1.14;letter-spacing:-.045em}.project-heading h3{font-size:var(--type-project);line-height:1.1;letter-spacing:-.045em}.eyebrow,.section-top .eyebrow,.project-heading .eyebrow,.hero-meta .eyebrow{font-size:var(--type-label);letter-spacing:.8px}.hero-meta>span{font-size:12px;letter-spacing:.7px}.hero-end{font-size:12px;letter-spacing:.7px}.hero-end>span:nth-child(2){font-size:13px}.hero-aside>.text-link{font-size:14px}.section-top>p,.service-content p,.about li p,.price-grid p{font-size:17px}.project-info>p,.about-lead{font-size:18px}.bio{font-size:15px}.service-content h3{font-size:28px;line-height:1.25}.service-example>p{font-size:22px}.service-content li{font-size:13px}.about li h3,.plan-explainer h3{font-size:23px;line-height:1.3}.price-grid h3{font-size:24px}.plan-label{font-size:12px;letter-spacing:.7px}.price-grid li{font-size:14px}.plan-term,.price-note,.plan-explainer p{font-size:13px}.price-grid .price-unit{font-size:15px}.price-grid .text-link,.project-info>.text-link,.preview-zoom,.shot-link{font-size:14px}.journey-grid .eyebrow{font-size:12px;letter-spacing:.5px}.journey-heading{font-size:14px}.journey-heading>span:last-child{font-size:12px}.journey-book h2{font-size:24px;line-height:1.2}.journey-book p,.journey-book .text-link,.journey-note{font-size:13px}.journey-ad .eyebrow{position:relative;z-index:3}.form-note,.privacy-note,.contact .remote,.email-label,form label{font-size:13px!important}.contact form input,.contact form textarea,.contact form select{font-size:16px}.selected-plan{font-size:13px}.viewer-footer p,.viewer-footer .text-link{font-size:13px}.hero .button,nav,.text-link,.button{font-size:14px}footer p,footer>a:last-child{font-size:14px}
@media(max-width:1050px) and (min-width:761px){.hero h1{font-size:80px}.hero-aside>p{font-size:17px}.hero-meta>span{font-size:11px}.journey-grid .eyebrow{font-size:11px}.journey-book p,.journey-book .text-link{font-size:12px}.price-grid h3{font-size:23px}}
@media(max-width:760px){:root{--type-hero:clamp(48px,12.6vw,56px);--type-section:clamp(30px,8vw,34px);--type-project:clamp(28px,7.5vw,32px);--type-body:16px;--type-label:12px}.hero h1{font-size:var(--type-hero);line-height:1.08;letter-spacing:-.05em}.hero h1 em{font:600 1em/1.08 var(--font);letter-spacing:inherit}.hero-meta .eyebrow{font-size:12px;line-height:1.6}.hero-aside>p,.section-top>p,.project-info>p,.service-content p,.about li p,.price-grid p{font-size:16px}.hero-end{font-size:11px}.hero-aside>.text-link{font-size:13px}.section-top h2,h2{font-size:var(--type-section);line-height:1.17}.project-heading h3{font-size:var(--type-project)}.project-heading{flex-wrap:wrap;gap:10px}.project-heading .eyebrow{font-size:12px}.service-content h3{font-size:24px}.service-example>p{font-size:20px}.about li h3,.plan-explainer h3,.price-grid h3{font-size:22px}.about-lead{font-size:17px}.bio{font-size:14px}.journey-heading{font-size:13px}.journey-heading>span:last-child{font-size:12px}.journey-grid .eyebrow{font-size:10px;line-height:1.5;letter-spacing:0;max-width:100%}.journey-ad .eyebrow{padding-left:0}.journey-book h2{font-size:22px}.journey-book p,.journey-book .text-link,.journey-note{font-size:12px}.plan-label,.plan-term,.price-note{font-size:12px}.price-grid li{font-size:14px}.plan-explainer p{font-size:14px}.price-grid .price-unit{font-size:15px}.preview-zoom,.shot-link,.project-info>.text-link,.price-grid .text-link{font-size:13px}.hero .button,.button,.text-link{font-size:13px}.form-note,.privacy-note,.contact .remote,.email-label{font-size:12px!important}form label{font-size:13px!important}.viewer-footer p,.viewer-footer .text-link{font-size:12px}footer p,footer>a:last-child{font-size:13px}}
@media(min-width:761px){.journey-book h2,.journey-book>p,.journey-book>.text-link{margin-left:12px}}

/* Shared open-C mark for site header and browser identity. */
.brand-mark{border-radius:0;transform:none;background:transparent url("assets/clarvilo-mark.svg") center/contain no-repeat;width:25px;height:25px}.brand-mark:after{display:none}
/* A compact portfolio index opens into the work and its reasoning. */
.hero-fit{display:block;margin-top:22px;color:#bfb4cc;font-size:12px;line-height:1.6}.case-study{border-top:1px solid #c6c0ce}.case-study:last-child{border-bottom:1px solid #c6c0ce}.case-study>summary{list-style:none;display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:28px;cursor:pointer;padding:24px 0;min-height:126px}.case-study>summary::-webkit-details-marker{display:none}.case-study>summary>img{width:120px;height:84px;object-fit:contain;background:#e9e5df;border:1px solid #d8d5cf}.case-summary-name .eyebrow{font-size:12px;color:var(--muted)}.case-summary-name h3{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:7px 0 0}.case-summary-cue{font-size:13px;display:flex;align-items:center;gap:20px}.case-summary-cue>span{font-size:28px;font-weight:400;line-height:1;transition:transform .2s}.case-study[open] .case-summary-cue>span{transform:rotate(45deg)}.case-study[open]>summary{color:var(--accent)}.case-study>summary:focus-visible{outline:3px solid var(--accent);outline-offset:7px}.case-study .project{margin:0;padding:14px 0 36px;border:0}.case-study .project-info{padding-top:0}.case-reasoning{margin:0 0 24px}.case-reasoning>div{padding:12px 0;border-bottom:1px solid #d8d5cf}.case-reasoning dt{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.case-reasoning dd{font-size:16px;line-height:1.6;margin:0}.case-study .project-info>p{font-size:15px;color:var(--muted)}.process-result{display:block;color:var(--accent);font-size:13px;font-weight:600;margin-top:12px}.plan-term,.price-note{font-size:14px;line-height:1.6}.languages a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:24px}.languages{align-items:center}.draft-note{font-size:13px;padding:12px 14px;background:#42384f;border-left:2px solid #c7b6ff;margin:0 0 20px}.draft-note .text-link{display:inline;padding:4px 0;color:#e4d7ff}.about ol{margin-top:0}
@media(max-width:760px){header{column-gap:10px}.header-end{gap:8px}.hero-fit{font-size:12px;margin-top:16px}.hero-aside>p{max-width:29ch;font-size:18px;line-height:1.5}.case-study>summary{grid-template-columns:64px 1fr 24px;gap:15px;padding:19px 0;min-height:105px}.case-study>summary>img{width:64px;height:64px}.case-summary-name .eyebrow{font-size:10px;letter-spacing:0}.case-summary-name h3{font-size:25px;letter-spacing:-.7px}.case-summary-cue{font-size:0;gap:0;justify-content:end}.case-summary-cue>span{font-size:28px}.case-study .project{padding:10px 0 28px}.case-reasoning{margin-top:22px}.case-reasoning dd{font-size:15px}.plan-term,.price-note{font-size:14px}.about ol{margin-top:30px}.languages a{min-width:22px}.hero-aside>.text-link{min-height:32px;display:inline-flex;align-items:center}.hero .button{min-height:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.case-summary-cue>span{transition:none}}
@media(max-width:360px){header{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px}header .brand{grid-column:1;grid-row:1}header .header-end{grid-column:2;grid-row:1;gap:6px}header nav{grid-column:1/-1;grid-row:2;width:100%;order:0}.languages{gap:3px}.languages a{min-width:20px;padding-left:0;padding-right:0}}
.case-summary-cue>span{font:inherit;transform:none!important}.case-close-label{display:none}.case-study[open] .case-open-label{display:none}.case-study[open] .case-close-label{display:inline}.case-summary-cue>i{font-size:28px;font-style:normal;line-height:1}.case-study[open] .case-summary-cue>i{transform:rotate(45deg)}@media(max-width:760px){.case-summary-cue>span{display:none!important}.case-summary-cue>i{font-size:28px}}
