/* Will Jardim — 2027 concept. Native typography, obsidian surfaces, restrained glass. */
:root{color-scheme:dark;--bg:#08090b;--surface:#191a1e;--text:#f5f5f7;--muted:#a5a6ae;--line:#ffffff17;--radius:26px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--bg)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid #d8e6ff;outline-offset:4px}button:disabled{cursor:default}[hidden]{display:none!important}h1,h2,p{margin:0}h1,h2{text-wrap:balance}button{color:inherit}
.photo{position:absolute;inset:0 0 auto;height:620px;z-index:-1;overflow:hidden;pointer-events:none}.photo:before{content:"";position:absolute;inset:-12px;background:url('assets/portrait-pool-new.png') center 25%/cover no-repeat;filter:blur(4.5px);opacity:.55}.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#08090b24 0%,#08090b55 30%,#08090be6 74%,#08090b 100%)}
.bio{width:min(100%,760px);margin:0 auto;padding:34px 24px 32px;display:flex;flex-direction:column;gap:32px}.bio>header{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;gap:14px;min-height:190px;padding:12px 0 0}.logo{width:200px;max-width:75%;height:auto;filter:brightness(0) invert(1)}header p{font-size:.875rem;line-height:1.5;color:#d3d3da;max-width:280px;text-wrap:balance}
.glass{position:relative}.work{display:block;text-decoration:none;text-align:center;padding:4px 8px 0}.eyebrow{font-size:.75rem;line-height:1.4;letter-spacing:.15em;color:#b6b8c0;font-weight:500}.work h1{font-size:clamp(2.125rem,6vw,3.5rem);line-height:1.05;letter-spacing:-.055em;font-weight:600;max-width:570px;margin:14px auto}.work p{font-size:1rem;line-height:1.55;color:#bdbec6;max-width:390px;margin:0 auto 22px}.cta,.diagnostic-primary{display:flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid #f5f5f7;border-radius:100px;background:#f5f5f7;color:#16171b;font-size:.9375rem;line-height:1.35;font-weight:600;text-align:center;text-decoration:none;transition:background .2s var(--ease),transform .2s var(--ease)}.work .cta{width:100%;max-width:290px;margin:auto}.work:hover .cta,.diagnostic-primary:hover{background:#dcdde3;border-color:#dcdde3}.work:active .cta,.diagnostic-primary:active{transform:scale(.985)}
.bio>.diagnostic-teaser{display:grid;grid-template-columns:1fr auto;column-gap:18px;align-items:center;background:linear-gradient(120deg,#ffffff0e,#ffffff04);border:1px solid #ffffff22;border-radius:22px;padding:18px 20px;box-shadow:inset 0 1px 0 #ffffff09;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.diagnostic-teaser h2{font-size:1rem;line-height:1.35;letter-spacing:-.025em;font-weight:500;text-wrap:initial}.diagnostic-teaser>p{grid-column:1;font-size:.875rem;color:var(--muted);line-height:1.45;margin-top:5px}.diagnostic-teaser .diagnostic-primary{grid-column:2;grid-row:1/3;font-size:.9375rem;max-width:180px}
.section{min-width:0;padding-top:4px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.section h2{font-size:clamp(1.25rem,3.8vw,1.5rem);line-height:1.15;letter-spacing:-.035em;font-weight:600;max-width:360px;text-wrap:initial}.navigation{display:flex;gap:5px;flex-shrink:0}.navigation button{display:grid;place-items:center;padding:0;width:36px;height:40px;border:0;background:#ffffff09;border-radius:100px;color:#e9e9ee;font:300 1.65rem/1 system-ui;transition:background .2s}.navigation button:hover:not(:disabled){background:#ffffff1a}.navigation button:disabled{opacity:.25}.track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:22px;min-width:0;padding:2px}.track::-webkit-scrollbar{display:none}.product{color:inherit;text-decoration:none;display:flex;flex-direction:column;flex:0 0 calc((100% - 40px)/2.1);min-width:150px;scroll-snap-align:start;text-align:left;background:#191a1e;border:1px solid #ffffff10;border-radius:22px;padding:0 0 14px;overflow:hidden;transition:border-color .25s,background .25s;cursor:pointer}.product:hover{background:#202125;border-color:#ffffff30}.product-image{display:block;width:100%;aspect-ratio:1;height:auto;flex-shrink:0;overflow:hidden;margin:0 0 14px;background:#191a1e}.product-image img{display:block;width:100%;height:100%;object-fit:cover;filter:none;opacity:1;mix-blend-mode:normal;transition:transform .5s var(--ease)}.product:hover .product-image img{transform:scale(1.025)}.brand-label{display:block;padding:0 16px;color:#a8a9b2;font-size:.75rem;line-height:1.5;letter-spacing:.08em;font-weight:500}.product-name{display:block;font-size:1rem;font-weight:500;line-height:1.3;letter-spacing:-.025em;margin:5px 16px 16px;min-height:2.6em}.product-cta{display:flex;align-items:center;justify-content:center;min-height:40px;margin:auto 14px 0;border:1px solid #ffffff16;background:#ffffff09;border-radius:100px;font-size:.875rem;font-weight:500;line-height:1.4;padding:8px 12px}.product:hover .product-cta{background:#ffffff14}.track-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.75rem;line-height:1.5;color:#93959f;margin:13px 2px 0;font-variant-numeric:tabular-nums}.image-fallback{display:grid;place-items:center;font-size:.875rem;padding:16px;text-align:center}
.brand{flex:0 0 calc((100% - 28px)/2.2);min-width:140px;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;height:108px;border:1px solid #ffffff0f;border-radius:20px;background:#ffffff04;padding:22px;text-decoration:none;transition:background .2s}.brand:hover{background:#ffffff0a}.brand img{display:block;width:100%;max-width:138px;max-height:52px;object-fit:contain}.brand .client-logo-crop{display:block;position:relative;width:100%;max-width:132px;flex-shrink:0;overflow:hidden}.brand.lauton .client-logo-crop{aspect-ratio:703/176}.brand.hiven .client-logo-crop{aspect-ratio:2272/564}.brand .client-logo-crop img{position:absolute;max-width:none;max-height:none;object-fit:fill;filter:brightness(0) invert(1)}.brand.lauton .client-logo-crop img{width:107.397%;height:123.295%;left:-3.698%;top:-14.205%}.brand.hiven .client-logo-crop img{width:112.676%;height:255.319%;left:-6.338%;top:-77.66%}
.social{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 4px}.social-logo{display:flex;align-items:center}.social-logo-crop{display:block;width:40px;height:44px;background:#fff;-webkit-mask-image:url('assets/social-sheep.png');mask-image:url('assets/social-sheep.png');mask-mode:luminance;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:-3px -1px;mask-position:-3px -1px;-webkit-mask-size:46px 46px;mask-size:46px 46px}.social-content small{display:block;color:var(--muted);font-size:.8125rem;line-height:1.5}.social-content strong{display:block;font-size:1.125rem;font-weight:500;line-height:1.4;letter-spacing:-.025em}.social-links{display:flex;gap:8px}.social-link{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#ffffff08;border:1px solid #ffffff16;transition:background .2s}.social-link:hover{background:#ffffff1a}.social-link svg{width:20px;height:20px}
footer{text-align:center;font-size:.8125rem;color:#acadb6;line-height:1.6}.preview-note{font-size:.75rem;color:#858791;margin-top:8px}
.diagnostic-dialog{position:fixed;inset:0;width:calc(100% - 32px);max-width:430px;max-height:calc(100dvh - 32px);margin:auto;padding:28px 24px 24px;color:var(--text);background:#1a1b20;border:1px solid #ffffff26;border-radius:30px;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 32px 100px #000a}.diagnostic-dialog::backdrop{background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.diagnostic-close{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#bcbec7;font:300 1.75rem/1 system-ui}.diagnostic-close:hover{background:#ffffff0c}.diagnostic-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:36px;font-size:.75rem;line-height:1.5;color:#b3b5be;margin:0 0 18px}.diagnostic-kicker{letter-spacing:.08em}.diagnostic-top>span:last-child{white-space:nowrap}.diagnostic-dialog h2{font-size:1.625rem;line-height:1.1;letter-spacing:-.04em;font-weight:600;margin-bottom:14px}.diagnostic-intro{font-size:1rem;color:#b5b7c1;line-height:1.5;margin-bottom:24px}.diagnostic label{display:block;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:8px}.diagnostic input{display:block;width:100%;min-width:0;min-height:52px;border:1px solid #ffffff26;border-radius:14px;background:#0e0f12;color:#f5f5f7;padding:12px 14px;font-size:1rem;line-height:1.5}.diagnostic input::placeholder{color:#898c98}.diagnostic input:focus-visible{outline:2px solid #d8e6ff;outline-offset:2px}.diagnostic-input-wrap{position:relative}.diagnostic-input-wrap>span{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:1rem;color:#aaa;pointer-events:none}.diagnostic-input-wrap input{padding-left:36px}.diagnostic-dialog .diagnostic-primary{width:100%;margin-top:14px}.diagnostic-helper{font-size:.875rem;line-height:1.5;color:#b0b2bd;margin-top:12px}.diagnostic-preview{font-size:.75rem;line-height:1.5;color:#9496a1;margin-top:20px;border-top:1px solid var(--line);padding-top:14px}.diagnostic-profile{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:8px}.diagnostic-profile>span{overflow-wrap:anywhere;min-width:0}.diagnostic-profile button{min-height:44px;padding:8px 0 8px 10px;background:none;border:0;text-decoration:underline;font-size:.875rem;flex-shrink:0}.diagnostic-error{font-size:.875rem;line-height:1.5;color:#ffb5b5;margin-top:12px}.diagnostic-feedback{font-size:.875rem;line-height:1.5;background:#ffffff08;border:1px solid #ffffff1a;border-radius:16px;padding:16px;margin-top:16px}.diagnostic-modal-open{overflow:hidden}#product-preview-dialog h2{padding-right:32px}
@media(min-width:640px){.bio{gap:40px;padding-top:44px}.photo{height:740px;max-width:1000px;left:50%;transform:translateX(-50%);width:100%;mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.photo:before{background-position:center 30%}.bio>header{min-height:205px}.logo{width:220px}.bio>.diagnostic-teaser{padding:20px 24px}.diagnostic-teaser h2{font-size:1.125rem}.product{flex-basis:calc((100% - 24px)/3);min-width:0}.brand{flex-basis:calc((100% - 56px)/3.4);height:120px}.product-name{font-size:1.0625rem}.section-head{margin-bottom:22px}}
@media(max-width:380px){.bio{padding-inline:18px;gap:28px}.bio>.diagnostic-teaser{grid-template-columns:1fr;padding:18px}.diagnostic-teaser .diagnostic-primary{grid-column:1;grid-row:3;max-width:none;margin-top:14px}.section-head{gap:10px}.navigation{gap:3px}.navigation button{width:32px}.diagnostic-dialog{padding:26px 20px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Touch feedback is independent of hover and releases when a swipe begins. */
.product,.brand{transition:transform .16s var(--ease),border-color .16s,background .16s;transform-origin:center}
@media(hover:none){.product:hover{background:#191a1e;border-color:#ffffff10}.product:hover .product-image img{transform:none}.product:hover .product-cta{background:#ffffff09}.brand:hover{background:#ffffff04}}
.product.is-touch-pressed,.brand.is-touch-pressed{transform:scale(.975);border-color:#ffffff55;background:#26282e}
.product.is-touch-pressed .product-image img{transform:scale(1.035)}
.product.is-touch-pressed .product-cta{background:#ffffff1c}
@media(prefers-reduced-motion:reduce){.product.is-touch-pressed,.brand.is-touch-pressed,.product.is-touch-pressed .product-image img{transform:none}}

/* A dedicated result view replaces the form rather than appending a notice. */
.diagnostic-result{text-align:center;padding:16px 0 2px}
.diagnostic-result-icon{display:grid;place-items:center;width:88px;height:88px;margin:0 auto 22px;border:1px solid #ffffff22;border-radius:28px;background:linear-gradient(145deg,#ffffff13,#ffffff03);color:#f5f5f7;box-shadow:inset 0 1px 0 #ffffff10}
.diagnostic-result-icon svg{width:48px;height:48px}
.diagnostic-result-eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.12em;color:#aeb0bc;margin-bottom:10px}
.diagnostic-result h2{max-width:310px;margin:0 auto 16px}
.diagnostic-result>p:not(.diagnostic-result-eyebrow){font-size:1rem;line-height:1.55;color:#bec0ca;margin:0 auto 14px;max-width:330px}
.diagnostic-result strong{font-weight:500;color:#f5f5f7}
.diagnostic-result>p.diagnostic-result-detail{font-size:.875rem;color:#989ba8;margin-bottom:24px}
.diagnostic-result h2:focus{outline:none}

.diagnostic-result>p.diagnostic-result-email{font-size:.9375rem;line-height:1.5;color:#f5f5f7;padding:12px 16px;background:#ffffff07;border:1px solid #ffffff14;border-radius:14px;overflow-wrap:anywhere;margin:18px auto}
.diagnostic-result>p.diagnostic-simulation-note{font-size:.75rem;line-height:1.5;color:#989ba8;margin:16px auto 0}

.brand.mappi .client-logo-crop{aspect-ratio:3910/779}
.brand.mappi .client-logo-crop img{width:108.1330%;height:145.5712%;left:-2.9923%;top:-22.2080%}

/* Verified offer badge, outside the product photograph. */
.product-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:0 12px;min-height:34px}.product-meta .brand-label{padding:0;font-size:clamp(.55rem,1.5vw,.65rem);letter-spacing:.045em;white-space:nowrap}.offer-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;padding:4px 6px;border-radius:9px;background:#17342b;color:#a6e9c5;border:1px solid #a6e9c518;line-height:1.15}.offer-badge strong{font-size:.625rem;font-weight:650;white-space:nowrap}.offer-badge small{font-size:.5rem;margin-top:2px;white-space:nowrap}

/* Client logos are display-only; outbound shopping remains on product cards. */
.brands .brand{cursor:default}.brands .brand:hover{transform:none;background:#ffffff03;border-color:#ffffff10}.brands .brand:hover img{transform:none}

/* Optional context: secondary text action and a mobile bottom sheet. */
article.product{cursor:default}article.product>a{text-decoration:none}article.product>a:first-child{display:block}.product-name{margin-bottom:4px}.product-about{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:44px;padding:8px 16px;margin:0 0 6px;width:100%;background:none;border:0;text-align:left;color:#b8bac4;font-size:.75rem;line-height:1.4}.product-about:hover{color:#fff}.product-about span{font-size:1.125rem}.product-cta{text-decoration:none}
.product-details{position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:90dvh;margin:0;padding:12px 24px max(24px,env(safe-area-inset-bottom));border:1px solid #ffffff24;border-radius:28px 28px 0 0;background:#1a1b20;color:var(--text);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 -12px 80px #0008}.product-details::backdrop{background:#0009;backdrop-filter:blur(8px)}.sheet-handle{width:36px;height:4px;background:#ffffff35;border-radius:5px;margin:0 auto 24px}.details-close{position:absolute;right:10px;top:12px;width:44px;height:44px;background:none;border:0;border-radius:50%;font-size:26px;color:#bcbec7}.details-close:hover{background:#ffffff0c}.details-header{display:flex;align-items:center;gap:14px;padding-right:24px;margin-bottom:26px}.details-header img{width:72px;height:72px;border-radius:16px;object-fit:cover;flex-shrink:0}.details-header p{font-size:10px;letter-spacing:.1em;color:#aaaeb9;margin-bottom:6px}.details-header h2{font-size:22px;line-height:1.15;font-weight:600;letter-spacing:-.035em;text-wrap:initial}.details-header h2:focus{outline:none}.product-details section{margin:0 0 22px}.product-details h3{font-size:15px;line-height:1.4;font-weight:600;margin:0 0 8px}.product-details section p{font-size:15px;line-height:1.55;color:#bfc1cb}.draft-label{display:block;color:#c9b993;font-size:9px;line-height:1.4;letter-spacing:.06em;margin-bottom:8px}.product-details .cta{min-height:48px;gap:8px;width:100%;margin-top:26px}
@media(min-width:640px){.product-details{inset:0;margin:auto;width:440px;max-width:calc(100% - 48px);max-height:calc(100dvh - 48px);padding:28px;border-radius:28px}.sheet-handle{display:none}.details-header{margin-top:6px}}

/* Longer editorial copy remains readable within the existing scrollable sheet. */
.product-details section p{line-height:1.6}.product-details section{margin-bottom:24px}@media(min-width:640px){.product-details{width:480px}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.diagnostic-primary:disabled{opacity:.55;cursor:wait}footer a{color:inherit}.diagnostic-preview a{color:inherit}

/* Client marks share the existing monochrome carousel treatment. */
.brand.new-client img{filter:brightness(0) invert(1)}
.brand.mamamais img{max-width:138px;max-height:56px}
.brand.dolcii img{max-width:138px;max-height:60px}
