/* Campaign art is full-bleed photography; catalog photography stays clean white. */
.campaign{position:relative;display:block;width:100%;overflow:hidden;isolation:isolate;background:#f5d4c9;min-height:0;aspect-ratio:2/1;color:#35203f}
.campaign-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.campaign:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.campaign-copy{position:absolute;z-index:1;padding:0;margin:0}
.campaign-beach{aspect-ratio:2/1;min-height:560px}
.campaign-beach:after{background:linear-gradient(90deg,#fff0dfb8 0%,#fff0df66 32%,#fff0df00 52%)}
.campaign-beach .hero-copy{left:5.2%;top:50%;transform:translateY(-50%);width:43%;padding:0}
.campaign-beach h1{font-size:clamp(48px,5vw,80px);letter-spacing:-3px;line-height:1.05;margin:24px 0}
.campaign-beach h1 span{color:#8e346c}
.campaign-beach .hero-copy>p{color:#49354f;font-size:14px;line-height:1.7}
.campaign-beach .hero-small{margin-top:28px}
.campaign-beach .eyebrow{font-size:9px;font-weight:700;letter-spacing:1.8px}
.campaign-beach .hero-actions{gap:24px}
.campaign-yacht{color:#fff9f2;aspect-ratio:2/1;min-height:490px}
.campaign-yacht:after{background:linear-gradient(90deg,#143d5480 0%,#143d5455 22%,#143d5400 43%)}
.campaign-yacht .world-copy{left:5.2%;top:50%;transform:translateY(-50%);width:29%;padding:0}
.campaign-yacht h2{font-size:clamp(42px,4.5vw,72px);letter-spacing:-2px;line-height:1.05;margin:20px 0 23px;text-shadow:0 2px 12px #12303a20}
.campaign-yacht p{color:#fff9f2;font-size:14px;margin-bottom:18px;line-height:1.7}
.campaign-yacht .eyebrow{font-size:9px;text-shadow:0 1px 8px #14304090}
.campaign-gym{aspect-ratio:2/1;color:#fff9f2;min-height:490px;margin-top:0;background:#4e4258}
.campaign-gym:after{background:linear-gradient(180deg,#27213515,#27213500 65%)}
.gym-copy{top:7.5%;left:56%;width:40%}
.gym-copy h2{font-size:clamp(38px,4.3vw,68px);line-height:1.03;margin:14px 0 13px;letter-spacing:-2px}
.gym-copy p{font-size:12px;color:#fff5f5;margin-bottom:13px}
.gym-copy .eyebrow{font-size:8px;letter-spacing:1.7px}
.gym-copy .button{padding:13px 22px;font-size:11px;gap:24px;margin:0}
.flavors{background:#fff}
.product-image{background:#fff;aspect-ratio:1/1.08;border:1px solid #f0edf0;border-radius:18px}
.product-image>img{width:100%;max-width:100%;mix-blend-mode:normal;clip-path:none;transform:none;filter:none}
.product-image:hover>img{transform:scale(1.035)}
.product-badge{background:#fff9;backdrop-filter:blur(5px);top:12px;left:12px}
.product-dialog{background:#fff}
.modal-image{background:#fff!important;border-radius:12px}
.modal-image img{width:100%;mix-blend-mode:normal;clip-path:none;margin:0;transform:none}
.quiz-dialog{background:#fff}
.quiz-result img{mix-blend-mode:normal;clip-path:none;margin:0 auto;width:240px;background:#fff}
.lineup-item img{background:#fff;border-radius:12px}
.flavor-match{background:#fff;border:1px solid #ede4ee}
.flavor-match{align-items:center;column-gap:4%}
@media(min-width:1001px){.flavor-match{grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr)}}
@media(max-width:1000px) and (min-width:701px){.flavor-match{grid-template-columns:minmax(0,1fr);row-gap:32px}}
.catalog-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;align-items:center;min-width:0;min-height:0;height:auto;margin:0}
.catalog-pair .vibe-can{position:static;display:block;width:100%;height:auto;max-width:none;margin:0;mix-blend-mode:normal;clip-path:none;transform:none}
@media(min-width:1500px){.campaign-beach .hero-copy{left:7%;width:40%}.campaign-beach h1{font-size:80px}.campaign-yacht .world-copy{left:7%}.campaign-beach .hero-copy>p{font-size:16px}.campaign-gym .gym-copy{top:10%}}
@media(max-width:1000px) and (min-width:701px){.campaign-beach{min-height:540px}.campaign-beach h1{font-size:49px}.campaign-beach .hero-actions{flex-direction:column;gap:13px;align-items:flex-start}.campaign-beach .hero-copy{width:42%;left:5%}.campaign-beach .hero-copy>p{font-size:12px}.campaign-beach .hero-small{font-size:7px;letter-spacing:1px}.campaign-yacht{min-height:470px}.campaign-yacht h2{font-size:45px}.campaign-yacht .world-copy{width:30%}.campaign-yacht p{font-size:12px}.campaign-yacht .button{padding:16px 19px;font-size:10px;gap:15px}.gym-copy{top:6%;left:53%;width:45%}.gym-copy h2{font-size:46px}.gym-copy p{font-size:11px}.gym-copy .eyebrow{font-size:7px;letter-spacing:1px}.campaign-gym{min-height:470px}}
@media(max-width:700px){
 .campaign{aspect-ratio:auto;min-height:0}
 .campaign-beach{display:flex;flex-direction:column;height:auto;background:#fff0e7;padding:0}
 .campaign-beach .campaign-image{position:relative;z-index:0;order:2;aspect-ratio:1.34/1;height:auto;object-fit:cover;object-position:right center}
 .campaign-beach .hero-copy{position:relative;top:auto;left:auto;transform:none;order:1;padding:38px 7% 30px;width:100%;background:linear-gradient(160deg,#fff2e5,#f7e2e9)}
 .campaign-beach:after{display:none}
 .campaign-beach h1{font-size:52px;line-height:1.03;margin:19px 0 20px;letter-spacing:-2.8px}
 .campaign-beach .hero-copy>p{font-size:13px}
 .campaign-beach .eyebrow{font-size:8px;letter-spacing:1.6px}
 .campaign-beach .hero-actions{gap:22px;flex-direction:row;align-items:center;margin-top:22px}
 .campaign-beach .hero-small{margin-top:22px;font-size:7px}
 .campaign-yacht{display:flex;flex-direction:column;height:auto;background:#5d8094}
 .campaign-yacht .campaign-image{position:relative;z-index:0;order:1;aspect-ratio:1.27/1;height:auto;object-position:66% center}
 .campaign-yacht .world-copy{position:relative;left:auto;top:auto;transform:none;width:100%;padding:34px 7% 38px;order:2;background:#6c7090}
 .campaign-yacht:after{display:none}
 .campaign-yacht h2{font-size:45px;margin:15px 0 18px}
 .campaign-yacht h2 br{display:none}
 .campaign-yacht h2 br:after{content:' '}
 .campaign-yacht p{font-size:13px;line-height:1.65;margin:0 0 20px}
 .campaign-yacht .eyebrow{font-size:8px}
 .campaign-yacht .button{margin:0}
 .campaign-gym{display:flex;flex-direction:column;height:auto;background:#4a3d54}
 .campaign-gym .campaign-image{position:relative;z-index:0;order:2;aspect-ratio:2/1;height:auto;object-position:center}
 .campaign-gym .gym-copy{position:relative;top:auto;left:auto;width:100%;padding:34px 7% 30px;order:1;background:#4a3d54}
 .campaign-gym:after{display:none}
 .gym-copy h2{font-size:44px;line-height:1.03;margin:14px 0 15px}
 .gym-copy h2 br{display:none}
 .gym-copy h2 br:after{content:' '}
 .gym-copy .eyebrow{font-size:7px;letter-spacing:1.5px}
 .gym-copy p{font-size:12px;margin-bottom:20px;max-width:260px}
 .gym-copy .button{padding:15px 21px}
 .product-image{background:#fff;aspect-ratio:1/1.08}
 .product-image>img{width:100%;transform:none;clip-path:none;mix-blend-mode:normal}
 .product-image:hover>img{transform:scale(1.02)}
 .catalog-pair{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;height:auto;margin:22px -4% 0}
 .flavor-match{padding-bottom:30px}
 .modal-image{max-width:280px}
 .quiz-result img{margin:0 auto}
}
