/* A two-piece look for the existing Réveillon selection. */
.look-builder{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(30px,5vw,78px);margin:12px 0 64px;align-items:stretch}
.look-composition{position:relative;min-height:630px;background:#e4e0d3;border:1px solid #dad6c8;border-radius:4px;isolation:isolate;overflow:hidden}
.look-composition:before{content:'';position:absolute;width:75%;height:78%;top:13%;left:14%;border:1px solid #b3ad984a;border-radius:50%;transform:rotate(-28deg);z-index:-1}
.look-composition:after{content:'';position:absolute;left:15%;right:15%;height:13px;bottom:8%;background:#58533d;opacity:.13;filter:blur(16px);border-radius:50%;z-index:-1}
.look-composition-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;position:absolute;top:25px;left:25px;right:25px;z-index:3;color:#6e705e}
.look-composition-heading .eyebrow{font-size:7px;letter-spacing:.13em}
.look-composition-heading>span:last-child{font-size:9px;letter-spacing:.1em;white-space:nowrap}
.look-composition-word{position:absolute;left:6%;top:32%;font:italic clamp(80px,10vw,150px)/1 var(--serif);color:#d4ceba;letter-spacing:-.05em;transform:rotate(-7deg);z-index:-1}
.look-piece{position:absolute;pointer-events:none;filter:drop-shadow(6px 17px 12px #6d654320);will-change:transform,opacity}
.look-piece img{width:100%;height:100%;object-fit:contain}
.look-piece-top{width:64%;height:65%;left:-1%;top:14%;transform:rotate(-9deg);z-index:2}
.look-piece-bottom{width:49%;height:78%;right:2%;top:16%;transform:rotate(6deg);z-index:1}
.look-composition[data-look-bottom="linen-shorts"] .look-piece-bottom{width:57%;height:53%;right:-1%;top:43%;transform:rotate(8deg)}
.look-composition-caption{position:absolute;bottom:23px;left:25px;right:25px;font-size:7px;letter-spacing:.15em;color:#6e705e;text-align:center}
.look-builder-controls{align-self:center;padding:18px 0 10px;min-width:0}
.look-builder-controls>.eyebrow{font-size:8px;color:#79765d}
.look-builder-controls h3{font-size:clamp(30px,3.4vw,49px);line-height:1.05;letter-spacing:-.045em;font-weight:400;margin:20px 0 14px}
.look-builder-controls h3 em{font-size:1.16em;line-height:1}
.look-builder-description{font-size:11px;line-height:1.7;color:#686d60;min-height:20px;margin-bottom:26px;max-width:44ch}
.look-choice{padding:0;border:0;min-width:0;margin:0 0 20px}
.look-choice legend{font-size:11px;line-height:1.5;padding:0;margin-bottom:9px;color:#3f4438;font-weight:500}
.look-choice legend>span{font-size:8px;letter-spacing:.09em;color:#7d806e;margin-right:8px}
.look-choice-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.look-choice-button{position:relative;display:flex;justify-content:center;align-items:center;min-height:43px;padding:9px 11px;background:transparent;border:1px solid #c5c7b6;border-radius:3px;font-size:11px;line-height:1.4;transition:color .2s,background .2s,border-color .2s}
.look-choice-button:hover{border-color:#797f67;background:#e6e7da}
.look-choice-button.is-selected{background:#3d4633;color:#f5f2e8;border-color:#3d4633}
.look-choice-button.is-selected:after{content:'';height:4px;width:4px;border-radius:50%;background:#d9d0b4;margin-left:10px;flex-shrink:0}
.look-sizes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:23px;align-items:start}
.look-sizes>div{min-width:0}
.look-sizes label{display:block;font-size:10px;color:#565d4b;margin-bottom:7px}
.look-sizes select{font:400 11px/1.5 var(--sans);width:100%;min-height:44px;padding:9px 25px 9px 11px;color:#333c2c;background:#f7f4ec;border:1px solid #bdc1ad;border-radius:3px;cursor:pointer}
.look-sizes select:focus-visible{outline:2px solid #8b744f;outline-offset:3px}
.look-sizes select[aria-invalid="true"]{border-color:#a35b3e}
.look-size-error{font-size:10px;line-height:1.5;color:#944b35;margin-top:6px}
.look-size-error[hidden]{display:none}
.look-size-help{font-size:9px;line-height:1.6;color:#74786a;margin-top:10px}
.look-builder-benefit{display:flex;gap:11px;align-items:flex-start;padding:14px 0;margin-top:17px;border-top:1px solid #d4d3c3;border-bottom:1px solid #d4d3c3}
.look-builder-benefit[hidden]{display:none}
.look-builder-benefit>span{font-size:20px;line-height:1.2;color:#82734b}
.look-builder-benefit strong{display:block;font-size:12px;font-weight:500;color:#4c563d;line-height:1.5}
.look-builder-benefit p>span{display:block;font-size:9px;line-height:1.65;color:#757565;margin-top:3px;max-width:49ch}
.look-builder-add{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:14px 18px;margin-top:20px;background:#333d2b;color:#f4f0e5;border:1px solid #333d2b;border-radius:3px;font-size:12px;line-height:1.6;transition:background .2s,transform .2s}
.look-builder-add>svg{width:18px;height:18px}
.look-builder-add:hover{background:#4c573f;transform:translateY(-2px)}
.look-builder-note{font-size:9px;line-height:1.7;color:#777b6e;margin-top:11px;max-width:50ch}
.look-builder-status{font-size:10px;line-height:1.6;color:#4e5c3d;margin-top:5px}
.look-builder-status:empty{display:none}
@media(min-width:1500px){.look-composition{min-height:695px}.look-builder-controls{max-width:500px}.look-builder-description{font-size:12px}.look-choice-button{font-size:12px}.look-sizes label{font-size:11px}}
@media(max-width:1100px){.look-builder{gap:32px}.look-composition{min-height:610px}.look-composition-heading{left:18px;right:18px;top:22px}.look-composition-heading .eyebrow{max-width:20ch;line-height:1.7}.look-piece-top{width:72%;left:-9%;top:17%;height:57%}.look-piece-bottom{width:56%;right:-3%;top:25%;height:64%}.look-composition[data-look-bottom="linen-shorts"] .look-piece-bottom{width:61%;right:-4%;height:47%;top:46%}.look-builder-controls h3{font-size:34px}.look-builder-description{font-size:10px}.look-choice-button{font-size:10px}.look-sizes{gap:8px}.look-sizes select{font-size:10px;padding-left:8px}}
@media(max-width:760px){.look-builder{grid-template-columns:1fr;gap:0;margin:0 0 43px}.look-composition{min-height:0;height:330px;max-height:340px;max-width:480px;width:100%;justify-self:center}.look-composition-heading{left:18px;right:18px;top:17px}.look-composition-heading .eyebrow{font-size:6px;max-width:none}.look-composition-heading>span:last-child{font-size:8px}.look-composition-word{font-size:96px;top:29%;left:10%}.look-piece-top{height:76%;width:61%;left:-2%;top:11%}.look-piece-bottom{height:86%;width:47%;right:2%;top:11%}.look-composition[data-look-bottom="linen-shorts"] .look-piece-bottom{width:54%;height:58%;right:0%;top:35%}.look-composition-caption{font-size:6px;bottom:14px;left:18px;right:18px}.look-builder-controls{padding:31px 0 0}.look-builder-controls>.eyebrow{font-size:7px}.look-builder-controls h3{font-size:36px;margin-top:18px;margin-bottom:13px}.look-builder-description{font-size:11px;line-height:1.7;margin-bottom:23px}.look-choice{margin-bottom:18px}.look-choice-button{font-size:11px;min-height:46px}.look-choice legend{font-size:11px}.look-sizes{gap:12px;margin-top:22px}.look-sizes label{font-size:10px}.look-sizes select{font-size:16px;min-height:46px;padding-left:10px}.look-size-help{font-size:10px;max-width:42ch}.look-builder-benefit{margin-top:18px;padding:14px 0}.look-builder-benefit p>span{font-size:10px;max-width:43ch}.look-builder-add{font-size:12px;min-height:49px}.look-builder-note{font-size:10px;max-width:45ch}.look-builder-status{font-size:11px}}
@media(max-width:370px){.look-composition{height:292px}.look-composition-heading .eyebrow{font-size:5.5px;letter-spacing:.1em}.look-composition-word{font-size:85px}.look-builder-controls h3{font-size:33px}.look-sizes{gap:8px}.look-sizes select{font-size:16px;padding-left:7px}.look-choice-button{font-size:10px;padding-left:5px;padding-right:5px}.look-choice-button.is-selected:after{margin-left:7px}}
@media(prefers-reduced-motion:reduce){.look-piece{will-change:auto}.look-builder :is(button,select){transition:none}.look-builder-add:hover{transform:none}}
