@font-face{font-family:Inter;src:url('inter.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--ivory:#faf9f6;--champagne:#ede6e1;--greige:#d6ccc4;--taupe:#b7a89c;--ink:#3f3f3f;--muted:#6c625b;--line:#d9d0c8;--serif:'Iowan Old Style','Baskerville','Palatino Linotype',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--muted);outline-offset:7px}::selection{background:var(--greige)}.page{max-width:1720px;margin:auto}.skip{position:fixed;top:-90px;left:15px;background:var(--ink);color:white;padding:12px;z-index:20}.skip:focus{top:15px}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 6.3%;height:130px}.logo{width:300px;height:100px;display:flex;align-items:center;justify-content:center;margin-left:-43px}.logo img{width:300px;height:300px;pointer-events:none}.instagram{font-size:.8rem;text-align:right;line-height:1.8}.instagram span{display:block;font-size:.85rem}.instagram:hover span{text-decoration:underline;text-underline-offset:5px}.hero{display:grid;grid-template-columns:1.12fr 1fr;padding:0 6.3%;gap:3vw;min-height:660px;align-items:center}.copy{padding:38px 0 45px;position:relative;z-index:2}.launch{font-size:.75rem;letter-spacing:.13em;display:flex;align-items:center;gap:13px;margin-bottom:36px;line-height:1.5}.launch-line{width:32px;height:1px;background:var(--muted);flex-shrink:0}h1{font-family:var(--serif);font-size:clamp(4.5rem,6.85vw,8rem);line-height:.99;font-weight:400;letter-spacing:-.05em;margin:0}h1 em{font-weight:400;color:#8a7665}.intro{font-size:1rem;line-height:1.85;margin:30px 0 28px;color:var(--muted)}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;gap:18px;align-items:center;justify-content:center;border:1px solid var(--ink);background:var(--ink);color:var(--ivory);font-size:.875rem;min-height:56px;padding:15px 24px;transition:background .2s,transform .2s}.button:hover{background:#64554a;transform:translateY(-2px)}.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.phone{font-size:.8rem;line-height:1.5;padding:7px 0;border-bottom:1px solid #b7a89c}.phone:hover{border-color:var(--ink)}.contact-note{font-size:.75rem;color:var(--muted);margin:12px 0 0}.categories{display:flex;flex-wrap:wrap;gap:8px 23px;margin-top:45px;font-size:.75rem;color:var(--muted);line-height:1.7}.categories span:not(:last-child):after{content:'·';margin-left:23px;color:var(--taupe)}.visual{position:relative;height:660px;padding:20px 24px 0 0;align-self:stretch}.photo{height:100%;position:relative;overflow:hidden;border-radius:240px 240px 3px 3px;background:var(--champagne)}.photo>img{height:100%;width:100%;object-fit:cover;object-position:50% 30%;animation:photo-in 1.3s cubic-bezier(.2,.65,.3,1) both}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#3f3f3f90)}.photo-caption{position:absolute;bottom:28px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:flex-end;color:#fff}.photo-caption>span:first-child{font-size:.75rem;letter-spacing:.13em;line-height:1.8}.photo-signature{font-family:var(--serif);font-style:italic;font-size:2.7rem;line-height:1}.vertical-label{position:absolute;right:0;top:215px;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.12em;color:var(--muted)}.soon-stamp{position:absolute;left:-30px;top:42px;width:112px;height:112px;border:1px solid #c6b8aa;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--ivory);transform:rotate(-12deg)}.soon-stamp>span{font-size:.75rem;letter-spacing:.15em}.soon-stamp em{font-family:var(--serif);font-size:2rem;line-height:1.1;color:#8a7665}.footer{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:40px 6.3% 28px}.location>span{font-size:.75rem;letter-spacing:.14em}.location p{font-size:.8rem;color:var(--muted);line-height:1.8;margin:8px 0 0}.footer-end{text-align:right;font-size:.75rem;color:var(--muted)}.footer-end p{margin:0 0 12px}.footer-end nav{display:flex;justify-content:flex-end;gap:22px}.footer-end a:hover{text-decoration:underline;text-underline-offset:4px}.copy>*{animation:copy-in .9s ease both}.copy h1{animation-delay:.1s}.copy .intro{animation-delay:.18s}.copy .actions{animation-delay:.24s}.copy .contact-note{animation-delay:.28s}.copy .categories{animation-delay:.32s}.legal-page{max-width:900px;margin:auto;padding:30px 7% 80px}.legal-page h1{font-size:3.5rem;line-height:1.1;margin-bottom:30px}.legal-page h2{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:35px 0 12px}.legal-page p,.legal-page li{color:var(--muted);font-size:1rem}.legal-page a{text-decoration:underline;text-underline-offset:3px}.draft-note{border-left:2px solid var(--taupe);padding:20px;background:var(--champagne)}.back-link{font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.legal-header .logo{margin-left:0}@keyframes copy-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes photo-in{from{transform:scale(1.06);opacity:.3}to{transform:scale(1);opacity:1}}
@media(min-width:1500px){.hero{gap:65px}.visual{height:760px}.copy{padding-bottom:60px}}
@media(max-width:1100px){.hero{gap:30px;grid-template-columns:1.13fr 1fr}.visual{height:630px}h1{font-size:6.9vw}.launch{font-size:.75rem;letter-spacing:.06em}.actions{gap:16px}.button{padding:15px 20px}.phone{font-size:.75rem}.categories{gap:6px 15px}.categories span:not(:last-child):after{margin-left:15px}.header{height:115px}.soon-stamp{left:-18px;top:42px;width:92px;height:92px}.soon-stamp em{font-size:1.8rem}}
@media(max-width:760px){.header{height:115px;padding:10px 7%}.logo{width:250px;margin-left:-36px}.logo img{width:250px;height:250px}.instagram{font-size:.75rem}.instagram span{font-size:.75rem}.hero{grid-template-columns:1fr;padding:0 7%;gap:25px}.copy{padding:24px 0 5px}h1{font-size:clamp(3.7rem,12vw,6.3rem);line-height:1.02}.launch{margin-bottom:26px;font-size:.75rem;letter-spacing:.075em}.intro{margin:25px 0 24px}.actions{gap:18px}.contact-note{margin-top:13px}.categories{margin-top:28px;gap:5px 17px}.categories span:not(:last-child):after{margin-left:17px}.visual{height:570px;padding:25px 23px 0 0;margin-top:0}.photo{border-radius:230px 230px 3px 3px}.soon-stamp{top:50px;left:-10px;width:100px;height:100px}.vertical-label{top:210px}.footer{padding:28px 7% 30px;align-items:flex-start;gap:25px}.footer-end{max-width:175px;line-height:1.8}.footer-end p{margin:0 0 12px}.footer-end nav{gap:16px}.legal-header .logo{width:210px}.legal-header .logo img{width:230px;height:230px}.legal-page h1{font-size:3rem}}
@media(max-width:420px){.header{padding-right:6%;height:100px}.logo{width:220px;margin-left:-30px}.logo img{width:220px;height:220px}.instagram{max-width:105px;line-height:1.5}.hero{padding:0 6%}.launch{font-size:.75rem;letter-spacing:.025em;gap:10px}.launch-line{width:22px}h1{font-size:12.3vw}.intro{font-size:.95rem}.phone{font-size:.75rem}.actions{gap:17px}.button{padding:14px 18px;gap:14px}.categories{gap:5px 13px}.categories span:not(:last-child):after{margin-left:13px}.visual{height:490px}.photo-caption{left:22px;right:22px;bottom:25px}.photo-caption>span:first-child{font-size:.75rem}.footer{padding-inline:6%;display:block}.footer-end{max-width:none;margin-top:25px;text-align:left;border-top:1px solid var(--line);padding-top:20px}.footer-end nav{justify-content:flex-start}.soon-stamp{width:90px;height:90px;left:-7px}.soon-stamp>span{font-size:.75rem}.soon-stamp em{font-size:1.65rem}.legal-header{height:110px}.legal-header .logo{width:180px;margin-left:-25px}.legal-header .logo img{width:200px;height:200px}.back-link{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Editorial motion: one entrance, then quiet pointer-driven depth. */
.teaser{position:relative;isolation:isolate}.teaser .hero{position:relative;isolation:isolate}.teaser .hero:before{content:'';position:absolute;inset:-70px 0 -15px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,73%) var(--light-y,43%),#ede6e190 0%,#ede6e140 29%,transparent 60%);transition:opacity .4s}
.teaser .copy h1{animation:none}.title-line{display:block;overflow:hidden;padding:0 .08em .075em 0;margin-bottom:-.075em}.title-line>span{display:block;animation:title-unveil 1.25s cubic-bezier(.22,1,.36,1) both}.title-line:nth-child(1)>span{animation-delay:.12s}.title-line:nth-child(2)>span{animation-delay:.25s}.title-line:nth-child(3)>span{animation-delay:.38s}.teaser .copy .intro{animation-delay:.52s}.teaser .copy .actions{animation-delay:.62s}.teaser .copy .contact-note{animation-delay:.67s}.teaser .copy .categories{animation-delay:.75s}.teaser .launch-line{transform-origin:left;animation:line-unveil 1s .15s cubic-bezier(.22,1,.36,1) both}
.teaser .visual{isolation:isolate;perspective:1000px}.teaser .visual:before{content:'';position:absolute;left:20px;right:7px;top:4px;bottom:17px;border:1px solid #c4b3a180;border-radius:260px 260px 4px 4px;z-index:-1;animation:frame-unveil 1.4s .3s ease both}.teaser .photo{box-shadow:0 25px 55px -38px #624d4260;animation:arch-unveil 1.45s .12s cubic-bezier(.22,1,.36,1) both;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .65s cubic-bezier(.22,1,.36,1),box-shadow .65s}.teaser .photo>img{animation:none;transform:translate(var(--photo-x,0px),var(--photo-y,0px)) scale(1.045);transition:transform .9s cubic-bezier(.22,1,.36,1)}.teaser .photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--portrait-light-x,30%) var(--portrait-light-y,15%),#fff1,transparent 60%)}.teaser .photo-caption{animation:copy-in 1.1s .9s ease both}.teaser .soon-stamp{box-shadow:0 10px 26px -18px #5b463e80;animation:stamp-unveil 1.5s .6s cubic-bezier(.22,1,.36,1) both;transition:transform .55s,box-shadow .55s}.teaser .visual:hover .soon-stamp{transform:rotate(-6deg) translateY(-4px);box-shadow:0 18px 35px -20px #5b463e90}
.teaser .button{position:relative;overflow:hidden;box-shadow:0 9px 22px -15px #3f3f3f80;transition:background .3s,transform .3s,box-shadow .3s}.teaser .button:before{content:'';position:absolute;inset:-100% auto -100% -70%;width:40%;background:linear-gradient(90deg,transparent,#fff2,transparent);transform:skewX(-22deg);pointer-events:none}.teaser .button:hover:before{animation:button-sheen .85s ease}.teaser .button:hover{box-shadow:0 13px 28px -15px #3f3f3f90}.teaser .button svg{transition:transform .35s}.teaser .button:hover svg{transform:rotate(-8deg) scale(1.08)}.teaser .phone{position:relative;border-color:transparent}.teaser .phone:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--taupe);transform-origin:left;transition:transform .35s,background .35s}.teaser .phone:hover:after{transform:scaleX(.68);background:var(--ink)}.teaser .categories span{transition:color .3s}.teaser .categories span:hover{color:var(--ink)}
@keyframes title-unveil{from{opacity:0;transform:translateY(115%) rotate(2deg)}to{opacity:1;transform:none}}@keyframes line-unveil{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes arch-unveil{from{opacity:.25;clip-path:inset(10% 0 0 round 240px 240px 3px 3px)}to{opacity:1;clip-path:inset(0 round 240px 240px 3px 3px)}}@keyframes frame-unveil{from{opacity:0;transform:translate(-9px,15px)}to{opacity:1;transform:none}}@keyframes stamp-unveil{from{opacity:0;translate:0 20px;rotate:-12deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes button-sheen{from{left:-70%}to{left:140%}}
@media(max-width:760px){.teaser .hero:before{inset:0;background:radial-gradient(ellipse at 60% 65%,#ede6e160,transparent 65%)}.teaser .visual:before{left:17px;right:7px;top:10px;bottom:13px}.teaser .photo{transform:none}.teaser .photo>img{transform:scale(1.025)}.teaser .visual:hover .soon-stamp{transform:rotate(-12deg)}}
@media(prefers-reduced-motion:reduce){.teaser .photo,.teaser .photo>img,.teaser .visual:hover .soon-stamp,.teaser .button:hover,.teaser .button:hover svg{transform:none}.teaser .soon-stamp,.teaser .visual:hover .soon-stamp{transform:rotate(-12deg)}.title-line>span{opacity:1;transform:none}.teaser .photo{clip-path:none}.teaser .button:before{display:none}}
