:root{--paper:#f8f5f0;--ink:#292522;--muted:#79716a;--red:#8b3041;--line:#dfd8cf;--studio:#efedeb;--sheet:url('assets/hoodie-creme.png');font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}a{color:inherit}button,input,textarea{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:15px;background:var(--ink);color:white;padding:15px;z-index:100}.skip:focus{top:10px}.announcement{background:#e9dfda;text-align:center;font-size:10px;letter-spacing:1.5px;padding:11px}.header{display:flex;align-items:center;justify-content:space-between;padding:21px 5%;border-bottom:1px solid var(--line);position:sticky;top:0;background:#f8f5f0f5;backdrop-filter:blur(10px);z-index:20}.wordmark{font-family:Georgia,'Times New Roman',serif;font-size:47px;line-height:.88;letter-spacing:-3px;text-decoration:none;display:inline-block}.wordmark span{display:block;font-family:Arial,sans-serif;letter-spacing:2.1px;font-size:7px;line-height:1.4;margin:10px 0 0 4px}.header nav{display:flex;gap:32px;align-items:center;font-size:11px}.header nav a{text-decoration:none}.header nav .nav-cta{border-bottom:1px solid var(--ink);padding-bottom:6px}.nav-cta span{margin-left:25px}.opening{padding:58px 5% 45px;text-align:center}.eyebrow{font-size:9px;line-height:1.6;letter-spacing:2px;font-weight:500}.opening h1{font:400 clamp(42px,5.7vw,76px)/1.04 Georgia,serif;letter-spacing:-2.6px;margin:18px 0}.opening>p:last-child{font-size:12px;line-height:1.7;color:var(--muted)}em{font-weight:400;color:var(--red)}.product-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,1fr);gap:6%;max-width:1450px;margin:auto;padding:0 5% 85px;align-items:start}.gallery-column{position:sticky;top:111px;min-width:0}.gallery{background:var(--studio);border-radius:2px;position:relative;overflow:hidden}.gallery-top{position:absolute;top:18px;left:20px;right:15px;display:flex;justify-content:space-between;align-items:center;z-index:3;pointer-events:none}.gallery-top>*{pointer-events:auto}.badge{font-size:7px;letter-spacing:1.2px;background:#ffffffb0;padding:9px 10px}.icon-button{background:#ffffffb0;border:1px solid #ffffff90;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:19px;line-height:1;flex-shrink:0}.icon-button:hover{background:#fff}.icon-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4}.product-frame{position:relative;aspect-ratio:1;overflow:hidden;container-type:inline-size;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.product-frame:active{cursor:grabbing}.sheet{position:absolute;inset:0;width:200%;height:200%;max-width:none;object-fit:fill;pointer-events:none}.product-frame[data-view="0"] .sheet{transform:translate(0,0)}.product-frame[data-view="1"] .sheet{transform:translate(-50%,0)}.product-frame[data-view="2"] .sheet{transform:translate(-50%,-50%)}.product-frame[data-view="3"] .sheet{transform:translate(0,-50%)}.print-initial,.print-text{font-family:'Times New Roman',Times,serif;font-weight:700;font-style:normal;line-height:1.17;background-color:transparent;background-image:url('assets/bisous-texture.png');background-size:110px 110px;background-repeat:repeat;background-position:0 0;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:saturate(.9);padding:0 .04em}.print-initial{position:absolute;left:50%;top:54%;font-size:30cqw;transform:translate(-50%,-50%);pointer-events:none}.product-frame[data-view="2"] .print-initial{left:47%;top:55%;transform:translate(-50%,-50%) perspective(700px) rotateY(-28deg);font-size:27cqw}.gallery-bottom{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;padding:0 20px 12px;margin-top:-20px}.gallery-bottom span{font-size:10px;letter-spacing:1px}.swipe-hint{display:flex;justify-content:center;align-items:center;gap:9px;font-size:9px;color:#726b64;padding:0 15px 18px}.swipe-hint svg{width:20px;fill:none;stroke:currentColor;stroke-width:1}.swipe-hint>span{padding:0 3px}.thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.thumbnails button{background:transparent;border:0;padding:0;opacity:.62}.thumbnails button[aria-pressed=true]{opacity:1}.thumb-image{display:block;aspect-ratio:1;background-image:var(--sheet);background-size:200% 200%;border:1px solid transparent}.thumbnails button[aria-pressed=true] .thumb-image{border-color:var(--ink)}.thumb-image[data-view="0"]{background-position:0 0}.thumb-image[data-view="1"]{background-position:100% 0}.thumb-image[data-view="2"]{background-position:100% 100%}.thumb-image[data-view="3"]{background-position:0 100%}.thumbnails button>span:last-child{display:block;font-size:9px;margin-top:8px}.image-note{text-align:center;color:var(--muted);font-size:9px;line-height:1.6;margin:16px 0 0}.purchase{padding-top:8px;scroll-margin-top:15px}.product-heading{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-top:12px}.product-heading h2{font:400 clamp(29px,3vw,42px)/1.13 Georgia,serif;letter-spacing:-1.3px;margin:0}.product-price{font-size:25px;white-space:nowrap;padding-top:4px}.product-price small{display:block;font-size:8px;text-align:right;letter-spacing:1px;margin-top:4px}.product-description{font-size:12px;color:#6c625b;line-height:1.9;margin:18px 0 9px}.shipping-note{font-size:10px;color:var(--muted);margin:0 0 25px}fieldset{border:0;padding:0;margin:0;min-width:0}.option-group{border-top:1px solid var(--line);padding:22px 0 24px}legend{float:left;width:100%;font-size:9px;color:#9b8f83;letter-spacing:1px;padding:0;margin-bottom:17px}legend+*{clear:both}legend span{font-size:12px;color:var(--ink);letter-spacing:0;margin-left:10px}.selection-label{font-size:10px;color:var(--muted);margin:0 0 13px}.swatches{display:flex;gap:14px}.swatch{background:transparent;border:0;padding:0;min-width:39px}.swatch>span{display:block;background:var(--swatch);height:30px;width:30px;border:1px solid #25252512;border-radius:50%;margin:3px auto 10px;position:relative}.swatch[aria-pressed=true]>span:after{content:'';position:absolute;inset:-5px;border:1px solid var(--ink);border-radius:50%}.swatch small{display:block;font-size:9px;color:var(--muted)}.swatch[aria-pressed=true] small{color:var(--ink)}.initial-control{display:flex;gap:15px;align-items:center}.initial-control input{background:transparent;border:1px solid #c7bcb0;border-radius:0;width:60px;height:62px;text-align:center;font:700 37px 'Times New Roman',serif;color:var(--red)}.initial-control p{font-size:10px;line-height:1.8;color:var(--muted);margin:0;flex:1}.initial-control strong{font-weight:400;color:#5d5149}.initial-control button{border:0;border-bottom:1px solid #c7bcb0;padding:5px 0;background:transparent;white-space:nowrap;font-size:9px}.size-options{display:flex;gap:7px}.size-options button{flex:1;background:transparent;border:1px solid #d2c9bf;padding:13px 4px;font-size:11px}.size-options button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.field-note{font-size:9px;color:var(--muted);line-height:1.7;margin:12px 0 0}.card-option{border:1px solid #d9ccc1;background:#f0e7df;margin:0 0 22px;padding:17px}.card-toggle{display:flex;gap:12px;align-items:center;cursor:pointer}.card-icon{font-size:29px;color:var(--red);font-family:Georgia,serif}.card-copy{flex:1}.card-copy strong{display:block;font-size:12px;font-weight:500}.card-copy small{display:block;font-size:10px;color:#76665b;margin-top:5px}.card-toggle b{font-size:12px;font-weight:400;white-space:nowrap}.card-toggle input{accent-color:var(--red);width:17px;height:17px;margin:0 0 0 3px}#card-fields>label{display:block;font-size:11px;margin:22px 0 10px}textarea{display:block;resize:vertical;width:100%;font-size:12px;line-height:1.7;background:var(--paper);border:1px solid #d0c4b7;border-radius:0;padding:12px;color:var(--ink)}#card-message{min-height:105px}.message-meta{display:flex;justify-content:space-between;gap:10px;font-size:8px;color:var(--muted);margin:8px 0 20px}.card-preview{padding:22px;background:#fcf9f1;box-shadow:0 3px 14px #7a675015;transform:rotate(-1deg)}.card-preview>span:first-child{font:italic 17px Georgia,serif;color:var(--red)}.card-preview p{font:17px/1.6 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0}.card-signature{display:block;text-align:right;font:18px Georgia,serif;letter-spacing:-1px}.order-total{display:flex;justify-content:space-between;align-items:center;font-size:12px}.order-total strong{font-weight:400;font-size:24px}.total-note{font-size:9px;color:var(--muted);line-height:1.5;text-align:right;margin:8px 0 18px}.primary{display:flex;justify-content:space-between;align-items:center;gap:35px;width:100%;padding:19px 23px;border:1px solid var(--red);background:var(--red);color:#fff8ed;text-decoration:none;font-size:12px}.primary:hover{background:#702435}.primary span{font-size:20px;line-height:.6}.order-note{font-size:9px;line-height:1.8;text-align:center;color:var(--muted);max-width:300px;margin:12px auto}.result{margin-top:25px;border-top:1px solid var(--line);padding-top:25px}.result h3{font:26px Georgia,serif;margin:12px 0 20px}.result textarea{height:250px;margin-bottom:15px}#copy-status{font-size:11px;color:var(--red)}.details-section{padding:75px 5% 90px;border-top:1px solid var(--line);max-width:1450px;margin:auto}.section-heading{text-align:center;margin-bottom:38px}.section-heading h2,.gift-section h2,.faq h2,.closing h2{font:400 clamp(36px,4.4vw,61px)/1.09 Georgia,serif;letter-spacing:-1.8px;margin:15px 0 25px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.detail-photo{aspect-ratio:1.07;background-image:var(--sheet);background-repeat:no-repeat;overflow:hidden}.pocket-photo{background-size:430%;background-position:16% 29%}.hood-photo{background-size:490%;background-position:18% 0}.initial-photo{background-size:350%;background-position:18% 90%;display:grid;place-items:center}.detail-initial{font-size:170px;display:block;margin-top:25px}.detail-number{font-size:8px!important;letter-spacing:1.4px;color:var(--red)!important;margin-top:20px}.detail-grid h3{font:24px/1.2 Georgia,serif;font-weight:400;letter-spacing:-.4px;margin:10px 0}.detail-grid article>p:last-child{font-size:11px;line-height:1.8;color:var(--muted);max-width:290px}.gift-section{display:grid;grid-template-columns:1fr 1fr;background:#eae0d7;align-items:center;gap:20px;padding:55px 11% 55px 13%;overflow:hidden}.gift-text>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#786a60}.gift-text>a{display:inline-block;font-size:11px;text-underline-offset:7px;margin-top:20px}.gift-art{position:relative;min-height:390px;display:grid;place-items:center}.envelope{position:absolute;width:280px;height:195px;background:#c8aba0;transform:translate(30px,42px) rotate(14deg);box-shadow:0 15px 40px #6043391c}.envelope:after{content:'';position:absolute;width:100%;height:100%;background:linear-gradient(145deg,transparent 49.5%,#b5988e 50%,transparent 50.5%),linear-gradient(215deg,transparent 49.5%,#b5988e 50%,transparent 50.5%)}.sample-card{position:relative;background:#fcf8ef;padding:30px;width:240px;min-height:300px;transform:rotate(-9deg);box-shadow:3px 15px 30px #60433921}.sample-card>span{font:italic 21px Georgia,serif;color:var(--red)}.sample-card>p{font:27px/1.35 Georgia,serif;letter-spacing:-.5px;margin:35px 0}.sample-card small{font:20px Georgia,serif;letter-spacing:-1px;display:block;text-align:right}.gift-caption{position:absolute;bottom:-10px;font-size:7px;letter-spacing:1.3px;white-space:nowrap}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:10%;padding:90px 9%;max-width:1300px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-size:12px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:17px;font-weight:300;color:var(--red)}.faq details[open] summary:after{content:'−'}.faq summary::-webkit-details-marker{display:none}.faq details p{font-size:11px;line-height:1.9;color:var(--muted);margin:17px 0 0}.closing{text-align:center;background:#e9d1cc;padding:65px 5% 75px}.closing h2{margin:22px 0 30px}.closing .primary{display:inline-flex;width:auto;min-width:215px}.closing .eyebrow{color:#72514c}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:48px 5%}footer p{font-size:10px;line-height:1.9;color:var(--muted)}footer>span{font-size:9px;line-height:1.9;text-align:right;color:var(--muted)}.mobile-bar{display:none}dialog{padding:0;border:0;background:var(--studio);width:min(92vw,750px);max-height:94dvh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#242020b3;backdrop-filter:blur(5px)}body:has(dialog[open]){overflow:hidden}.zoom-toolbar{position:absolute;top:14px;left:20px;right:15px;z-index:5;display:flex;justify-content:space-between;align-items:center;font-size:11px}.zoom-frame{max-width:650px;margin:auto}.zoom-bottom{position:relative;margin-top:-22px;display:flex;align-items:center;justify-content:space-between;padding:0 25px 20px}.zoom-bottom p{font-size:9px;color:var(--muted)}.gallery[aria-busy=true]{opacity:.65}.product-frame.busy{opacity:.6}
@media(min-width:1500px){.opening{padding-top:70px}.product-layout{gap:7%}.gallery-column{top:115px}}
@media(max-width:1000px) and (min-width:761px){.product-layout{gap:4%;padding-inline:4%;grid-template-columns:1.1fr 1fr}.initial-control{gap:10px}.initial-control button{font-size:8px}.swatches{gap:11px}.gift-section{padding-inline:7%}.detail-initial{font-size:140px}.badge{font-size:6px}}
@media(max-width:760px){html{scroll-padding-top:89px}.announcement{font-size:9px;padding:9px}.header{padding:17px 5%}.wordmark{font-size:39px}.wordmark span{font-size:6px;margin-top:8px}.header nav{gap:18px;font-size:10px}.header nav>a:first-child{display:none}.nav-cta span{margin-left:10px}.opening{padding:35px 6% 27px}.opening .eyebrow{font-size:8px}.opening h1{font-size:43px;letter-spacing:-1.8px;margin:15px 0}.opening>p:last-child{font-size:10px;max-width:270px;margin:0 auto}.product-layout{display:flex;flex-direction:column;padding:0 0 48px;gap:30px}.gallery-column{position:static;width:100%}.gallery{border-radius:0}.gallery-top{top:14px;left:16px;right:14px}.badge{font-size:6px;padding:8px}.gallery-bottom{margin-top:-15px;padding-inline:16px}.thumbnails{padding:0 6%;gap:10px;margin-top:12px}.thumbnails button>span:last-child{font-size:8px;margin-top:6px}.image-note{font-size:8px;margin:12px 5% 0}.purchase{padding:5px 6% 0;width:100%;scroll-margin-top:5px}.product-heading h2{font-size:35px}.product-price{font-size:26px}.product-description{font-size:12px}.option-group{padding:23px 0}.swatches{gap:22px}.swatch>span{height:33px;width:33px}.swatch small{font-size:9px}.initial-control input{width:64px;height:63px}.initial-control button{font-size:10px}.initial-control p{font-size:10px}.size-options{gap:8px}.size-options button{padding-block:15px}.primary{padding-block:20px}.card-option{padding:18px}.card-copy strong{font-size:13px}.card-copy small{font-size:10px}.details-section{padding:48px 6% 40px}.section-heading{margin-bottom:28px}.section-heading h2,.gift-section h2,.faq h2,.closing h2{font-size:42px;letter-spacing:-1.5px}.detail-grid{grid-template-columns:1fr;gap:30px}.detail-grid article{display:grid;grid-template-columns:43% 1fr;column-gap:20px;align-content:center}.detail-photo{grid-row:1/4;aspect-ratio:.85;height:100%;min-height:180px}.detail-grid .detail-number{margin:15px 0 8px;font-size:7px!important;align-self:end}.detail-grid h3{font-size:23px;margin:0 0 6px}.detail-grid article>p:last-child{font-size:10px;margin:0 0 10px}.detail-initial{font-size:115px;margin-top:0}.gift-section{grid-template-columns:1fr;padding:40px 8% 45px;gap:15px}.gift-text h2{margin-bottom:20px}.gift-art{min-height:350px}.gift-caption{font-size:6px;bottom:-8px}.sample-card{width:220px;min-height:280px}.sample-card>p{font-size:26px}.envelope{width:250px;height:180px}.faq{grid-template-columns:1fr;gap:5px;padding:50px 6%}.faq h2{margin-bottom:10px}.faq h2 br{display:none}.faq details{padding:21px 0}.faq summary{font-size:12px}.closing{padding:45px 6% 50px}.closing h2{font-size:39px}footer{padding:35px 6% 110px;flex-wrap:wrap;gap:25px}footer p{max-width:175px;font-size:9px}footer>span{width:100%;text-align:left;font-size:8px;border-top:1px solid var(--line);padding-top:18px}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:15;justify-content:space-between;align-items:center;background:#faf7f1f5;border-top:1px solid var(--line);padding:13px 6% calc(13px + env(safe-area-inset-bottom));backdrop-filter:blur(10px);transform:translateY(110%);transition:transform .2s}.mobile-bar.visible{transform:translateY(0)}.mobile-bar>span{font-size:10px}.mobile-bar strong{display:block;font-size:18px;font-weight:400;margin-top:4px}.mobile-bar>a{background:var(--red);color:var(--paper);font-size:11px;text-decoration:none;padding:15px 20px}dialog{width:100vw;max-width:100vw;max-height:100dvh}.zoom-toolbar{top:12px;font-size:10px}.zoom-bottom{padding:0 16px 20px}.print-initial{background-size:90px 90px}}
@media(max-width:360px){.swatches{gap:15px}.initial-control{gap:10px}.initial-control button{font-size:9px}.opening h1{font-size:38px}.detail-grid h3{font-size:21px}}
.thumb-image{position:relative;container-type:inline-size}.thumb-image[data-letter]:after{content:attr(data-letter);position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);font:700 30cqw/1.17 'Times New Roman',Times,serif;background:transparent url('assets/bisous-texture.png') repeat 0 0/45px 45px;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.thumb-image[data-view="2"][data-letter]:after{left:47%;top:55%;font-size:27cqw;transform:translate(-50%,-50%) perspective(300px) rotateY(-28deg)}.thumbnails button{opacity:.8}.thumbnails button[aria-pressed=true]{opacity:1}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
