@font-face{font-family:Source Serif;src:url('source-serif.ttf') format('truetype');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#282523;--surface:#302c29;--ink:#efe9df;--muted:#c3bab0;--line:#625b54;--soft-line:#48423c;--serif:'Source Serif',Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--ink);color:var(--bg)}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--ink);outline-offset:7px}a:hover{color:#fff}p,h1,h2,h3{margin:0}p{color:var(--muted)}.wrap{max-width:1160px;width:calc(100% - 96px);margin-inline:auto}.header{min-height:136px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--soft-line);gap:32px}.brand{display:block;flex-shrink:0}.logo-frame{display:block;position:relative;width:94px;height:94px;overflow:hidden}.logo-frame img{position:absolute;width:159%;height:auto;max-width:none;left:-29%;top:-34%;filter:invert(1);mix-blend-mode:screen}.header nav{display:flex;align-items:center;gap:35px;font-size:13px}.header nav a{padding-block:12px}.nav-contact{border-bottom:1px solid var(--line)}.nav-contact span{margin-left:16px}.hero{text-align:center;padding-top:62px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.17em;line-height:1.5;color:var(--muted)}.hero .eyebrow span{margin:0 11px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(49px,6.6vw,84px);line-height:1.08;letter-spacing:-.045em;margin-top:26px}em{font-style:normal;color:#c9bdad}.hero-copy{max-width:535px;margin:26px auto 27px;font-size:16px;line-height:1.75}.button{display:inline-flex;align-items:center;justify-content:center;gap:40px;border:1px solid #8d8276;padding:12px 23px;min-height:48px;font-size:13px;transition:background .16s,color .16s}.button:hover{background:var(--ink);color:var(--bg)}.hero-note{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--soft-line);padding:61px 0 22px;font-size:11px;color:var(--muted)}.section{display:grid;grid-template-columns:1fr 3fr;gap:48px;padding-block:76px}.section-label{padding-top:12px;display:flex;gap:17px;align-items:baseline}.index{font-size:11px;color:#a79a8d}.section h2{font-family:var(--serif);font-size:clamp(34px,3.8vw,49px);line-height:1.16;letter-spacing:-.025em;font-weight:400;margin-bottom:28px}.about-content{max-width:665px}.about p:not(.eyebrow){max-width:620px;margin-bottom:16px}.signature{display:inline-block;margin-top:9px;font-family:var(--serif);font-size:20px;color:#d4c8b8}.about{border-bottom:1px solid var(--soft-line)}.services h2{margin-bottom:31px}.service{display:grid;grid-template-columns:1fr 1.55fr;gap:32px;padding:25px 0;border-top:1px solid var(--soft-line)}.service:last-child{padding-bottom:0}.service h3{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.25;letter-spacing:-.015em}.service p{font-size:14px;line-height:1.8}.solutions-band{background:var(--surface)}.solutions h2{margin-bottom:32px}.solution{display:flex;gap:30px;justify-content:space-between;border-top:1px solid var(--line);padding:27px 0}.solution:last-child{padding-bottom:0}.solution h3{font:400 29px/1.25 var(--serif);margin-bottom:10px}.solution p{font-size:14px;max-width:560px}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#8d8276}.solution .text-link{display:inline-block;margin-top:18px}.solution-arrow{font-size:30px;font-family:var(--sans);align-self:center;transition:transform .15s}.solution:hover .solution-arrow{transform:translate(3px,-3px)}.contact-intro{font-size:15px;margin-bottom:30px}.contact-email{font:400 clamp(27px,4vw,46px)/1.4 var(--serif);border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;padding-bottom:17px;overflow-wrap:anywhere}.contact-email span{font-family:var(--sans);font-size:30px;align-self:center}.contact-bottom{display:flex;justify-content:space-between;gap:28px;margin-top:26px}.contact-channels{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.contact-channels>a:first-child{font-size:20px;letter-spacing:.02em}address{font-style:normal;font-size:13px;line-height:1.8;color:var(--muted)}.footer{display:flex;justify-content:space-between;gap:20px;padding-block:25px;border-top:1px solid var(--soft-line);font-size:11px;color:var(--muted)}.skip{position:absolute;left:16px;top:-100px;z-index:10;background:var(--ink);color:var(--bg);padding:12px 20px}.skip:focus{top:12px;color:var(--bg)}
@media(min-width:1600px){.wrap{max-width:1200px}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.header{min-height:115px}.logo-frame{width:80px;height:80px}.header nav{gap:22px}.section{grid-template-columns:1fr;gap:24px;padding-block:52px}.section-label{padding-top:0}.section h2{margin-bottom:25px}.hero{padding-top:47px}.hero-note{padding-top:46px}.service{grid-template-columns:1fr 1.6fr}.hero-copy{max-width:480px}}
@media(max-width:480px){.wrap{width:calc(100% - 40px)}.header{gap:18px;min-height:110px}.logo-frame{width:76px;height:76px}.header nav{display:grid;grid-template-columns:auto auto;gap:0 20px;font-size:12px}.header nav a{padding-block:7px}.nav-contact{border:0}.nav-contact span{margin-left:5px}.hero h1{font-size:clamp(39px,10.5vw,51px);letter-spacing:-.04em;margin-top:23px}.hero-copy{font-size:14px;margin:24px auto}.hero .eyebrow{font-size:10px}.hero .eyebrow span{margin:0 7px}.hero-note{font-size:10px;flex-direction:column;gap:5px;padding:38px 0 20px}.section{padding-block:43px;gap:21px}.section h2{font-size:33px}.about p:not(.eyebrow){font-size:14px}.service{grid-template-columns:1fr;gap:12px;padding-block:23px}.service h3{font-size:26px}.service h3 br{display:none}.service p{font-size:14px}.solution h3{font-size:27px}.contact-bottom{flex-direction:column;gap:28px}.contact-email{font-size:29px;gap:10px}.contact-email span{font-size:23px}.footer{flex-wrap:wrap;font-size:10px;gap:12px}.footer span:nth-child(2){display:none}.button{min-height:48px}.text-link{display:inline-block;padding-block:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Luceon: a shared line language, restrained motion, and a needs diagnosis. */
[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;color:#c9b697}.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}button,input,textarea{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid #e6d2ad;outline-offset:5px}.hero{position:relative;isolation:isolate;overflow:hidden}.hero>p,.hero>h1,.hero-actions,.hero-note{position:relative;z-index:1}.light-field{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.68}.light-ring{position:absolute;border:1px solid rgba(201,182,151,.1);border-radius:50%;width:680px;height:680px;left:50%;top:57%;transform:translate(-50%,-50%)}.ring-two{width:900px;height:900px;border-color:rgba(201,182,151,.055)}.light-beam{position:absolute;width:1000px;height:1000px;left:50%;top:80%;background:conic-gradient(from -40deg,transparent 0deg,rgba(213,183,136,.045) 15deg,rgba(213,183,136,.1) 21deg,transparent 36deg);transform:translate(-50%,-50%) rotate(16deg);animation:beam-arrival 4.6s ease-out both}.light-point{position:absolute;width:6px;height:6px;border-radius:50%;background:#c9b697;left:calc(50% - 3px);top:80%;box-shadow:0 0 32px 8px rgba(201,182,151,.1);opacity:.4}.hero h1{animation:hero-arrival .85s ease-out both}.hero-copy{animation:hero-arrival .85s .12s ease-out both}.hero-actions{display:flex;align-items:center;justify-content:center;gap:28px;animation:hero-arrival .85s .2s ease-out both}.hero-actions .button{gap:24px}.button .icon{width:21px;height:21px;color:inherit;transition:transform .2s}.button:hover .icon{transform:translateX(3px)}.button-solid{background:#dfd1bb;color:#282523;border-color:#dfd1bb;font-weight:500}.button-solid:hover{background:#f0e4d2;color:#282523;border-color:#f0e4d2}.hero-secondary{font-size:13px;padding:12px 0;border-bottom:1px solid #7e7161}.hero-secondary span{padding-left:8px}.service-title{display:flex;flex-direction:column;align-items:flex-start;gap:17px}.service-title .icon{width:29px;height:29px}.service{transition:border-color .2s}.service:hover{border-color:#9d8b72}.solution-icon{display:block;margin-bottom:16px;width:30px;height:30px}.solution{position:relative;transition:padding-left .2s}.solution:hover{padding-left:8px}.reveal-in{animation:reveal-arrival .65s ease-out both}@keyframes hero-arrival{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal-arrival{from{opacity:.45;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes beam-arrival{from{opacity:0;transform:translate(-50%,-50%) rotate(-24deg)}to{opacity:1;transform:translate(-50%,-50%) rotate(16deg)}}
.diagnosis{border-bottom:1px solid var(--soft-line)}.diagnosis-intro{display:flex;align-items:center;justify-content:space-between;gap:38px;margin-bottom:32px}.diagnosis-intro h2{margin-bottom:18px}.diagnosis-intro p{max-width:490px;font-size:15px}.diagnosis-mark{width:96px;height:96px;stroke-width:.7;opacity:.7;margin-right:16px}.diagnosis-card{background:#302c29;border:1px solid #62574a;padding:32px}.diagnosis-topline{display:flex;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.05em;color:#cfc2b0}.diagnosis-progress{height:2px;background:#50473c;margin-top:14px;margin-bottom:30px}.diagnosis-progress>span{display:block;background:#d7bd94;width:33.333%;height:100%;transition:width .3s ease}#diagnosis-fieldset{border:0;padding:0;margin:0;min-width:0}#diagnosis-question{font:400 29px/1.25 var(--serif);padding:0;letter-spacing:-.02em;max-width:100%}.question-hint{font-size:13px;line-height:1.65;margin:10px 0 22px}.diagnosis-options{display:grid;gap:10px}.diagnosis-options.area-options{grid-template-columns:repeat(2,minmax(0,1fr))}.area-options .diagnosis-option:last-child{grid-column:1/-1}.diagnosis-option{position:relative;display:flex;align-items:flex-start;gap:12px;padding:16px;background:#282523;border:1px solid #655b4e;cursor:pointer;transition:border-color .18s,background .18s}.diagnosis-option:hover{border-color:#b8a180;background:#373028}.diagnosis-option:has(input:checked){border-color:#dec39b;background:#40372b;box-shadow:inset 0 0 0 1px #dec39b}.diagnosis-option:has(input:focus-visible){outline:2px solid #ead4b1;outline-offset:3px}.diagnosis-option input{width:17px;height:17px;flex:0 0 17px;accent-color:#e0c59c;margin:4px 0 0}.diagnosis-option input:focus-visible{outline:none}.option-content{display:flex;gap:12px;min-width:0}.option-content>.icon{width:25px;height:25px;margin-top:1px}.option-content strong{font-size:14px;line-height:1.5;font-weight:500;display:block;color:var(--ink)}.option-detail{display:block;margin-top:5px;color:#c9c0b3;font-size:12px;line-height:1.55}.diagnosis-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:23px}.diagnosis-controls .button{margin-left:auto;gap:22px;font-size:13px}.button:disabled{cursor:not-allowed;background:#463e34;border-color:#655a4c;color:#b6a996;opacity:.7}.quiet-button{border:0;padding:10px 0;background:none;color:#d8ccba;font-size:12px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}.quiet-button:hover{color:#fff}.diagnosis-privacy{margin-top:25px;padding-top:19px;border-top:1px solid #51483e;color:#bfb5a7;font-size:11px;line-height:1.75}.result-eyebrow{margin:0 0 16px}#result-title{font:400 33px/1.2 var(--serif);margin-bottom:17px;letter-spacing:-.02em}#result-description{font-size:14px;line-height:1.75}.result-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#d8c5a8;margin-top:26px}#result-steps{list-style:none;counter-reset:diagnosis;margin:14px 0 26px;padding:0;display:grid;gap:12px}#result-steps li{counter-increment:diagnosis;display:flex;gap:12px;font-size:13px;line-height:1.65;color:#d5cbc0}#result-steps li:before{content:'0' counter(diagnosis);color:#c4aa82;font-size:11px;flex:0 0 24px;padding-top:2px}.result-urgency{border-left:2px solid #dbb77f;background:#3c3327;padding:16px 18px;margin-bottom:26px}.result-urgency strong{font-size:14px;font-weight:500}.result-urgency p{font-size:12px;line-height:1.7;margin:7px 0 10px}.result-urgency a{font-size:13px;text-decoration:underline;text-underline-offset:4px}.result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.result-actions .button{gap:24px}.result-product{font-size:12px;max-width:250px}.diagnosis-summary{border-top:1px solid #655847;margin-top:28px;padding-top:18px}.diagnosis-summary summary{cursor:pointer;font-size:13px;color:#e4d7c4;min-height:32px}.diagnosis-summary textarea{resize:vertical;width:100%;min-height:215px;border:1px solid #76634b;color:#e9ded0;background:#25221f;padding:15px;font-size:12px;line-height:1.7;margin-top:12px;border-radius:0}.summary-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.summary-note,#copy-status{font-size:11px;line-height:1.6;margin-top:8px;color:#bfb5a7}#copy-status:empty{display:none}.restart-button{margin-top:18px}.contact{scroll-margin-top:20px}
@media(max-width:800px){.diagnosis-mark{width:78px;height:78px}.diagnosis-intro{gap:20px}.diagnosis-card{padding:25px}.header nav{gap:20px}.hero-actions{gap:24px}}
@media(max-width:540px){.diagnosis-options.area-options{grid-template-columns:1fr}.area-options .diagnosis-option:last-child{grid-column:auto}.diagnosis-mark{width:56px;height:56px;margin-right:0;align-self:flex-start;margin-top:6px}.diagnosis-intro{gap:15px}.diagnosis-intro p{font-size:14px}.diagnosis-card{padding:22px 18px}.diagnosis-option{padding:15px 12px}.diagnosis-topline{font-size:10px}.diagnosis-progress{margin-bottom:24px}#diagnosis-question{font-size:26px}#result-title{font-size:29px}.diagnosis-controls .button{padding:12px 16px;gap:14px}.hero-actions{gap:18px}.hero-actions .button{gap:16px;padding-inline:17px}.hero-secondary{font-size:12px}.service-title{flex-direction:row;align-items:center;gap:16px}.service-title h3{font-size:25px}.service-title .icon{width:26px;height:26px}.header nav{gap:0 16px}.light-ring{width:550px;height:550px}.ring-two{width:750px;height:750px}.hero-note{padding-top:44px}.summary-actions{gap:12px}.result-actions .button{width:100%;justify-content:space-between}.diagnosis-controls .quiet-button{white-space:nowrap}}
@media(max-width:360px){.hero-actions{flex-direction:column;gap:10px}.hero-actions .button{width:100%}.diagnosis-card{padding:20px 13px}.diagnosis-mark{display:none}.header nav{font-size:11px;gap:0 12px}.diagnosis-controls{gap:8px}.diagnosis-controls .button{font-size:12px;padding-inline:12px;gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.light-beam{opacity:.7}}

/* Anonymous case studies: the outcome first, with the full account on demand. */
.cases{border-bottom:1px solid var(--soft-line)}
.cases h2{margin-bottom:20px}
.cases-intro{max-width:570px;font-size:15px;line-height:1.75;margin-bottom:30px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.case-card{min-width:0;background:var(--surface);border:1px solid var(--soft-line);transition:border-color .2s,background .2s}
.case-card:hover,.case-card[open]{border-color:#a18b6b}
.case-card[open]{background:#342f29}
.case-card summary{display:flex;flex-direction:column;min-height:252px;padding:25px 26px 21px;list-style:none;cursor:pointer}
.case-card summary::-webkit-details-marker{display:none}
.case-card summary:focus-visible{outline:2px solid #e0c59c;outline-offset:4px}
.case-category{display:flex;align-items:center;gap:11px;color:#cbb795;font-size:10px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase}
.case-category .icon{width:23px;height:23px;flex:0 0 23px}
.case-card h3{font:400 27px/1.22 var(--serif);letter-spacing:-.018em;margin:20px 0 23px;color:var(--ink)}
.case-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:#d9cbb5;margin-top:auto;min-height:24px}
.case-plus{position:relative;display:block;width:24px;height:24px;border:1px solid #84725c;border-radius:50%;flex:0 0 24px}
.case-plus:before,.case-plus:after{content:'';position:absolute;background:#d6c2a1;left:6px;right:6px;height:1px;top:10px}
.case-plus:after{transform:rotate(90deg);transition:transform .2s}
.case-card[open] .case-plus:after{transform:rotate(0)}
.case-close-label,.case-card[open] .case-open-label{display:none}
.case-card[open] .case-close-label{display:inline}
.case-description{margin:0 26px;padding:21px 0 25px;border-top:1px solid #655644;font-size:14px;line-height:1.8}
.case-description p+p{margin-top:15px}
.case-description strong{font-weight:700;color:var(--ink)}
.case-card[open] .case-description{animation:case-arrival .25s ease-out both}
@keyframes case-arrival{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:801px){.header nav{gap:27px}}
@media(min-width:481px) and (max-width:800px){.header nav{flex-wrap:wrap;justify-content:flex-end;gap:0 22px;max-width:440px}}
@media(max-width:620px){.case-grid{grid-template-columns:1fr;gap:14px}.case-card summary{min-height:0;padding:23px 22px 19px}.case-card h3{font-size:27px;margin:19px 0 22px}.case-description{margin-inline:22px;padding-bottom:23px}.cases-intro{font-size:14px}}
@media(max-width:480px){.header nav{gap:0 15px}.header nav .nav-contact{grid-column:2}.case-category{font-size:10px}}

/* A clearer navigation hierarchy and distinct product emblems. */
.header{gap:24px}
.header nav{gap:9px;font-size:16px;max-width:none}
.header nav a{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:49px;padding:11px 17px;border:1px solid #756653;line-height:1.4;white-space:nowrap;transition:color .18s,background .18s,border-color .18s,transform .18s}
.header nav a:hover{background:#393127;border-color:#c9b697;color:#fff;transform:translateY(-2px)}
.header nav a:focus-visible{outline:2px solid #e0c59c;outline-offset:4px}
.header nav .nav-contact{background:#dfd1bb;color:#282523;border-color:#dfd1bb;font-weight:600;padding-inline:21px;margin-left:5px}
.header nav .nav-contact:hover{background:#f0e4d2;border-color:#f0e4d2;color:#282523}
.header nav .nav-contact span{margin:0;font-size:21px;line-height:1}
.hero{padding-bottom:66px;border-bottom:1px solid var(--soft-line)}
.solution{display:grid;grid-template-columns:76px minmax(0,1fr) 44px;gap:25px;align-items:start;padding-block:31px;transition:border-color .2s}
.solution:hover{padding-left:0;border-color:#b6a181}
.solution-emblem{display:flex;align-items:center;justify-content:center;width:76px;height:76px;border:1px solid #897455;background:linear-gradient(145deg,#41382b,#302c29);transition:background .2s,border-color .2s,transform .2s}
.solution .solution-icon{display:block;width:44px;height:44px;margin:0;color:#e0c59c;stroke-width:1.6}
.solution:hover .solution-emblem{border-color:#d9c29d;background:#453a2c;transform:translateY(-3px)}
.solution-copy{padding-top:2px}
.solution h3{font-size:31px}
.solution .solution-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #7e6e58;font-size:25px;align-self:center;color:#dac7aa}
@media(max-width:1020px) and (min-width:901px){.header nav{font-size:14px;gap:7px}.header nav a{padding-inline:12px}.header nav .nav-contact{padding-inline:15px;margin-left:0}}
@media(max-width:900px){.header{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:15px;padding:14px 0 20px;min-height:0}.header .brand{align-self:flex-start}.header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:none;font-size:14px}.header nav a{min-height:46px;padding:10px 8px}.header nav .nav-contact{position:absolute;right:0;top:30px;min-height:49px;font-size:16px;gap:24px;padding:12px 20px;margin:0}.hero{padding-bottom:49px}}
@media(max-width:620px){.header nav{grid-template-columns:repeat(2,minmax(0,1fr));font-size:15px}.solution{grid-template-columns:64px minmax(0,1fr) 40px;gap:18px}.solution-emblem{width:64px;height:64px}.solution .solution-icon{width:38px;height:38px}.solution .solution-arrow{width:40px;height:40px;font-size:23px}.solution h3{font-size:28px}.solution p{font-size:14px}}
@media(max-width:480px){.header nav a{min-height:44px}.hero{padding-bottom:40px}.solution{grid-template-columns:minmax(0,1fr) 40px;gap:18px 16px;padding-block:27px}.solution-emblem{grid-column:1;grid-row:1}.solution-copy{grid-column:1/-1;grid-row:2;padding:0}.solution .solution-arrow{grid-column:2;grid-row:1;align-self:center}.solution h3{font-size:29px}.solution .text-link{margin-top:15px}}
