:root{--cream:#f6f1e9;--brown:#3b2c28;--terra:#b97663;--muted:#73645d;--line:#ded4c8;--serif:"Bodoni 72","Didot","Times New Roman",serif;--sans:"Avenir Next",Avenir,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--brown);font-family:var(--sans);-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:5;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%2373645d' opacity='.18' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--brown);outline-offset:6px}a,button{-webkit-tap-highlight-color:transparent}::selection{background:#e9c5b6}.page-shell{max-width:1600px;margin:auto;padding:0 6%}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.wordmark{font:46px/1 var(--serif);letter-spacing:-2px}.brand-dot{color:var(--terra)}.header-note{font-size:10px;letter-spacing:2.9px;margin-right:auto;margin-left:28px}.header-link{font-size:12px;display:flex;gap:22px;align-items:center}.header-link span{font-size:21px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:3%;padding:83px 0 78px;align-items:center}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.1px;display:flex;gap:10px;align-items:center;margin:0 0 30px}.status-dot{width:6px;height:6px;border-radius:50%;background:#98604e;box-shadow:0 0 0 4px #b9766314}h1{font-family:var(--serif);font-size:clamp(56px,6.1vw,96px);font-weight:400;letter-spacing:-3.5px;line-height:.99;margin:0 0 27px}h1 em{font-weight:400;color:#a26450;white-space:nowrap;font-size:.88em;line-height:1.15}.intro{font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 9px}.invitation{font-size:12px;color:var(--muted);margin:0 0 25px;line-height:1.7}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.button{min-height:51px;display:inline-flex;justify-content:center;align-items:center;gap:12px;font-size:12px;transition:transform .25s,background .25s}.button-primary{background:var(--brown);color:var(--cream);padding:0 22px;border:1px solid var(--brown);border-radius:3px}.button svg{height:20px;width:20px}.button-arrow{font-size:20px;margin-left:13px}.button-primary:hover{background:#594037;transform:translateY(-3px)}.button-secondary{border-bottom:1px solid #bcaa9c;min-height:38px;gap:12px;font-size:11px}.button-secondary:hover{transform:translateY(-2px);color:#92523f}.phone{display:inline-block;font-size:10px;letter-spacing:.6px;color:var(--muted);margin-top:18px}.brand-composition{height:530px;position:relative;display:grid;place-items:center;isolation:isolate}.backdrop{position:absolute;width:88%;height:94%;background:#e9ddd0;border-radius:48% 48% 2px 2px;transform:rotate(7deg);z-index:-2;right:0;top:0}.backdrop::after{content:"";position:absolute;inset:14px;border:1px solid #c7b29f66;border-radius:inherit}.brand-sheet{width:89%;aspect-ratio:1.02;background:#fcf9f3;box-shadow:0 23px 60px #60402c17,0 2px 5px #60402c0b;transform:rotate(-6deg);display:flex;flex-direction:column;justify-content:space-between;padding:28px 28px 23px;animation:sheet-enter 1.3s cubic-bezier(.2,.65,.3,1) both}.brand-logo{display:block;width:115%;height:auto;margin:0 -7.5%}.sheet-top,.sheet-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-top{font-size:8px;letter-spacing:2px}.sheet-top span:last-child{color:var(--terra);font-size:22px}.sheet-bottom{border-top:1px solid var(--line);padding-top:17px;font-size:9px;letter-spacing:.6px}.thread{position:absolute;width:112%;height:115%;inset:-8% -6%;z-index:-1;overflow:visible}.thread path{stroke:#ac6e58;stroke-width:1.3;stroke-dasharray:1900;stroke-dashoffset:1900;animation:stitch 3s .2s ease forwards}.fabric-label{position:absolute;right:-1%;bottom:53px;transform:rotate(5deg);background:var(--terra);color:#fff8ef;padding:21px 25px;font-size:12px;line-height:1.65;letter-spacing:.2px;box-shadow:0 8px 20px #60402c15;outline:1px dashed #f6f1e966;outline-offset:-7px;animation:label-enter 1.3s .3s both}.fabric-label span{display:block}.composition-caption{position:absolute;bottom:-8px;font-size:8px;letter-spacing:2px;color:var(--muted)}.about{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr .7fr;gap:40px;align-items:center;padding:34px 0}.about-title{display:flex;gap:20px;align-items:center}.little-star{font-size:33px;color:var(--terra);display:block}.about-title p{font-family:var(--serif);font-size:25px;line-height:1.2;letter-spacing:-.4px;margin:0}.about-title em{font-weight:400;color:#91634e}.about-description{font-size:11px;line-height:1.95;color:var(--muted);max-width:390px;margin:0}.categories{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap}.categories span{padding:10px 17px;border:1px solid #d6c9bb;border-radius:50px;font-size:10px}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 32px;font-size:9px;color:var(--muted)}.footer p{margin:0}.footer p span{padding:0 9px}.footer p:nth-child(2){font-family:var(--serif);font-style:italic;font-size:15px}.footer a{display:flex;gap:17px;align-items:center}.footer a span{font-size:17px}.skip-link{position:absolute;top:-100px;left:15px;background:var(--brown);color:white;padding:12px;z-index:10}.skip-link:focus{top:15px}.hero-copy{animation:copy-enter .9s both}@keyframes stitch{to{stroke-dashoffset:0}}@keyframes sheet-enter{from{opacity:0;transform:translateY(22px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(-6deg)}}@keyframes label-enter{from{opacity:0;transform:translateY(16px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(5deg)}}@keyframes copy-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){h1{font-size:96px}.brand-composition{height:590px}.hero{padding-top:100px;padding-bottom:95px}}
@media(max-width:1100px){.page-shell{padding:0 5%}.hero{padding:65px 0;gap:4%;grid-template-columns:1.15fr 1fr}.brand-composition{height:430px}.brand-sheet{padding:22px}.fabric-label{bottom:35px;right:-4%;font-size:10px;padding:18px 20px}.header-note{margin-left:14px}.eyebrow{font-size:8px;letter-spacing:1.4px}.actions{gap:9px 16px}.button-primary{padding:0 16px}.about{gap:25px;grid-template-columns:1fr 1.2fr .65fr}.categories span{padding:9px 13px}.about-title p{font-size:23px}}
@media(max-width:760px){.page-shell{padding:0 7%}.header{min-height:87px}.wordmark{font-size:39px}.header-note{display:none}.header-link{font-size:11px;gap:12px}.hero{grid-template-columns:1fr;padding:48px 0 43px;gap:42px}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:25px}h1{font-size:clamp(52px,10.8vw,78px);letter-spacing:-2.5px;line-height:1.01;margin-bottom:22px}h1 em{font-size:.92em}.intro{font-size:13px;line-height:1.85;max-width:410px}.desktop-break{display:none}.invitation{font-size:11px;margin:13px 0 22px}.actions{gap:13px 20px}.button-primary{font-size:12px;padding:0 19px}.phone{margin-top:17px}.brand-composition{width:min(100%,460px);height:440px;margin:0 auto}.backdrop{width:87%;height:93%;right:1%}.brand-sheet{width:85%;padding:24px}.fabric-label{bottom:38px;right:0;font-size:11px}.composition-caption{bottom:0;font-size:7px;letter-spacing:1.6px}.about{grid-template-columns:1fr;padding:29px 0;gap:22px}.about-title p{font-size:29px}.about-title{gap:17px}.about-description{max-width:500px;font-size:12px}.categories{justify-content:flex-start}.categories span{padding:9px 19px}.footer{flex-wrap:wrap;gap:18px;padding:25px 0;font-size:9px}.footer p:nth-child(2){order:3;width:100%;font-size:16px}.footer a{gap:10px}}
@media(max-width:380px){.page-shell{padding:0 6%}.hero{padding-top:38px}.eyebrow{font-size:7px;letter-spacing:1px}h1{font-size:49px}.brand-composition{height:360px}.brand-sheet{padding:19px}.sheet-top{font-size:6px}.sheet-bottom{font-size:8px}.fabric-label{bottom:24px}.actions{align-items:flex-start;flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.thread path{stroke-dashoffset:0}}
/* Keep the origin readable beside the overlapping fabric label at every width. */
.sheet-bottom{align-items:flex-start;flex-direction:column;gap:5px}
