:root{--cream:#f9f3e8;--ink:#000;--line:rgba(249,243,232,.3);font-family:'Söhne','Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--cream);background:#000;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:1px solid currentColor;outline-offset:6px}img{display:block;max-width:100%}h1,h2,p,figure{margin:0}h1,h2{font-weight:400}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:fixed;z-index:10;top:-80px;left:20px;background:var(--cream);color:#000;padding:14px}.skip:focus{top:20px}.hero{position:relative;isolation:isolate;min-height:760px;height:100svh;overflow:hidden;background:#000;--logo-width:clamp(290px,44vw,590px);--logo-space:calc(var(--logo-width)*.20734)}.mist{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.mist canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1.8s}.mist.ready canvas{opacity:1}.mist:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 90% 44%,rgba(249,243,232,.09),transparent 35%),radial-gradient(ellipse at 4% 65%,rgba(249,243,232,.09),transparent 35%)}.mist.ready:before{opacity:0}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#0008,transparent 20%,transparent 78%,#000);pointer-events:none}.hero-core{height:100%;min-height:inherit;display:grid;grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);justify-items:center;position:relative}.launch-line{align-self:end;padding-bottom:var(--logo-space);font-size:10px;line-height:1.5;letter-spacing:.18em;text-transform:uppercase;text-align:center}.launch-line span{margin-left:13px;opacity:.65}.brand{width:var(--logo-width);line-height:0;position:relative}.brand img{width:100%;height:auto}.signup{align-self:start;padding-top:var(--logo-space);width:min(380px,calc(100% - 52px));text-align:center}.signup label{display:block;font-size:12px;margin-bottom:19px;letter-spacing:.015em}.signup-row{display:flex;align-items:center;gap:17px;border-bottom:1px solid rgba(249,243,232,.5);padding-bottom:9px;transition:border-color .3s}.signup-row:focus-within{border-color:var(--cream)}.signup input{font-family:inherit;min-width:0;width:100%;height:44px;background:transparent;color:var(--cream);border:0;outline:0;border-radius:0;font-size:13px;padding:0 0 0 1px}.signup input::placeholder{color:rgba(249,243,232,.68);opacity:1}.signup button{border:1px solid var(--cream);background:var(--cream);color:#000;min-width:105px;height:44px;padding:0 18px;font-size:11px;border-radius:0;transition:background .3s,color .3s}.signup button:hover{background:transparent;color:var(--cream)}.form-status{font-size:12px;line-height:1.6;margin-top:15px}.form-status:empty{display:none}.daylight{color:#000;background:var(--cream);position:relative}.threshold{height:410px;position:relative;background:linear-gradient(180deg,#000 0%,#050505 10%,#191918 23%,#4c4b47 42%,#939088 62%,#d9d3c8 82%,#f9f3e8 100%);overflow:hidden}.threshold:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 18% 80%,rgba(249,243,232,.17),transparent 67%);pointer-events:none}.threshold:before{content:"";position:absolute;inset:0 0 auto;height:25%;background:linear-gradient(#000,transparent);z-index:1;pointer-events:none}.threshold p{position:absolute;z-index:2;top:34%;width:100%;text-align:center;color:var(--cream);font-size:clamp(23px,2.4vw,36px);font-weight:300;letter-spacing:-.035em;opacity:.92}.meet-section{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:760px;align-items:center}.meet-copy{padding:65px 7.3vw 95px;position:relative;z-index:1}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.17em;text-transform:uppercase;margin-bottom:41px}.meet-copy h2{font-size:clamp(33px,3.35vw,53px);letter-spacing:-.052em;line-height:1.13;max-width:620px}.meet-sentence{display:block}.meet-sentence+.meet-sentence{margin-top:19px}.story-copy{font-size:14px;line-height:1.85;max-width:370px;margin-top:37px;letter-spacing:-.012em}.meet-link{display:inline-block;font-size:12px;margin-top:34px;padding:0 0 6px;border-bottom:1px solid #000;transition:opacity .2s}.meet-link:hover{opacity:.6}.meet-image{height:calc(100% + 120px);min-height:850px;align-self:end;margin-top:-120px;position:relative;mask-image:linear-gradient(to bottom,transparent,#000 17%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 17%)}.meet-image img{width:100%;height:100%;object-fit:cover;object-position:50% 52%;position:absolute;inset:0}.footer{color:#000;background:var(--cream);padding:35px 5vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(0,0,0,.12);gap:20px;font-size:10px;letter-spacing:.015em}.footer-links{display:flex;gap:25px}.footer a:hover{text-decoration:underline;text-underline-offset:4px}.reveal{opacity:1}.motion-enabled .reveal{opacity:0;transform:translateY(24px);transition:opacity 1.2s ease,transform 1.4s cubic-bezier(.16,1,.3,1)}.motion-enabled .reveal.in-view{opacity:1;transform:translateY(0)}
/* Keep the browser's saved-email highlight white, including while focused. */
.signup input:-webkit-autofill,.signup input:-webkit-autofill:hover,.signup input:-webkit-autofill:focus,.signup input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #fff inset;box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#000;color:#000;caret-color:#000}
.signup input:autofill{box-shadow:0 0 0 1000px #fff inset;color:#000;caret-color:#000}
/* Sculpture: a more expansive logo and mist, with a quieter enclosed signup. */
.sculpture .hero{--logo-width:clamp(300px,50vw,680px);min-height:840px}.sculpture .hero-core{grid-template-rows:minmax(0,1fr) auto minmax(0,1fr)}.sculpture .launch-line{letter-spacing:.22em}:is(.veil,.sculpture) .signup{width:min(405px,calc(100% - 52px))}:is(.veil,.sculpture) .signup-row{border:1px solid rgba(249,243,232,.38);border-radius:999px;padding:5px 5px 5px 22px;gap:10px;background:rgba(0,0,0,.2);backdrop-filter:blur(9px)}:is(.veil,.sculpture) .signup-row:focus-within{border-color:var(--cream)}:is(.veil,.sculpture) .signup button{border-radius:999px;min-width:112px}:is(.veil,.sculpture) .signup label{margin-bottom:18px}.sculpture .threshold{height:520px;background:radial-gradient(ellipse 110% 70% at 92% 104%,#f9f3e8 0%,transparent 74%),linear-gradient(180deg,#000 0%,#0b0b0a 16%,#3c3b37 37%,#aaa59b 67%,#f9f3e8 100%)}.sculpture .threshold p{font-size:clamp(35px,5vw,76px);letter-spacing:-.055em;top:36%}.sculpture .meet-section{grid-template-columns:1.15fr 1fr;padding:0 5.5vw 85px;gap:6vw;min-height:820px}.sculpture .meet-copy{padding:40px 0 80px 2vw}.sculpture .meet-copy h2{font-size:clamp(36px,4.1vw,64px)}.sculpture .meet-image{height:820px;min-height:0;margin-top:-180px;align-self:start;mask-image:linear-gradient(to bottom,transparent,#000 20%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 20%)}.sculpture .story-copy{max-width:365px;margin-top:42px}.sculpture .meet-link{margin-top:40px}.sculpture .eyebrow{margin-bottom:43px}
@media(min-width:1600px){.meet-copy{padding-left:10vw;padding-right:6vw}}@media(max-width:900px){.hero{--logo-width:clamp(290px,54vw,530px);min-height:730px}.sculpture .hero{--logo-width:clamp(300px,59vw,620px);min-height:780px}.meet-copy{padding-left:6vw;padding-right:5vw}.meet-copy h2{font-size:37px}.story-copy{font-size:13px}.sculpture .meet-section{gap:5vw}.sculpture .meet-copy h2{font-size:40px}.meet-image{min-height:780px}.sculpture .meet-image{height:780px}}
@media(max-width:600px){.hero{--logo-width:min(78vw,420px);min-height:680px;height:100svh;--logo-space:calc(var(--logo-width)*.20734)}.sculpture .hero{--logo-width:min(83vw,440px);min-height:700px}.launch-line,.sculpture .launch-line{font-size:8px;letter-spacing:.14em}.launch-line span{margin-left:8px}.signup{width:calc(100% - 64px);max-width:350px}.signup label{font-size:11px;margin-bottom:16px}.signup input{font-size:16px}.signup button{font-size:11px;min-width:96px;padding:0 12px}.signup-row{gap:9px}:is(.veil,.sculpture) .signup{width:calc(100% - 48px)}:is(.veil,.sculpture) .signup-row{padding-left:17px;gap:4px}:is(.veil,.sculpture) .signup button{min-width:100px}.threshold{height:300px}.threshold p{font-size:24px;top:40%}.sculpture .threshold{height:360px}.sculpture .threshold p{font-size:39px;top:39%}.meet-section,.sculpture .meet-section{display:flex;flex-direction:column;min-height:0;padding:0;gap:0}.meet-copy,.sculpture .meet-copy{padding:28px 28px 54px;width:100%;order:0}.eyebrow,.sculpture .eyebrow{margin-bottom:29px}.meet-copy h2,.sculpture .meet-copy h2{font-size:clamp(35px,9vw,48px);max-width:460px;letter-spacing:-.05em}.meet-sentence+.meet-sentence{margin-top:18px}.story-copy,.sculpture .story-copy{font-size:14px;line-height:1.85;margin-top:31px;max-width:365px}.meet-link,.sculpture .meet-link{margin-top:28px}.meet-image,.sculpture .meet-image{order:1;position:relative;align-self:auto;margin:-10px 0 0;width:100%;height:610px;min-height:0;mask-image:linear-gradient(to bottom,transparent,#000 10%);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%)}.sculpture .meet-image{width:calc(100% - 48px);margin:0 24px 32px;height:540px}.footer{padding:27px 25px;font-size:9px;align-items:flex-start;line-height:1.6}.footer>span:first-child{max-width:195px}.footer-links{gap:14px;flex-wrap:wrap;justify-content:flex-end}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.motion-enabled .reveal{opacity:1;transform:none}}

/* The approved Veil opening and black-to-cream transition remain in base.css. */
.room-study .meet-section{position:relative;isolation:isolate;display:flex;align-items:center;min-height:940px;padding:125px 7.3vw 165px;overflow:hidden;background:var(--cream)}
.room-study .meet-copy{position:relative;z-index:2;width:45%;max-width:560px;padding:0}
.room-study .meet-copy h2{font-size:clamp(38px,3.5vw,55px);line-height:1.13;letter-spacing:-.05em}
.room-study .eyebrow{margin-bottom:40px}
.room-study .story-copy{max-width:355px;margin-top:36px}
.room-study .meet-link{margin-top:33px}
.room-study .footer{border-top:0}
.room-scene{position:absolute;margin:0;z-index:0;pointer-events:none;overflow:hidden}
.room-scene img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.room-scene .scene-portrait{display:none}

/* 01 — the original portrait loses its rectangular boundary and bleeds to the edge. */
.dissolve .room-scene{inset:-60px -1px -70px auto;width:62%;mask-image:linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent)}
.dissolve .room-scene img{object-position:52% 59%;mask-image:linear-gradient(90deg,transparent,#000 36%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 36%)}
.dissolve .room-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,243,232,.54),transparent 42%)}
.dissolve .meet-copy{width:46%}

/* 02 — copy inhabits the wall of a continuous wide photograph. */
.inhabit .threshold{height:280px;background:linear-gradient(180deg,rgb(0,0,0) 0%,rgb(0,0,0) 2%,rgb(0,0,0) 4%,rgb(0,0,0) 6%,rgb(0,0,0) 8%,rgb(1,1,1) 10%,rgb(1,1,1) 12%,rgb(2,2,2) 14%,rgb(4,4,4) 16%,rgb(5,5,5) 18%,rgb(8,8,8) 20%,rgb(10,10,10) 22%,rgb(13,13,13) 24%,rgb(17,17,17) 26%,rgb(21,21,21) 28%,rgb(26,26,26) 30%,rgb(31,31,31) 32%,rgb(37,37,37) 34%,rgb(44,44,44) 36%,rgb(51,51,51) 38%,rgb(58,58,58) 40%,rgb(66,66,66) 42%,rgb(74,74,74) 44%,rgb(83,83,83) 46%,rgb(92,92,92) 48%,rgb(102,102,102) 50%,rgb(111,111,111) 52%,rgb(121,121,121) 54%,rgb(131,131,131) 56%,rgb(141,140,140) 58%,rgb(150,150,149) 60%,rgb(160,159,158) 62%,rgb(169,168,166) 64%,rgb(178,177,174) 66%,rgb(187,185,181) 68%,rgb(196,193,187) 70%,rgb(203,200,194) 72%,rgb(211,207,200) 74%,rgb(218,213,205) 76%,rgb(224,219,210) 78%,rgb(229,224,214) 80%,rgb(234,228,218) 82%,rgb(238,232,222) 84%,rgb(241,235,225) 86%,rgb(244,238,227) 88%,rgb(246,240,229) 90%,rgb(247,241,230) 92%,rgb(248,242,231) 94%,rgb(249,243,232) 96%,rgb(249,243,232) 98%,rgb(249,243,232) 100%)}
.inhabit .threshold:before{display:none}
.inhabit .threshold:after{background-image:url('assets/transition-grain.svg');background-size:180px 180px;opacity:.035;mix-blend-mode:soft-light;mask-image:linear-gradient(transparent,#000 28%,#000 78%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 28%,#000 78%,transparent)}
.inhabit .threshold p{top:calc(34% + 32px)}
.inhabit .meet-section{min-height:940px;padding-top:130px;padding-bottom:175px}
.inhabit .room-scene{--room-fade:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.015) 3%,rgba(0,0,0,.06) 6%,rgba(0,0,0,.16) 10%,rgba(0,0,0,.33) 15%,rgba(0,0,0,.56) 21%,rgba(0,0,0,.77) 28%,rgba(0,0,0,.93) 35%,#000 42%,#000 80%,transparent 100%);inset:0;mask-image:var(--room-fade);-webkit-mask-image:var(--room-fade)}
.inhabit .room-scene img{object-position:65% 50%}
.inhabit .room-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,243,232,.63),rgba(249,243,232,.19) 42%,transparent 68%)}
.inhabit .meet-copy{width:44%;max-width:545px}
.inhabit .meet-copy h2{font-size:clamp(38px,3.35vw,53px)}
.inhabit .story-copy{max-width:350px}

/* 03 — an editorial introduction flows into a wide view of the room. */
.unfold .meet-section{display:block;min-height:0;padding:92px 0 0}
.unfold .meet-copy{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);column-gap:6vw;row-gap:0;width:100%;max-width:none;padding:0 7.3vw}
.unfold .eyebrow{grid-column:1/-1;margin-bottom:35px}
.unfold .meet-copy h2{grid-column:1;grid-row:2/4;font-size:clamp(39px,3.65vw,58px);max-width:720px;line-height:1.13}
.unfold .story-copy{grid-column:2;grid-row:2;margin:5px 0 0;max-width:345px;align-self:start}
.unfold .meet-link{grid-column:2;grid-row:3;justify-self:start;align-self:start;margin-top:28px}
.unfold .room-scene{position:relative;width:100%;height:clamp(620px,53vw,880px);margin-top:-4px;mask-image:linear-gradient(180deg,transparent,#000 26%,#000 80%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 26%,#000 80%,transparent)}
.unfold .room-scene img{object-position:50% 56%}
.unfold .room-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(249,243,232,.22),transparent 35%)}

@media(min-width:1800px){.room-study .meet-section{padding-left:10vw;padding-right:10vw}.unfold .meet-section{padding-left:0;padding-right:0}.unfold .meet-copy{padding-left:10vw;padding-right:10vw}}
@media(max-width:1000px){.room-study .meet-section{padding-left:6vw;padding-right:6vw;min-height:900px}.room-study .meet-copy{width:49%}.room-study .meet-copy h2{font-size:41px}.dissolve .room-scene{width:64%}.inhabit .room-scene img{object-position:62% 50%}.unfold .meet-section{padding:80px 0 0;min-height:0}.unfold .meet-copy{width:100%;padding:0 6vw;column-gap:5vw;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)}.unfold .meet-copy h2{font-size:42px}.unfold .story-copy{font-size:13px}.unfold .room-scene{height:620px}}
@media(max-width:600px){
 .room-study .meet-section{display:block;min-height:0;padding:0}
 .room-study .meet-copy,.inhabit .meet-copy,.dissolve .meet-copy{width:100%;max-width:none;padding:34px 28px 60px}
 .room-study .meet-copy h2,.inhabit .meet-copy h2,.unfold .meet-copy h2{font-size:clamp(35px,9vw,48px);line-height:1.13;letter-spacing:-.05em}
 .room-study .eyebrow{margin-bottom:29px}
 .room-study .story-copy,.unfold .story-copy{font-size:14px;line-height:1.85;margin-top:31px;max-width:365px}
 .room-study .meet-link,.unfold .meet-link{margin-top:28px}
 .room-scene .scene-wide{display:none}.room-scene .scene-portrait{display:block}
 .dissolve .room-scene{position:relative;inset:auto;width:100%;height:690px;margin-top:-70px;mask-image:linear-gradient(180deg,transparent,#000 24%,#000 77%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 24%,#000 77%,transparent)}
 .dissolve .room-scene img{mask-image:none;-webkit-mask-image:none;object-position:50% 52%}
 .dissolve .room-scene:after{background:linear-gradient(90deg,rgba(249,243,232,.10),transparent 23%)}
 .inhabit .threshold{height:210px}
 .inhabit .threshold p{top:calc(40% + 22px)}
 .inhabit .meet-section{padding-bottom:520px}
 .inhabit .meet-copy{padding-bottom:15px}
 .inhabit .room-scene{--room-fade:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.02) 6%,rgba(0,0,0,.10) 12%,rgba(0,0,0,.28) 20%,rgba(0,0,0,.55) 29%,rgba(0,0,0,.80) 38%,#000 48%,#000 80%,transparent 100%);inset:auto 0 0;height:760px;mask-image:var(--room-fade);-webkit-mask-image:var(--room-fade)}
 .inhabit .room-scene img{object-position:51% 53%}
 .inhabit .room-scene:after{background:linear-gradient(180deg,rgba(249,243,232,.80),transparent 43%)}
 .unfold .meet-copy{display:block;width:100%;padding:34px 28px 28px}
 .unfold .room-scene{height:590px;margin-top:-18px;mask-image:linear-gradient(180deg,transparent,#000 23%,#000 81%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 23%,#000 81%,transparent)}
 .unfold .room-scene img{object-position:50% 57%}
 .unfold .room-scene:after{background:none}
}

@font-face{font-family:'Satoshi';src:url('assets/Satoshi-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}

/* One continuous textile, softly lit in a genuinely black space. */
.silk{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none;background:#000}
.silk img,.silk canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.silk img{object-fit:cover;object-position:50% 50%;opacity:.76}
.silk canvas{opacity:0;transition:opacity 1.2s}
.silk.ready canvas{opacity:1}
.silk.ready img{opacity:0}
.tactile .hero:after{background:linear-gradient(#0009,transparent 24%,transparent 70%,#000)}

/* Contemporary display type; both sentences retain equal size and weight. */
.tactile .threshold p{font-family:'Satoshi','Helvetica Neue',Arial,sans-serif;font-size:clamp(30px,2.6vw,39px);font-weight:400;font-style:normal;letter-spacing:-.015em;line-height:1.2}
.tactile .meet-copy h2{font-family:'Satoshi','Helvetica Neue',Arial,sans-serif;font-weight:400;font-style:normal;font-size:clamp(38px,3.2vw,51px);line-height:1.18;letter-spacing:-.015em}
.tactile .meet-sentence{text-wrap:balance}
.tactile .meet-sentence+.meet-sentence{margin-top:14px}
.tactile .story-copy{font-size:14px;line-height:1.9;letter-spacing:0;max-width:355px}
.tactile .eyebrow{margin-bottom:22px;display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.2em}
.fold-mark{width:29px;height:17px;fill:none;stroke:currentColor;stroke-width:.7;opacity:.65;flex:0 0 auto}
.fold-mark:last-child{transform:rotate(180deg);margin-left:-3px}

/* Fine textile grain fades into the original room, without a framed panel. */
.tactile .meet-section:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background-image:url('assets/woven-surface.svg');background-size:180px 180px;opacity:.22;mask-image:linear-gradient(180deg,transparent,#000 11%,#000 88%,transparent),linear-gradient(90deg,#000 0%,#000 25%,transparent 68%);mask-composite:intersect;-webkit-mask-image:linear-gradient(180deg,transparent,#000 11%,#000 88%,transparent),linear-gradient(90deg,#000 0%,#000 25%,transparent 68%);-webkit-mask-composite:source-in}
.tactile .meet-section:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(118deg,transparent 8%,rgba(255,254,247,.16) 18%,transparent 29%,rgba(202,185,159,.035) 35%,transparent 48%);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 83%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 83%,transparent)}
.tactile .meet-copy{z-index:2}
.tactile .footer{background-image:linear-gradient(rgba(249,243,232,.84),rgba(249,243,232,.84)),url('assets/woven-surface.svg');background-size:auto,180px 180px}
@media(max-width:1000px){.tactile .meet-copy h2{font-size:40px}}
@media(max-width:600px){
 .silk img{object-position:92% 50%}
 .tactile .threshold p{font-size:30px}
 .tactile .meet-copy h2{font-size:clamp(34px,9.1vw,42px);line-height:1.2;letter-spacing:-.015em}
 .tactile .meet-sentence+.meet-sentence{margin-top:16px}
 .tactile .eyebrow{gap:6px;margin-bottom:20px}
 .fold-mark{width:25px}
 .tactile .meet-section:before{opacity:.22;mask-image:linear-gradient(180deg,transparent,#000 8%,#000 30%,transparent 63%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 8%,#000 30%,transparent 63%)}
 .tactile .story-copy{font-size:14px;line-height:1.85}
}

.material{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#000}
.material canvas,.material img{position:absolute;inset:0;display:block;width:100%;height:100%}
.material img{object-fit:cover;object-position:50% 50%;opacity:.26;mask-image:linear-gradient(transparent,#000 14%,#000 80%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 14%,#000 80%,transparent)}
.material canvas{opacity:0;transition:opacity 1s}
.material.ready canvas{opacity:1}
.material.ready img{opacity:0}
.motion-study .hero:after{z-index:1;background:linear-gradient(#0004,transparent 20%,transparent 78%,#000)}
.motion-study .hero-core{z-index:2}
.motion-study .launch-line,.motion-study .signup{position:relative;z-index:1;transform:translateZ(0)}
@media(max-width:600px){.material img{object-position:72% 50%}}

/* The original cream artwork stays underneath both light treatments. */
.finish .brand::after{content:'';position:absolute;inset:0;pointer-events:none;mask-image:url('assets/odil-cream.svg');-webkit-mask-image:url('assets/odil-cream.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}

/* Soft light: a wide, low-contrast satin reflection, with a long quiet interval. */
.satin .brand::after{background:linear-gradient(112deg,rgba(0,0,0,.075) 0%,rgba(0,0,0,.075) 37%,rgba(0,0,0,.025) 43%,transparent 48%,rgba(0,0,0,.035) 54%,rgba(0,0,0,.11) 59%,rgba(0,0,0,.075) 63%,rgba(0,0,0,.075) 100%);background-size:280% 100%;background-position:100% 50%;animation:satin-light 16s cubic-bezier(.3,0,.2,1) infinite;animation-play-state:var(--light-play,running)}
@keyframes satin-light{0%,12%{background-position:100% 50%}64%,100%{background-position:0% 50%}}

/* Quiet gloss: broad, curved reflection. Only the cream's lightness changes. */
.gloss .brand::after{background:radial-gradient(ellipse 76% 155% at var(--light-x,38%) var(--light-y,22%),transparent 0%,transparent 22%,rgba(0,0,0,.025) 39%,rgba(0,0,0,.13) 68%,rgba(0,0,0,.055) 100%);transition:background-position .6s}

/* These values follow the visitor's scroll, and remain readable without JS. */
.finish.motion-enabled .threshold p{opacity:var(--tag-opacity,0);transform:translate3d(0,var(--tag-lift,0px),0);filter:blur(var(--tag-blur,0px));transition:none;will-change:opacity,transform,filter}
.finish .signup-row{transition:border-color .6s,box-shadow .6s,background .6s}
.finish .signup-row:focus-within{box-shadow:0 0 0 3px rgba(249,243,232,.065)}
.finish .signup button{transition:background .45s,color .45s,transform .45s}
@media(hover:hover){.finish .signup button:hover{transform:translateY(-1px);background:#f9f3e8;color:#000}.finish .signup button:active{transform:translateY(0)}}
.finish .meet-link{text-decoration-thickness:1px;transition:opacity .4s,text-underline-offset .4s}
.finish .meet-link:hover{text-underline-offset:6px;opacity:.7}
@media(prefers-reduced-motion:reduce){.finish .brand::after{animation:none!important}.finish.motion-enabled .threshold p{opacity:1;transform:none;filter:none;will-change:auto}.finish .signup button{transform:none!important}}

/* Give the mobile introduction room to breathe after the scroll reveal. */
@media(max-width:600px){
 .satin .meet-copy{padding-top:96px}
 .satin .eyebrow{margin-bottom:40px}
}

/* A longer, cosine-eased passage through grey, with soft endpoints. */
.satin .threshold{height:350px;background:linear-gradient(180deg,rgb(0.00,0.00,0.00) 0%,rgb(0.13,0.13,0.13) 2%,rgb(0.59,0.59,0.59) 4%,rgb(1.41,1.41,1.41) 6%,rgb(2.62,2.62,2.62) 8%,rgb(4.23,4.23,4.23) 10%,rgb(6.25,6.25,6.25) 12%,rgb(8.69,8.69,8.69) 14%,rgb(11.55,11.55,11.55) 16%,rgb(14.83,14.83,14.83) 18%,rgb(18.52,18.52,18.52) 20%,rgb(22.62,22.62,22.62) 22%,rgb(27.12,27.12,27.12) 24%,rgb(32.01,32.01,32.01) 26%,rgb(37.27,37.27,37.27) 28%,rgb(42.89,42.89,42.89) 30%,rgb(48.85,48.85,48.85) 32%,rgb(55.13,55.13,55.13) 34%,rgb(61.71,61.71,61.71) 36%,rgb(68.57,68.57,68.57) 38%,rgb(75.68,75.68,75.68) 40%,rgb(83.01,83.01,83.01) 42%,rgb(90.53,90.53,90.53) 44%,rgb(98.22,98.22,98.22) 46%,rgb(106.04,106.04,106.04) 48%,rgb(113.96,113.96,113.96) 50%,rgb(121.96,121.96,121.96) 52%,rgb(129.98,129.97,129.93) 54%,rgb(138.01,137.90,137.70) 56%,rgb(146.01,145.73,145.22) 58%,rgb(153.93,153.41,152.45) 60%,rgb(161.76,160.92,159.38) 62%,rgb(169.44,168.23,166.01) 64%,rgb(176.95,175.32,172.32) 66%,rgb(184.25,182.17,178.34) 68%,rgb(191.31,188.75,184.06) 70%,rgb(198.10,195.07,189.51) 72%,rgb(204.58,201.08,194.68) 74%,rgb(210.72,206.79,199.58) 76%,rgb(216.49,212.16,204.21) 78%,rgb(221.87,217.17,208.57) 80%,rgb(226.83,221.82,212.64) 82%,rgb(231.34,226.07,216.41) 84%,rgb(235.37,229.89,219.84) 86%,rgb(238.92,233.27,222.91) 88%,rgb(241.96,236.18,225.59) 90%,rgb(244.47,238.60,227.85) 92%,rgb(246.44,240.51,229.64) 94%,rgb(247.86,241.89,230.94) 96%,rgb(248.71,242.72,231.73) 98%,rgb(249.00,243.00,232.00) 100%)}
@media(max-width:600px){.satin .threshold{height:270px}}


.privacy-page{max-width:760px;margin:auto;padding:48px 25px 80px}
.privacy-page .logo{margin-bottom:65px}
.privacy-page h1{font-size:clamp(40px,6vw,64px);margin-bottom:22px}
.privacy-page h2{font-size:24px;margin:32px 0 12px;letter-spacing:-.02em}
.privacy-page p{font-size:15px;line-height:1.75;margin-bottom:16px}
.privacy-page .back-link{display:inline-block;margin-top:32px;font-size:13px}
body.privacy-body{background:var(--cream);color:#000;min-height:100vh}.privacy-page .logo{width:111px;height:auto}.privacy-page a{text-decoration:underline;text-underline-offset:3px}
