/* Punto Tech: a photographic retail system, with motion kept purposeful. */
:root{--lime:#bccf00;--blue:#25345f;--deep:#101b36;--surface:#eef2f8}html{scroll-behavior:smooth}body{background:#f5f7fb}.masthead{position:sticky;top:0;z-index:20;box-shadow:0 3px 18px #25345f08}.nav .wrap{gap:26px}.nav a{position:relative}.nav a:after{content:'';position:absolute;bottom:9px;left:0;right:0;height:2px;background:var(--lime);transform:scaleX(0);transition:transform .25s}.nav a:hover:after{transform:scaleX(1)}.btn{position:relative;transition:transform .22s,box-shadow .22s,background .22s;overflow:hidden;min-height:44px}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #101b3626}.btn:active{transform:translateY(0)}.btn:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,#fff5 50%,transparent 65%);transform:translateX(-120%);transition:transform .7s}.btn:hover:before{transform:translateX(120%)}
.home-season-nav{display:flex;align-items:center;gap:12px;margin-top:22px;margin-bottom:13px;overflow:auto;padding:2px 0 7px;scrollbar-width:thin}.season-heading{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--muted);margin-right:8px}.season-tab{flex-shrink:0;border:1px solid #dce3ee;border-radius:99px;background:white;color:var(--blue);padding:11px 16px;font-size:13px;font-weight:700;transition:background .25s,color .25s,transform .25s}.season-tab:hover{border-color:var(--blue);transform:translateY(-2px)}.season-tab.active{background:var(--blue);color:white;border-color:var(--blue)}.season-tab.active:before{content:'';display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--lime)}
.retail-hero{position:relative;isolation:isolate;display:block;margin:0;border-radius:24px;background:var(--deep);height:480px;overflow:hidden;color:white;box-shadow:0 16px 40px #101b3616}.hero-art{position:absolute;inset:0 0 0 auto;height:100%;width:72%;object-fit:cover;object-position:center;transform:translate(var(--px,0px),var(--py,0px)) scale(1.04);transition:transform .8s cubic-bezier(.2,.65,.2,1);z-index:-2}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#101b36 0%,#101b36f0 28%,#101b36a6 48%,#101b3626 68%,transparent 100%);z-index:-1}.hero-glow{position:absolute;bottom:-110px;left:28%;width:420px;height:260px;background:#bccf002b;filter:blur(70px);z-index:-1;pointer-events:none}.retail-hero[data-theme=friday]{background:#070d1c}.retail-hero[data-theme=friday] .hero-scrim{background:linear-gradient(90deg,#070d1c 0%,#070d1cf5 32%,#070d1cb3 48%,#070d1c33 72%,transparent 100%)}.retail-hero[data-theme=navidad] .hero-glow{background:#bccf0050}.hero-content{padding:52px 50px 35px;max-width:650px}.hero-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--lime);font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase}.hero-kicker:before{content:'';width:24px;height:2px;background:var(--lime)}.retail-hero h1{font-size:clamp(34px,4vw,60px);font-weight:800;line-height:1.05;letter-spacing:-.045em;margin:22px 0 19px;min-height:126px;max-width:540px}.headline-lead,.headline-word{display:block}.headline-word{font-style:normal;color:var(--lime);width:max-content;max-width:100%;position:relative}.headline-word:after{content:'';display:block;height:3px;background:var(--lime);width:50%;margin-top:8px;opacity:.65;transform-origin:left}.headline-enter .headline-lead{animation:title-in .65s cubic-bezier(.16,1,.3,1) both}.headline-enter .headline-word{animation:title-in .8s .12s cubic-bezier(.16,1,.3,1) both}.headline-enter .headline-word:after{animation:underline-in .9s .4s both}.retail-hero p{color:#d4ddef;font-size:16px;line-height:1.6;max-width:390px;min-height:52px;margin:0 0 24px}.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.hero-note{color:#d4ddef;font-size:12px;line-height:1.4;max-width:100px}.hero-controls{position:absolute;left:50px;right:30px;bottom:23px;display:flex;align-items:center;gap:12px;font-size:12px;color:#d4ddef}.hero-controls button{color:white;background:#ffffff0d;border:1px solid #ffffff35;border-radius:99px;padding:8px 12px;font-size:12px;min-height:36px}.hero-controls button:hover{background:#ffffff22}.hero-controls .slide-counter{color:var(--lime);font-size:12px;letter-spacing:.12em;margin-right:10px}.hero-controls #campaign-pause{margin-left:auto}.slide-track{height:2px;position:absolute;bottom:0;left:0;right:0;background:#ffffff14}.slide-progress{display:block;background:var(--lime);height:100%;transform-origin:left;animation:slide-time 7.5s linear infinite}.slide-enter .slide-progress{animation-name:none}.slide-enter:not(.is-paused) .slide-progress{animation-name:slide-time}.is-paused .slide-progress{animation-play-state:paused}.campaign-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.retail-benefits{margin-top:18px;box-shadow:0 5px 20px #25345f05;border:0}.retail-benefits .benefit{padding:22px}.retail-benefits .benefit svg{color:var(--blue);background:#bccf0024;border-radius:10px;padding:5px;width:38px;height:38px}.retail-benefits .benefit small{font-size:13px}.section-eyebrow{color:#68758d;font-size:12px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;display:block;margin-bottom:8px}.home-categories .section-heading{margin-bottom:23px}.home-categories h2{font-size:30px}.punto-categories{gap:16px}.category-number{display:none}.punto-category.photo-category{padding:0;border:1px solid #e0e6ef;background:white;color:var(--blue);min-height:0;border-radius:16px;overflow:hidden;display:block;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}.photo-category .category-visual{display:block;overflow:hidden;aspect-ratio:1/1;background:#25345f;position:relative}.photo-category .category-visual:after{content:'';position:absolute;inset:0;border:1px solid #ffffff12;pointer-events:none}.photo-category img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.photo-category .category-copy{display:block;padding:18px 17px 20px}.photo-category b{font-size:17px;margin:0;line-height:1.3}.photo-category .category-caption{color:#657089;font-size:13px;margin-top:7px;display:block}.photo-category:hover{background:white;transform:translateY(-7px);box-shadow:0 18px 30px #25345f16}.photo-category:hover img{transform:scale(1.065)}.photo-category:hover .category-copy{box-shadow:inset 0 -4px var(--lime)}
.season-collections{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.season-collection{position:relative;border-radius:18px;overflow:hidden;background:var(--blue);color:white;min-height:280px;display:flex;align-items:flex-end;padding:25px;isolation:isolate;transition:transform .3s,box-shadow .3s}.season-collection img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2;transition:transform .6s}.season-collection:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#101b36fa 0%,#101b36b0 35%,#101b360d 100%)}.season-collection .eyebrow{font-size:11px;color:var(--lime)}.season-collection h3{margin:8px 0;font-size:25px;line-height:1.15;max-width:240px}.season-collection span.collection-link{display:block;font-size:13px;color:#d4ddef;margin-top:12px}.season-collection:hover{transform:translateY(-5px);box-shadow:0 12px 28px #25345f20}.season-collection:hover img{transform:scale(1.055)}.delivery-strip{display:flex;align-items:center;justify-content:space-between;gap:25px;border-radius:18px;background:var(--lime);padding:26px 32px;margin-top:28px}.delivery-strip h2{font-size:27px;line-height:1.1}.delivery-strip p{font-size:14px;color:var(--blue);margin:7px 0 0}.delivery-strip .btn{white-space:nowrap}.business-banner{background:linear-gradient(120deg,#25345f,#172648);border-radius:20px;position:relative;overflow:hidden;padding:44px}.business-banner:before{content:'';position:absolute;width:200px;height:200px;border:1px solid #bccf0030;border-radius:50%;right:-60px;top:-80px;pointer-events:none}.business-banner h2{margin-top:13px;font-size:30px;max-width:600px;line-height:1.15}.section{margin:45px 0}.reveal{transition:opacity .65s,transform .65s}.js-motion .reveal:not(.is-visible){opacity:0;transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}.js-motion .punto-category:nth-child(2){transition-delay:.06s}.js-motion .punto-category:nth-child(3){transition-delay:.12s}.js-motion .punto-category:nth-child(4){transition-delay:.18s}.js-motion .punto-category:nth-child(5){transition-delay:.24s}.product-card{transition:transform .3s,box-shadow .3s}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #25345f12}
@keyframes title-in{from{opacity:0;transform:translateY(22px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes underline-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes slide-time{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1100px){.retail-hero{height:450px}.hero-content{padding:42px 35px 35px;max-width:600px}.retail-hero h1{font-size:48px;max-width:490px}.hero-controls{left:35px}.hero-art{width:78%}.photo-category b{font-size:15px}.photo-category .category-copy{padding:16px 12px}.photo-category .category-caption{font-size:12px}.season-heading{display:none}.retail-benefits .benefit{padding:17px}.season-collection{min-height:250px;padding:22px}.season-collection h3{font-size:23px}}
@media(max-width:760px){.masthead{position:relative}.home-season-nav{margin-top:16px;gap:8px}.season-tab{font-size:12px;padding:10px 13px}.retail-hero{height:620px;border-radius:18px}.hero-content{padding:28px 24px 32px;max-width:100%}.retail-hero h1{font-size:clamp(34px,8vw,46px);line-height:1.06;min-height:92px;max-width:100%;margin:18px 0}.retail-hero p{font-size:14px;max-width:95%;margin-bottom:18px;min-height:46px}.hero-art{width:100%;height:62%;top:auto;bottom:-9px;object-position:center;transform:translate(var(--px,0px),var(--py,0px)) scale(1.05)}.hero-scrim{background:linear-gradient(180deg,#101b36 0%,#101b36f5 40%,#101b3690 61%,#101b3612 79%,#101b36a0 100%)}.retail-hero[data-theme=friday] .hero-scrim{background:linear-gradient(180deg,#070d1c 0%,#070d1cf5 40%,#070d1c90 61%,#070d1c12 79%,#070d1ca0 100%)}.hero-controls{left:22px;right:22px;bottom:20px;gap:6px;flex-wrap:wrap}.hero-controls button{padding:8px 10px}.hero-controls .slide-counter{margin-right:5px}.hero-kicker{font-size:11px;letter-spacing:.1em}.hero-note{font-size:11px;max-width:95px}.hero-actions .btn{padding:13px 16px;font-size:14px}.hero-glow{bottom:0;left:-20%;width:350px}.retail-benefits{margin-top:14px}.retail-benefits .benefit{padding:14px 11px}.retail-benefits .benefit small{font-size:12px}.retail-benefits .benefit svg{width:32px;height:32px;flex-shrink:0}.home-categories h2{font-size:26px}.home-categories .section-heading{align-items:flex-end;gap:10px}.section-heading a{font-size:12px}.punto-categories{grid-template-columns:repeat(2,1fr);gap:12px}.punto-category.photo-category:last-child{grid-column:auto;min-height:0}.punto-category.photo-category{min-height:0}.photo-category .category-copy{padding:16px 13px}.photo-category b{font-size:15px}.season-collections{grid-template-columns:1fr 1fr;gap:12px}.season-collection{min-height:240px;padding:19px}.season-collection:last-child{grid-column:1/-1;min-height:230px}.season-collection h3{font-size:22px}.delivery-strip{display:block;padding:24px}.delivery-strip h2{font-size:25px}.delivery-strip .btn{margin-top:18px}.business-banner{padding:29px}.business-banner h2{font-size:26px}.section{margin:34px 0}}
@media(max-width:380px){.retail-hero{height:650px}.hero-content{padding:25px 20px}.retail-hero h1{font-size:34px}.hero-note{display:none}.season-collection h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.is-visible){opacity:1;transform:none}.hero-art{transform:none}.btn:hover,.photo-category:hover,.season-collection:hover{transform:none}.photo-category:hover img,.season-collection:hover img{transform:none}.slide-progress{display:none}}

.headline-enter .headline-word{animation:title-in .8s .12s cubic-bezier(.16,1,.3,1) both,word-glow 4s 1.2s ease-in-out infinite}@keyframes word-glow{0%,100%{text-shadow:0 0 0 #bccf0000}50%{text-shadow:0 0 24px #bccf0025}}@media(max-width:760px){.retail-hero{height:580px}}@media(max-width:380px){.retail-hero{height:610px}}
