:root{--ink:#173a34;--muted:#6d7872;--paper:#f7f7f2;--line:#dedfd5;--orange:#df693e;--sage:#e4e9db;--white:#fff;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}p,h1,h2,h3{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(40px,5vw,72px);letter-spacing:-2.5px}h2{font-size:40px;letter-spacing:-1px}h3{line-height:1.25}small{font-size:12px}.demo{display:flex;justify-content:space-between;gap:12px;background:var(--ink);color:#fff;font-size:10px;letter-spacing:.8px;padding:8px 5%}.demo b{color:#f6a779;margin:0 8px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 5%;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.logo{display:flex;gap:12px;align-items:center;font-size:23px;line-height:1.2;font-weight:bold;letter-spacing:-.7px}.logo small{display:block;font-size:8px;font-weight:400;letter-spacing:2px;margin-top:5px}.mark{font-size:36px;letter-spacing:-5px}.mark span{color:var(--orange);font-size:23px;vertical-align:top}nav{display:flex;gap:28px;font-size:13px}nav a:hover{color:var(--orange)}.cart-button{background:transparent;border:1px solid var(--ink);padding:10px 16px;border-radius:6px;font-size:12px}.cart-button span{background:var(--ink);color:white;border-radius:50%;padding:3px 7px;margin-left:10px}.wrap{max-width:1320px;margin:auto;padding:40px 5% 60px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding-top:58px;padding-bottom:60px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:bold;display:block;margin-bottom:24px}.eyebrow:before{content:'';display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:8px}.hero h1 em{font-weight:400;color:var(--orange)}.hero p{max-width:440px;color:var(--muted);font-size:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--ink);color:white;padding:14px 21px;border-radius:5px;font-size:13px;font-weight:bold;min-height:46px}.btn:hover{background:#27574c}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.orange{background:var(--orange)}.btn:disabled{opacity:.4;cursor:not-allowed}.hero-actions{display:flex;gap:18px;align-items:center;margin:28px 0}.hero-note{font-size:11px;color:var(--muted)}.hero-art{height:440px;border-radius:150px 150px 12px 12px;background:#e5e9de;position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:30px;gap:15px}.hero-art:before{content:'PRESENTE.';position:absolute;bottom:0;left:10px;font-family:var(--serif);font-size:80px;color:#cad3bf;letter-spacing:-6px}.hero-product{background:#fff;border-radius:14px;padding:16px;box-shadow:0 20px 40px #173a3410;position:relative;transform:rotate(-9deg);margin-top:30px}.hero-product:nth-child(2){transform:rotate(9deg);margin-top:-65px}.hero-product img{width:100%;height:220px;object-fit:contain}.hero-product small{display:block;font-size:9px;border-top:1px solid #eee;padding-top:10px}.floating-label{position:absolute;bottom:28px;right:22px;padding:12px 18px;background:var(--ink);color:white;font-size:11px;border-radius:5px;transform:rotate(-4deg)}.stripe{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 5%;display:flex;justify-content:space-around;gap:20px;font-size:12px}.stripe span b{margin-right:10px;color:var(--orange)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-head h2{margin:0}.sub{color:var(--muted);font-size:13px}.section-head a{font-size:12px;border-bottom:1px solid var(--ink)}.category-row{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.category{padding:24px 10px;border:1px solid var(--line);text-align:center;border-radius:8px;background:transparent;color:var(--ink)}.category:hover{background:var(--sage);border-color:var(--ink)}.category .symbol{font-size:28px;font-family:var(--serif);display:block;margin-bottom:12px}.category span{font-size:12px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}.card{min-width:0}.product-image{position:relative;background:white;border-radius:9px;overflow:hidden;border:1px solid #ecece3;display:block;width:100%;padding:15px}.product-image img{width:100%;height:225px;object-fit:contain;transition:transform .3s}.product-image:hover img{transform:scale(1.06)}.tag{position:absolute;top:12px;left:12px;font-size:9px;letter-spacing:.7px;background:var(--paper);padding:4px 8px;border-radius:3px}.card .meta{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;margin:14px 0 6px}.card h3{font-size:14px;font-weight:500;margin-bottom:9px;min-height:35px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.swatches{display:flex;align-items:center;gap:5px}.swatch{height:13px;width:13px;border:1px solid #0002;border-radius:50%;display:inline-block}.card-bottom button{background:transparent;border-bottom:1px solid var(--line);color:var(--ink);font-size:11px;padding:5px 0}.how{background:var(--ink);color:white;border-radius:12px;padding:45px;display:grid;grid-template-columns:1.2fr 2fr;gap:50px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.step b{color:#e7a379;font-family:var(--serif);font-size:28px;font-weight:normal}.step h3{font-size:14px;margin:12px 0}.step p{font-size:12px;color:#c4d1ca}.how h2{font-size:35px}.how .eyebrow{color:#bccdc2}.faq{max-width:760px;margin:20px auto}details{padding:20px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:14px}details p{font-size:13px;color:var(--muted);margin:14px 0 0}footer{border-top:1px solid var(--line);padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-family:var(--serif);font-size:20px;margin:0}footer small{color:var(--muted);font-size:10px}.orange{color:var(--orange)}.breadcrumbs{font-size:11px;color:var(--muted);margin-bottom:22px}.page-title{font-size:46px;margin-bottom:12px}.catalog-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:30px}.search{display:flex;width:360px;background:white;border:1px solid var(--line);border-radius:5px;padding:10px 14px;gap:10px}.search input{border:0;outline:0;width:100%;min-width:0}.catalog-layout{display:grid;grid-template-columns:180px 1fr;gap:32px}.filters{font-size:12px}.filters h3{font-size:13px;margin:0 0 12px}.filter-button{display:block;width:100%;text-align:left;padding:9px 10px;background:transparent;color:var(--muted);border-radius:5px;margin-bottom:3px}.filter-button.active{background:var(--sage);color:var(--ink);font-weight:bold}.filter-group{margin-bottom:30px}.filter-color{display:flex;gap:7px;align-items:center;margin-bottom:8px}.results-bar{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:20px}.results-bar select{font-size:12px;padding:8px;border:1px solid var(--line);border-radius:4px;background:transparent}.catalog-layout .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-info{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.empty{text-align:center;padding:70px 20px}.empty h2{font-size:32px}.empty p{color:var(--muted)}dialog{border:0;border-radius:12px;max-width:940px;width:94%;padding:0;color:var(--ink);background:var(--paper);max-height:92vh;overflow:auto}dialog::backdrop{background:#10271fd0;backdrop-filter:blur(3px)}.modal-top{display:flex;justify-content:space-between;padding:20px 25px;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line)}.close{background:transparent;font-size:23px;color:var(--ink);padding:0 6px;line-height:1}.product-detail{padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:35px}.detail-image{background:white;border-radius:8px;display:flex;align-items:center;justify-content:center;min-height:320px}.detail-image img{width:100%;height:330px;object-fit:contain}.product-detail h2{font-size:33px;margin:8px 0 14px}.product-detail .desc{font-size:12px;color:var(--muted)}.color-options{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 20px}.color-option{display:flex;align-items:center;gap:6px;font-size:10px;padding:7px 9px;background:white;border:1px solid var(--line);border-radius:4px;color:var(--ink)}.color-option.active{border:1px solid var(--ink);box-shadow:0 0 0 1px var(--ink)}label{display:block;font-size:12px;margin:12px 0 6px;font-weight:bold}.quantity{display:flex;border:1px solid var(--line);background:white;border-radius:5px;width:140px;overflow:hidden}.quantity button{width:35px;background:transparent;color:var(--ink)}.quantity input{width:70px;border:0;text-align:center;padding:10px 0;appearance:textfield}.detail-cta{display:flex;gap:10px;margin:10px 0 16px}.detail-cta .btn{flex:1}.notice{font-size:11px;background:var(--sage);padding:12px 14px;border-radius:5px;color:var(--ink);margin:15px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.field{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink)}textarea.field{min-height:90px;resize:vertical}.full{grid-column:1/-1}.cart-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:35px;align-items:start}.panel{padding:28px;background:white;border:1px solid var(--line);border-radius:8px}.panel h2{font-size:28px}.cart-line{display:grid;grid-template-columns:75px 1fr auto;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.cart-line img{width:75px;height:80px;object-fit:contain;background:white;border-radius:6px}.cart-line h3{font-size:14px;margin:0 0 5px}.cart-line p{font-size:11px;color:var(--muted);margin:0 0 8px}.remove{font-size:10px;background:transparent;color:var(--muted);text-decoration:underline;margin-top:7px}.cart-line .quantity{width:120px}.cart-line .quantity input{width:60px}.cart-line .quantity button{width:30px}.summary-line{display:flex;justify-content:space-between;font-size:13px;margin-bottom:14px}.summary-line.total{border-top:1px solid var(--line);padding-top:18px}.admin-banner{padding:12px 16px;background:#fff0e6;border:1px solid #f0c8ac;border-radius:5px;font-size:12px;margin-bottom:24px}.admin-grid{display:grid;grid-template-columns:180px 1fr;gap:30px}.admin-nav button{display:block;padding:12px;width:100%;text-align:left;background:none;color:var(--ink);border-radius:5px;margin-bottom:4px}.admin-nav button.active{background:var(--ink);color:white}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:25px}.stat{background:white;border:1px solid var(--line);padding:20px;border-radius:7px}.stat span{font-size:11px;color:var(--muted)}.stat strong{display:block;font:36px var(--serif);margin-top:8px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{color:var(--muted);font-size:10px;font-weight:normal;padding:12px 10px;background:var(--paper)}td{padding:16px 10px;border-bottom:1px solid var(--line)}.status{padding:5px 9px;border-radius:20px;background:var(--sage);font-size:10px;white-space:nowrap}.status.new{background:#fce8d8;color:#995e30}.text-button{border:0;background:transparent;color:var(--ink);font-size:12px;text-decoration:underline}.quote-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.quote-top h2{margin:0;font-size:31px}.price-input{width:95px}.quote-grid{display:grid;grid-template-columns:2fr 1fr;gap:25px}.customer-info p{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.success{max-width:700px;margin:25px auto;text-align:center}.success-icon{background:var(--sage);width:65px;height:65px;border-radius:50%;display:grid;place-items:center;margin:0 auto 25px;font-size:28px}.success h1{font-size:45px}.success p{color:var(--muted)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.success .actions{justify-content:center}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 22px;border-radius:6px;font-size:13px;z-index:50;box-shadow:0 4px 30px #0002;display:none;max-width:90vw}.offer-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:30px}.offer-head h1{font-size:39px}.mobile-filter{display:none}.error{color:#aa3a25;font-size:12px}.check{display:flex;gap:9px;font-weight:normal;font-size:11px;align-items:flex-start}.check input{margin-top:3px}.muted{color:var(--muted)}@media(max-width:950px){nav{gap:14px}.grid{grid-template-columns:repeat(3,1fr)}.hero{gap:25px}.hero-art{height:360px;padding:20px}.hero-product img{height:175px}.category-row{grid-template-columns:repeat(3,1fr)}.how{grid-template-columns:1fr;gap:10px}.cart-layout,.quote-grid{grid-template-columns:1fr}.catalog-layout{grid-template-columns:150px 1fr;gap:20px}.catalog-layout .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.demo{font-size:8px;padding:7px 5%}.demo span:last-child{display:none}header{padding:15px 5%;gap:10px;flex-wrap:wrap}.logo{font-size:20px}.logo .mark{font-size:28px}header nav{order:3;width:100%;justify-content:space-between;font-size:11px;padding-top:8px}.cart-button{font-size:10px;padding:8px 10px}.wrap{padding:30px 5% 40px}.hero{grid-template-columns:1fr;gap:25px;padding-top:30px}h1{font-size:47px}.hero h1{margin-bottom:20px}.hero p{font-size:14px}.eyebrow{font-size:9px;margin-bottom:16px}.hero-art{height:310px;max-width:100%;border-radius:100px 100px 10px 10px}.hero-product img{height:145px}.hero-product:nth-child(2){margin-top:-30px}.hero-art:before{font-size:64px}.hero-actions{margin:22px 0}.stripe{font-size:9px;gap:12px;padding:15px 5%}.stripe span b{display:block;margin-bottom:3px}.section-head h2,h2{font-size:30px}.section-head{align-items:start}.section-head a{white-space:nowrap;font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.product-image img{height:160px}.card h3{font-size:12px;min-height:32px}.card .meta{font-size:9px}.card-bottom{flex-wrap:wrap}.category-row{gap:8px}.category{padding:17px 5px}.how{padding:28px}.steps{grid-template-columns:1fr;gap:10px}.step{display:grid;grid-template-columns:30px 1fr;gap:0 15px}.step p{grid-column:2}.step h3{margin:5px 0 10px}.step b{grid-row:span 2}.how h2{font-size:31px}footer{flex-direction:column;align-items:start;padding:28px 5%;gap:15px}footer p{font-size:18px}.catalog-head{display:block}.search{width:100%;margin-top:20px}.catalog-layout{display:block}.filters{display:none;background:white;padding:20px;border:1px solid var(--line);margin-bottom:20px}.filters.open{display:block}.mobile-filter{display:block;margin-bottom:16px}.catalog-layout .grid{gap:22px 12px}.product-detail{grid-template-columns:1fr;padding:20px;gap:20px}.detail-image{min-height:200px}.detail-image img{height:220px}.product-detail h2{font-size:29px}.form-grid{grid-template-columns:1fr}.panel{padding:20px}.cart-line{grid-template-columns:55px 1fr;gap:12px}.cart-line img{width:55px}.cart-line>div:last-child{grid-column:2}.admin-grid{display:block}.admin-nav{display:flex;gap:8px;margin-bottom:20px;overflow:auto}.admin-nav button{white-space:nowrap;font-size:11px}.stats{gap:8px}.stat{padding:12px}.stat strong{font-size:30px}.stat span{font-size:9px}.quote-top{align-items:start;flex-direction:column}.offer-head{display:block}.page-title{font-size:38px}.success h1{font-size:36px}}@media print{header,footer,.demo,.actions,.admin-banner{display:none}.wrap{padding:0}.panel{border:0}body{background:white}}
/* Vila Brindes: original logo + proposed digital identity */
@font-face{font-family:Lato;src:url('assets/Lato-Regular.ttf')}@font-face{font-family:Lato;src:url('assets/Lato-Bold.ttf');font-weight:700}:root{--ink:#231f20;--muted:#6b6862;--paper:#fffdf7;--line:#e9e5d8;--orange:#b47a00;--sage:#fff4c5;--serif:Lato,Arial,sans-serif}body{font-family:Lato,Arial,sans-serif}h1,h2{font-weight:700;letter-spacing:-1.8px}h1 em{font-style:normal;color:var(--ink)!important;background:linear-gradient(transparent 68%,#ffcb04 68%)}header .logo img{width:185px;height:65px;object-fit:contain}footer .logo img{width:170px;height:65px;object-fit:contain}.hero-art{background:#ffdd49;border-radius:130px 130px 24px 24px}.hero-art:before{content:'VILA.';color:#f4c119;font-weight:700;font-size:100px}.hero-product{border-radius:18px}.floating-label{border-radius:24px;transform:rotate(-3deg)}.hero .btn,.cart-button,.detail-cta .btn{background:#ffcb04;color:#231f20;border-color:#ffcb04}.btn:hover{background:#403a32}.hero .btn:hover,.detail-cta .btn:hover,.cart-button:hover{background:#efbd00}.btn.orange{background:#ffcb04;color:#231f20}.eyebrow:before{background:#ffcb04}.how{border-radius:24px;background:#ffcb04;color:#231f20}.how .eyebrow,.step p{color:#53482a}.step b{color:#231f20}.category{border-radius:14px}.category:hover{background:#fff4c5}.product-image{border-radius:16px}.status{background:#fff4c5}.btn{border-radius:8px}.stripe span b{color:#8e6500}.hero-note:before{content:'✓';margin-right:7px;color:#231f20}.how h2{font-size:34px}.stat strong{font-weight:bold}.demo b{color:#ffcb04}.logo{letter-spacing:0}.hero-art:after{content:'';position:absolute;top:22px;right:25px;width:90px;height:70px;border-top:3px dashed #231f20;border-right:3px dashed #231f20;border-radius:50%;transform:rotate(20deg);pointer-events:none}@media(max-width:640px){header .logo img{width:155px;height:50px}h1{font-size:45px}.hero-art{border-radius:80px 80px 20px 20px}}
/* Motion direction: staggered entrances, gentle blur and original bee */
.hero-carousel{overflow:hidden;position:relative}.hero-slides{display:grid}.hero-slide{grid-area:1/1;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s;min-width:0}.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.hero-slide .hero{min-height:550px;padding-bottom:32px}.banner-title{font-size:clamp(40px,5vw,68px);line-height:1.12;letter-spacing:-2.5px;margin-bottom:26px}.banner-title>span{display:block}.banner-title em{font-style:normal;color:#231f20;background:linear-gradient(transparent 69%,#ffcb04 69%)}.is-active .banner-title>span{animation:title-arrive .85s cubic-bezier(.16,1,.3,1) both}.is-active .banner-title>span:nth-child(2){animation-delay:.13s}.is-active .enter-item{animation:content-arrive .8s cubic-bezier(.16,1,.3,1) both}.is-active .hero-copy>.eyebrow{animation-delay:.05s}.is-active .hero-copy>p{animation-delay:.22s}.is-active .hero-actions{animation-delay:.32s}.is-active .hero-note{animation-delay:.4s}.is-active .banner-art,.is-active .custom-art{animation:art-arrive 1s cubic-bezier(.16,1,.3,1) both}.is-active .hero-product{animation:product-float 6s ease-in-out infinite}.is-active .hero-product:nth-child(2){animation:product-float-alt 7s ease-in-out infinite}.carousel-toolbar{max-width:1190px;margin:0 auto 30px;padding:0 1%;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;gap:20px}.slide-tabs{display:flex;gap:24px}.slide-dot{position:relative;display:flex;gap:10px;align-items:center;background:none;padding:12px 0;border-bottom:2px solid #dedbcf;color:#777168;font-size:12px}.slide-dot span{font-size:10px}.slide-dot.active{border-color:#ffcb04;color:#231f20;font-weight:bold}.carousel-actions{display:flex;align-items:center;gap:9px}.carousel-actions button{background:#fff;border:1px solid #e9e5d8;border-radius:50%;width:36px;height:36px;color:#231f20}.slide-position{font-size:10px;letter-spacing:1px;margin-right:12px}.personalized-slide{background:#fff8de}.custom-art{height:440px;background:#fff0ad;border-radius:24px 130px 24px 24px;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.sketch-label{position:absolute;top:26px;left:27px;font-size:9px;letter-spacing:1.7px}.custom-product{position:relative;transform:rotate(-9deg);width:260px;height:310px;background:white;border-radius:18px;padding:25px;box-shadow:0 18px 30px #735b0815;margin-left:-55px}.custom-product img{width:100%;height:100%;object-fit:contain}.brand-stamp{position:absolute;top:44%;left:50%;transform:translate(-25%,-5%) rotate(1deg);font-size:9px;line-height:1.3;color:white;text-align:center;letter-spacing:1px}.brand-stamp b{font-size:12px}.brand-stamp i{display:block;font-size:19px;font-style:normal;color:#ffcb04;margin-top:6px}.custom-note{position:absolute;right:22px;bottom:100px;background:#ffcb04;padding:20px;border-radius:14px;width:175px;transform:rotate(8deg);box-shadow:0 10px 30px #0001}.custom-note span{font-size:9px;display:block;margin-bottom:10px}.custom-note b{font-size:17px;line-height:1.25;display:block}.custom-note>div{display:flex;gap:6px;margin-top:15px}.custom-note i{display:inline-block;width:18px;height:18px;border:2px solid #fff;border-radius:50%}.custom-caption{position:absolute;bottom:22px;left:25px;font-size:9px;color:#5d5333;max-width:80%}.personalization{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin-top:20px;border-top:1px solid var(--line);padding-top:70px;padding-bottom:35px;scroll-margin-top:160px}.personalization-intro h2{font-size:44px;line-height:1.12}.personalization-intro p{color:var(--muted);font-size:15px;max-width:460px}.personalization-intro .btn{margin-top:15px;background:#ffcb04;color:#231f20}.yellow-underline{background:linear-gradient(transparent 70%,#ffcb04 70%)}.personalization-steps article{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}.personalization-steps h3{font-size:18px;margin-bottom:8px}.personalization-steps p{font-size:13px;color:var(--muted);margin:0}.personal-number{height:37px;min-width:37px;border-radius:50%;background:#ffcb04;display:grid;place-items:center;font-size:11px}.reveal-vila{opacity:0;transform:translateY(24px);filter:blur(4px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s;transition-delay:var(--reveal-delay,0ms)}.reveal-vila.revealed{opacity:1;transform:translateY(0);filter:blur(0)}.category,.btn,.product-image{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.category:hover{transform:translateY(-5px);box-shadow:0 10px 20px #231f2008}.btn:hover{transform:translateY(-2px)}.vila-flyer{position:fixed;width:65px;height:68px;top:0;left:0;z-index:9;pointer-events:none;animation:bee-flight 24s ease-in-out infinite;will-change:transform}.vila-flyer img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 5px #231f2014);animation:bee-hover .65s ease-in-out infinite alternate}.bee-halo{position:absolute;right:52px;top:37px;width:34px;border-top:2px dotted #a7882450;transform:rotate(-15deg)}body:has(dialog[open]) .vila-flyer{visibility:hidden}.motion-paused .vila-flyer,.motion-paused .vila-flyer img,.motion-paused .hero-product,.tab-hidden .vila-flyer,.tab-hidden .vila-flyer img{animation-play-state:paused!important}.motion-paused .reveal-vila{opacity:1;transform:none;filter:none;transition:none}.motion-paused .is-active .enter-item,.motion-paused .is-active .banner-title>span,.motion-paused .is-active .banner-art,.motion-paused .is-active .custom-art{animation:none}.motion-paused .hero-slide{transition:none}
@keyframes title-arrive{from{opacity:0;filter:blur(6px);transform:translateY(28px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes content-arrive{from{opacity:0;transform:translateY(18px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes art-arrive{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes product-float{0%,100%{transform:rotate(-9deg) translateY(0)}50%{transform:rotate(-7deg) translateY(-9px)}}@keyframes product-float-alt{0%,100%{transform:rotate(9deg) translateY(0)}50%{transform:rotate(7deg) translateY(8px)}}@keyframes bee-hover{from{transform:translateY(-2px) rotate(-5deg)}to{transform:translateY(2px) rotate(4deg)}}@keyframes bee-flight{0%,100%{transform:translate(calc(100vw - 90px),22vh) rotate(8deg)}20%{transform:translate(calc(100vw - 120px),43vh) rotate(25deg)}38%{transform:translate(calc(100vw - 85px),73vh) rotate(-12deg)}54%{transform:translate(calc(100vw - 155px),58vh) rotate(-25deg)}72%{transform:translate(calc(100vw - 95px),38vh) rotate(-14deg)}88%{transform:translate(calc(100vw - 180px),18vh) rotate(6deg)}}@media(max-width:950px){.carousel-toolbar{margin:0 5% 25px}.personalization{gap:35px}.custom-product{width:210px;height:270px}.custom-note{right:12px;width:145px;padding:16px}.custom-art{height:360px}}@media(max-width:640px){.hero-slide .hero{min-height:0;padding-top:30px;padding-bottom:25px}.hero-slides .hero-art,.custom-art{height:290px}.banner-title{font-size:43px;letter-spacing:-1.8px;margin-bottom:20px}.hero-copy p{min-height:84px}.hero-actions{gap:14px;flex-wrap:wrap}.hero-actions .btn{font-size:11px;padding:12px 14px}.hero-actions .sub{font-size:11px}.carousel-toolbar{gap:8px;align-items:center;margin-top:0}.slide-tabs{gap:14px}.slide-dot{font-size:10px;gap:5px}.slide-position{display:none}.carousel-actions{gap:5px}.carousel-actions button{width:30px;height:30px;font-size:12px}.custom-art{border-radius:18px 80px 18px 18px}.custom-product{width:180px;height:210px;margin-top:12px;margin-left:-70px;padding:14px}.custom-note{bottom:65px;right:22px;width:140px;padding:14px}.custom-note b{font-size:15px}.sketch-label{top:18px;left:18px;font-size:8px}.custom-caption{font-size:8px;bottom:15px;left:18px}.brand-stamp{font-size:7px}.brand-stamp b{font-size:9px}.brand-stamp i{font-size:15px}.personalization{grid-template-columns:1fr;gap:15px;padding-top:38px;scroll-margin-top:145px}.personalization-intro h2{font-size:34px}.personalization-steps h3{font-size:16px}.vila-flyer{width:39px;height:41px;animation-name:bee-flight-mobile}.bee-halo{right:30px;width:18px;top:25px}.hero-copy{min-height:330px}}@keyframes bee-flight-mobile{0%,100%{transform:translate(calc(100vw - 44px),28vh) rotate(5deg)}33%{transform:translate(calc(100vw - 42px),72vh) rotate(17deg)}66%{transform:translate(calc(100vw - 60px),48vh) rotate(-10deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-vila{opacity:1!important;transform:none!important;filter:none!important}.vila-flyer{display:none}}
/* Revision 2: consistent campaign, restrained honeycomb and scroll-guided flight */
.hero-carousel,.hero-slide,.personalized-slide{background:#ffcb04}.hero-carousel:before,.personalization:after{content:"";position:absolute;pointer-events:none;width:300px;height:250px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='104' viewBox='0 0 90 104'%3E%3Cpath d='M30 1L60 1L75 27L60 53L30 53L15 27ZM75 27L105 27L120 53L105 79L75 79L60 53ZM-15 27L15 27L30 53L15 79L-15 79L-30 53ZM30 53L60 53L75 79L60 105L30 105L15 79Z' fill='none' stroke='%23231f20' stroke-width='1'/%3E%3C/svg%3E");opacity:.065;mask-image:linear-gradient(135deg,#000,transparent 80%)}.hero-carousel:before{top:0;left:0}.hero-slide .hero{grid-template-columns:1fr 1.05fr;gap:45px;min-height:560px;padding-top:55px;padding-bottom:38px}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow:before{background:#231f20}.hero-copy p,.hero-copy .sub,.hero-note{color:#3d3520}.banner-title em{background:none}.hero-actions .btn{background:#231f20;color:white}.campaign-art{margin:0;min-width:0;position:relative;align-self:center}.campaign-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:28px;box-shadow:0 18px 45px #86670012}.campaign-art figcaption{font-size:10px;color:#493e16;margin-top:14px;text-align:center}.carousel-toolbar{margin-bottom:22px}.slide-dot{color:#51451c;border-color:#231f2030}.slide-dot.active{border-color:#231f20}.carousel-actions button{border-color:#231f2030;background:#ffffff70}.personalization{position:relative;isolation:isolate}.personalization:after{right:0;top:15px;z-index:-1;opacity:.045;transform:rotate(180deg)}.qty-presets{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.qty-presets button{border:1px solid #d6d2c7;border-radius:8px;background:#fff;padding:9px 15px;min-width:58px;color:#231f20;font-weight:700}.qty-presets button[aria-pressed=true]{background:#ffcb04;border-color:#c49b00;box-shadow:0 0 0 1px #c49b00}.qty-hint{font-size:12px;color:#6c655a;margin-bottom:14px}.vila-flyer{width:46px;height:48px;animation:none!important;transition:transform .65s cubic-bezier(.2,.7,.25,1);opacity:.9;z-index:8}.vila-flyer img{animation:none!important}.bee-halo{right:38px;top:30px;width:24px}.motion-paused .vila-flyer{transition:none}.hero-carousel .hero-copy p{min-height:0}@media(max-width:950px){.hero-slide .hero{gap:28px}.banner-title{font-size:49px}.campaign-art img{border-radius:20px}}@media(max-width:640px){.hero-slide .hero{grid-template-columns:1fr;gap:25px;padding-top:35px;padding-bottom:24px}.hero-copy{min-height:0}.banner-title{font-size:42px;letter-spacing:-1.7px;line-height:1.1}.hero-copy p{font-size:14px}.campaign-art{width:100%;max-width:480px;margin:auto}.campaign-art img{aspect-ratio:3/2}.hero-note{font-size:11px}.hero-carousel .hero-actions .btn{padding:14px 17px}.carousel-toolbar{margin-bottom:20px}.vila-flyer{width:32px;height:34px;opacity:.8}.bee-halo{right:26px;top:23px;width:16px}.qty-presets{gap:6px}.qty-presets button{min-width:48px;padding:10px 12px}.hero-carousel:before{width:180px;height:180px}}@media(prefers-reduced-motion:reduce){.vila-flyer{display:none}}

.hero-slide,.personalized-slide{background:transparent}.hero-carousel:before{z-index:0}
/* Open campaign composition and editorial collections */
.hero-slide .hero{position:relative;display:flex;align-items:center;min-height:560px;isolation:isolate}.hero-slide .hero-copy{width:46%;flex-shrink:0;z-index:2}.campaign-art{position:absolute;inset:0 -7% 0 auto;width:63%;height:100%;display:flex;align-items:center;z-index:0;pointer-events:none}.campaign-art img{width:100%;height:100%;object-fit:contain;border-radius:0;box-shadow:none;mix-blend-mode:darken;mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 92%,transparent 100%)}.campaign-art figcaption{position:absolute;bottom:24px;left:18%;right:12%;margin:0;font-size:9px}.hero-carousel{isolation:isolate}.hero-carousel:before{z-index:0}.hero-slides{position:relative;z-index:1}.collection-section{padding-top:58px;padding-bottom:70px}.collection-intro{max-width:560px;color:var(--muted);font-size:15px;margin:20px 0 0}.collection-shortcuts{display:flex;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:25px 0 32px;padding:18px 0}.collection-shortcuts button{background:none;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:45px;font-size:15px;padding:6px 0}.collection-shortcuts button:hover{text-decoration:underline;text-underline-offset:6px}.curated-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.curated-grid .card{background:transparent;border:0;border-radius:0;box-shadow:none}.curated-grid .product-image{border-radius:50% 50% 3px 3px;background:#f2f0e8;aspect-ratio:1.2;height:auto}.curated-grid .product-image img{mix-blend-mode:multiply}.everyday-section{background:#f4f2e9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.everyday-section .product-image{background:#fffdf7}.footer-admin{width:100%;padding-top:24px;margin-top:24px;border-top:1px solid #ffffff25;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-admin a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.footer-admin span{font-size:10px;opacity:.65}footer{flex-wrap:wrap}.category{border-radius:0;background:transparent;border:0;border-bottom:1px solid var(--line);box-shadow:none!important}.category:hover{background:#ffcb0410}.category .symbol{border-radius:50%}@media(max-width:950px){.hero-slide .hero-copy{width:49%}.campaign-art{width:61%;right:-8%}.hero-slide .banner-title{font-size:46px}.collection-shortcuts{gap:25px}}@media(max-width:640px){.hero-slide .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:0;padding-bottom:20px}.hero-slide .hero-copy{width:100%}.campaign-art{position:relative;inset:auto;width:112%;max-width:none;height:auto;aspect-ratio:1.5;margin:8px -6% 0}.campaign-art img{width:100%;height:100%;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.campaign-art figcaption{bottom:0;left:8%;right:8%;font-size:8px}.hero-slide .banner-title{font-size:42px}.curated-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.curated-grid .card:last-child{grid-column:1/-1;max-width:75%;width:100%;justify-self:center}.collection-shortcuts{gap:18px;justify-content:space-between}.collection-shortcuts button{font-size:12px;gap:12px}.collection-section{padding-top:36px;padding-bottom:42px}.collection-intro{font-size:14px}.footer-admin{align-items:flex-start;flex-direction:column;gap:12px}.section-head h2{font-size:34px}}
@media(min-width:641px){.campaign-art{width:57%;right:-2%}.campaign-art img{mask-image:linear-gradient(to right,transparent,#000 12%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 12%,#000 86%,transparent);mask-composite:intersect}}.hero-slide .hero-copy{padding-bottom:12px}
/* Honeycomb product system: separate labels, centered imagery, aligned details. */
.honey-card,.curated-grid .honey-card{display:flex;flex-direction:column;min-width:0;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.product-category{align-self:center;text-align:center;font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#61583c;padding:8px 16px;border-bottom:2px solid #ffcb04;margin-bottom:12px}.honey-card .honey-image,.curated-grid .honey-card .honey-image{display:grid;place-items:center;position:relative;isolation:isolate;width:100%;height:auto;aspect-ratio:1.08;background:none;border-radius:0;overflow:visible;padding:0;margin:0 0 22px}.honey-cell{position:absolute;inset:0 3%;z-index:-1;background:#eadba0;clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}.honey-cell:after{content:"";position:absolute;inset:2px;background:#fbf7e9;clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}.honey-card .honey-image img,.curated-grid .honey-card .honey-image img{position:relative;display:block;width:62%;height:68%;max-height:none;margin:0;object-fit:contain;mix-blend-mode:multiply;transition:transform .3s ease}.honey-image:hover img{transform:scale(1.045)}.honey-image:hover .honey-cell{background:#d8ad13}.honey-card .product-info{display:flex;flex:1;flex-direction:column;padding:0 8px}.honey-card .meta{font-size:10px;letter-spacing:.5px;padding:0;margin:0 0 12px;display:flex;justify-content:space-between}.honey-card h3{font-size:17px;line-height:1.4;min-height:48px;margin:0 0 18px}.honey-card .card-bottom{margin-top:auto;border-top:1px solid var(--line);padding:16px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.honey-card .card-bottom button{font-size:12px;display:flex;align-items:center;gap:15px;min-height:40px}.curated-grid{gap:36px}.hero-carousel:before{width:520px;height:420px;opacity:.16;mask-image:linear-gradient(130deg,#000,transparent 88%)}.personalization:after{opacity:.1;width:350px;height:310px}.everyday-section{position:relative;isolation:isolate}.everyday-section:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='104'%3E%3Cpath d='M30 1L60 1L75 27L60 53L30 53L15 27ZM30 53L60 53L75 79L60 105L30 105L15 79ZM75 27L105 27L120 53L105 79L75 79L60 53Z' fill='none' stroke='%23b28a00' stroke-width='1'/%3E%3C/svg%3E");opacity:.12;mask-image:linear-gradient(110deg,#000,transparent 48%)}.bee-section{position:relative}.section-bee{position:absolute;right:4px;top:0;width:40px;height:42px;pointer-events:none;z-index:5;opacity:0}.section-bee img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #0001)}.bee-in-view>.section-bee{animation:section-flight 6.5s cubic-bezier(.37,0,.45,1) .4s both}.hero-carousel>.section-bee,.everyday-section>.section-bee{right:18px}.motion-paused .section-bee,.tab-hidden .section-bee,body:has(dialog[open]) .section-bee{animation-play-state:paused!important}body:has(dialog[open]) .section-bee{visibility:hidden}@keyframes section-flight{0%{top:4%;opacity:0;transform:translate(-50px,-20px) rotate(-12deg)}12%{opacity:1}35%{top:24%;transform:translate(-10px,0) rotate(12deg)}62%{top:51%;transform:translate(-40px,0) rotate(-9deg);opacity:1}84%{opacity:1;top:77%;transform:translate(0,0) rotate(10deg)}100%{top:94%;opacity:0;transform:translate(-12px,20px) rotate(16deg)}}@media(max-width:640px){.curated-grid{gap:28px 14px}.curated-grid .honey-card:last-child{max-width:none;grid-column:auto}.curated-grid .honey-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 7px);justify-self:center}.product-category{font-size:9px;letter-spacing:.8px;padding:6px 10px;margin-bottom:10px}.honey-card .honey-image{margin-bottom:16px}.honey-card .product-info{padding:0 2px}.honey-card h3{font-size:14px;min-height:58px;margin-bottom:10px}.honey-card .meta{font-size:8px;gap:6px}.honey-card .card-bottom{gap:5px;align-items:flex-start;flex-direction:column;padding-top:10px}.honey-card .card-bottom button{font-size:11px;gap:8px}.hero-carousel:before{width:290px;height:320px;opacity:.13}.section-bee{width:28px;height:30px;right:0}.hero-carousel>.section-bee,.everyday-section>.section-bee{right:5px}.bee-in-view>.section-bee{animation-name:section-flight-mobile}@keyframes section-flight-mobile{0%{top:2%;opacity:0;transform:translateY(-12px) rotate(-8deg)}15%{opacity:.85}45%{top:37%;transform:translate(-8px,0) rotate(8deg)}75%{top:70%;opacity:.85;transform:translate(2px,0) rotate(-7deg)}100%{top:95%;opacity:0;transform:translateY(12px)}}}@media(prefers-reduced-motion:reduce){.section-bee{display:none!important}}
.honey-card .honey-image,.curated-grid .honey-card .honey-image{border:0;box-shadow:none}.honey-card .honey-image:focus-visible{outline:2px solid #8f7000;outline-offset:5px}
/* Premium polish: photographic categories and restrained brand geometry */
:root{--muted:#625f56;--line:#e4e0d5}.value-strip{display:grid;grid-template-columns:repeat(3,1fr);max-width:1190px;margin:auto;padding:29px 0;border-top:0;background:transparent;gap:0;font-size:12px;letter-spacing:.2px;color:#4e493e;text-align:center}.value-strip>span{display:block;padding:3px 24px}.value-strip>span+span{border-left:1px solid #d9d2c0}.premium-categories{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.category-photo{display:block;padding:0;border:0;border-radius:0;background:none;text-align:left;min-width:0;box-shadow:none;transform:none!important}.category-photo:hover{background:transparent}.category-visual{display:block;overflow:hidden;background:#f7f5ef;border-radius:5px;aspect-ratio:1}.category-visual img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .4s ease}.category-photo:hover img{transform:scale(1.055)}.category-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:700;letter-spacing:0;padding:16px 0 12px;border-bottom:1px solid #d9d2c0}.category-caption svg{transition:transform .3s}.category-photo:hover svg{transform:translateX(3px)}.category-disclaimer{font-size:11px;color:#736e61;margin:19px 0 0}.hero-carousel:before{opacity:.085;width:390px;height:340px}.personalization:after{opacity:.055}.everyday-section:before{opacity:.05;mask-image:linear-gradient(110deg,#000,transparent 35%)}.honey-cell{inset:4% 8%;background:#e4dcc6;opacity:.7}.honey-cell:after{background:#fbfaf5;inset:1px}.honey-image:hover .honey-cell{background:#c6b57c}.honey-card .honey-image img{width:65%;height:70%}.product-category{border:0;font-size:10px;color:#6b6556;letter-spacing:1.3px;margin-bottom:4px}.honey-card .product-info{padding:0 12px}.honey-card .card-bottom button{font-weight:700;color:#302c24}.section-head{align-items:flex-end;gap:30px}.section-head h2{font-size:40px;line-height:1.12;letter-spacing:-1.2px}.eyebrow{font-size:10px;letter-spacing:1.7px}.section-bee{width:32px;height:34px}.hero-note:before{content:none!important}.category-photo:focus-visible{outline:2px solid #8a6d00;outline-offset:6px}@media(max-width:950px){.premium-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.value-strip{margin:0 5%}.value-strip>span{padding:3px 16px;font-size:11px}}@media(max-width:640px){.premium-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.category-caption{font-size:13px;padding:13px 0 10px}.value-strip{grid-template-columns:1fr;padding:15px 0;gap:0;text-align:left}.value-strip>span{padding:12px 0;font-size:12px;letter-spacing:.1px}.value-strip>span+span{border-left:0;border-top:1px solid #e4dfd2}.section-head{gap:20px}.section-head h2{font-size:32px}.category-disclaimer{font-size:10px;line-height:1.6}.honey-card .product-info{padding:0 3px}.section-bee{width:25px;height:27px}}
/* Blend the supplier photo canvas with the section, not an isolated white layer. */
.honey-card .honey-image,.curated-grid .honey-card .honey-image{mix-blend-mode:multiply}.honey-card .honey-image img{mix-blend-mode:multiply}
/* Smooth cubic flight with a loop; alternate travel direction per section. */
.bee-section>.section-bee,.hero-carousel>.section-bee,.everyday-section>.section-bee{top:0;left:0;right:auto;offset-distance:0%;offset-rotate:0deg;offset-anchor:center;transform:none;animation:none;opacity:0;width:35px;height:37px;will-change:offset-distance}.bee-section.bee-in-view>.section-bee{animation:bee-curved-route 12s linear .6s both}.bee-section.bee-in-view>.section-bee img{animation:bee-bank 3s ease-in-out infinite}.motion-paused .section-bee img,.tab-hidden .section-bee img{animation-play-state:paused!important}@keyframes bee-curved-route{0%{offset-distance:0%;opacity:0}8%{opacity:.9}88%{opacity:.9}100%{offset-distance:100%;opacity:0}}@keyframes bee-bank{0%,100%{transform:rotate(-8deg) translateY(-1px)}50%{transform:rotate(9deg) translateY(1px)}}@media(max-width:640px){.bee-section>.section-bee{width:27px;height:29px}.bee-section.bee-in-view>.section-bee{animation-duration:11s}}@media(prefers-reduced-motion:reduce){.section-bee{display:none!important}}
/* Product-logo simulation. No third-party uploads. */
.personalization-view{min-width:0}.custom-preview{aspect-ratio:1;background:#fff;position:relative;overflow:hidden;border:1px solid #e6e6df;border-radius:12px}.custom-product{width:100%;height:100%;object-fit:contain;display:block}.custom-logo{position:absolute;height:auto;max-height:none;cursor:grab;touch-action:none;user-select:none;filter:drop-shadow(0 0 1px #0002)}.custom-logo:active{cursor:grabbing}.custom-logo[hidden]{display:none}.preview-caption{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:9px;letter-spacing:1px;margin-top:11px}.custom-disclaimer{font-size:11px;line-height:1.5;color:var(--muted);margin:12px 0 20px}.custom-controls{background:white;border:1px solid var(--line);border-radius:10px;padding:18px}.custom-heading{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}.custom-heading h3{font-size:17px;margin:0}.custom-heading>span{font-size:10px;color:var(--muted)}.custom-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:17px 10px;border:1px dashed #8a8a7a;border-radius:7px;cursor:pointer;text-align:center;background:#fbfaf5}.custom-upload span{font-size:12px}.custom-upload small{font-size:10px;font-weight:normal;color:var(--muted)}.custom-upload:hover{background:#fff6cc}.logo-input{position:absolute;width:1px;height:1px;opacity:0}.custom-upload:has(+.logo-input:focus-visible),.logo-input:focus-visible{outline:2px solid var(--ink)}.custom-status{font-size:11px;overflow-wrap:anywhere;margin:8px 0;color:var(--ink)}.custom-status:empty{display:none}.custom-privacy{font-size:10px;color:var(--muted);margin:10px 0 0}.custom-help{font-size:11px;color:var(--muted);margin:17px 0 5px}.custom-sliders{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.custom-sliders label{font-size:11px}.custom-sliders output{float:right;color:var(--muted);font-weight:normal}.custom-sliders input{width:100%;accent-color:#2b2b22;margin:12px 0 4px;cursor:pointer}.custom-actions{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:13px;margin-top:8px}.custom-actions button{background:transparent;color:var(--ink);font-size:10px;text-decoration:underline;padding:6px 0}.custom-actions .custom-download{margin-left:auto;font-weight:bold}.personalization-summary{display:block;font-size:10px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere;margin-top:5px}.quote-preview{display:block;width:80px;height:80px;object-fit:contain;margin-top:8px;border:1px solid var(--line);border-radius:6px}.product-detail{align-items:start}.product-detail .personalization-view{position:static}#product-dialog .modal-top{position:sticky;top:0;background:var(--paper);z-index:3}@media(max-width:640px){.custom-controls{padding:15px}.custom-preview{max-width:100%;margin:auto}.custom-sliders{gap:0 14px}.custom-actions button{min-height:36px}.product-detail .detail-cta{flex-wrap:wrap}.product-detail .detail-cta .btn{min-width:170px}.custom-controls input[type=range]{min-height:24px}}

.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:32px;font-size:12px}.catalog-pagination:empty{display:none}@media(max-width:640px){.catalog-pagination{gap:10px}.catalog-pagination .btn{padding:10px 12px;font-size:11px}}

.category-suggested{font-size:9px;letter-spacing:.04em;text-transform:none;background:#f0f0df;padding:3px 5px;border-radius:4px;margin-left:5px;white-space:nowrap}.category-note{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:20px}

/* Authenticated production quotation workflow */
.production-login{max-width:480px;margin:30px auto}.production-login label{display:block;margin:18px 0 8px}.production-login .btn,.production-admin form>.btn{margin-top:22px}.production-message:empty{display:none}.production-preview{display:block;width:150px;max-width:100%;max-height:180px;object-fit:contain}.production-admin figcaption{font-size:12px;color:#686b61;max-width:220px;overflow-wrap:anywhere}.production-admin input:disabled,.production-admin button:disabled,form[aria-busy="true"] button{opacity:.6;cursor:wait}.production-admin .actions{margin-bottom:20px}.production-admin td,.production-admin .customer-info{overflow-wrap:anywhere}

.footer-contact{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:18px 0;font-size:13px}.footer-contact a{text-decoration:underline;text-underline-offset:3px}

/* Product studio: one canvas for on-screen, downloaded and saved previews. */
#product-dialog{max-width:1120px}.product-detail{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:38px}.custom-stage-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.3px}.custom-stage-badge{font-size:9px;font-weight:400;background:#f0ede3;border:1px solid #e1dbc9;padding:4px 8px;border-radius:20px;white-space:nowrap}.personalization-view .custom-preview{isolation:isolate;border-radius:10px;border-color:#e4dfd2;overflow:hidden;box-shadow:0 7px 24px #3a2c0c06}.custom-preview>.custom-base{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;transform:none;margin:0;padding:0;border-radius:0;box-shadow:none;background:#fff}.custom-preview>canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;user-select:none}.custom-preview>canvas[hidden],.custom-surface-guide[hidden],.custom-stage-instruction[hidden],.custom-fit-warning[hidden],#custom-area-help[hidden],.surface-actions button[hidden]{display:none}.custom-preview>canvas:focus-visible{outline:3px solid #8b6800;outline-offset:-5px}.custom-surface-guide{position:absolute;inset:0;pointer-events:none}.custom-surface-guide svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}#custom-surface-shade{fill:#14201c;opacity:.23}#custom-surface-polygon{fill:none;stroke:#ffcb04;stroke-width:.6;stroke-dasharray:2 1;vector-effect:non-scaling-stroke;stroke-width:2px}.surface-corner{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:34px;height:34px;border:2px solid #fff;box-shadow:0 2px 10px #0004;border-radius:50%;background:#231f20;color:#ffcb04;font-size:12px;font-weight:700;pointer-events:auto;touch-action:none;user-select:none;padding:0;z-index:2;cursor:move}.surface-corner:focus-visible{outline:3px solid #ffcb04;outline-offset:2px}.custom-guide-label,.custom-stage-instruction{position:absolute;left:50%;bottom:13px;transform:translateX(-50%);max-width:90%;padding:6px 12px;border-radius:20px;white-space:nowrap;background:#231f20ed;color:#fff;font-size:10px;box-shadow:0 2px 12px #0001;pointer-events:none}.custom-stage-instruction{background:#fffef8eF;color:#4b4432;border:1px solid #e9e2d0}.custom-controls{padding:20px;border-radius:10px}.custom-heading h3,.custom-section-heading h3{font-size:14px;display:flex;align-items:center;gap:8px;line-height:1.4;margin:0}.custom-step{width:22px;height:22px;display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;background:#fff1b6;color:#4b3a00;font-size:11px}.custom-upload{margin-top:12px;padding:18px 12px;background:#fffdf4;border-color:#c8bc8f}.custom-upload span{font-size:13px}.custom-status{font-size:11px;padding:8px 0;margin:0}.custom-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e8e3d5;padding-top:19px;margin-top:17px}.surface-state{font-size:9px;color:#826d29;background:#fff5d5;padding:3px 7px;border-radius:4px;white-space:nowrap}.surface-state.is-confirmed{color:#1d5842;background:#e8f3eb}.custom-controls .custom-help{margin:10px 0;line-height:1.55;font-size:11px}.surface-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.surface-actions button{padding:10px 12px;font-size:11px;border-radius:5px;border:1px solid #d6ceba;background:#fff;color:#302c22;min-height:40px}.surface-actions #confirm-custom-area{background:#ffcb04;color:#231f20;border-color:#e0b309;font-weight:700}.surface-actions .surface-reset{background:none;border:0;font-size:10px;text-decoration:underline;padding:8px 3px}.custom-surface-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.custom-surface-options label{font-size:10px;line-height:1.5;margin:6px 0}.custom-surface-options select{display:block;width:100%;margin-top:7px;font-size:11px;border:1px solid #dcd5c6;padding:9px 7px;border-radius:5px;color:#332e22;background:#fff;min-height:40px}.custom-controls .custom-material-note{font-size:10px;color:#776f5e;margin:7px 0 10px}.custom-sliders input{accent-color:#8d6d00}.custom-fit-warning{border-left:3px solid #bd8b18;padding:8px 10px;font-size:11px;background:#fff7df;line-height:1.5;margin:12px 0}.custom-privacy{padding-top:13px;margin-top:14px;border-top:1px solid #ece6d8;font-size:10px;line-height:1.6}.custom-actions button{min-height:38px;font-size:11px}.custom-disclaimer{margin-bottom:18px}.preview-caption{font-size:9px}.custom-download{color:#53430c!important}
@media(min-width:900px){.product-detail>div:not(.personalization-view){position:sticky;top:79px;align-self:start}.personalization-view .custom-preview{max-height:460px;max-width:460px;margin:auto}}
@media(max-width:700px){#product-dialog{width:96%;max-height:95dvh}.product-detail{grid-template-columns:1fr;padding:18px;gap:26px}.custom-controls{padding:16px}.custom-stage-heading{font-size:10px}.custom-section-heading h3,.custom-heading h3{font-size:13px}.custom-surface-options{gap:8px}.custom-surface-options select{font-size:10px;min-height:44px}.surface-corner{width:38px;height:38px}.surface-actions button{min-height:44px}.custom-controls input[type=range]{min-height:30px}.custom-sliders label{font-size:10px}.custom-guide-label,.custom-stage-instruction{font-size:9px;max-width:94%;padding:5px 9px}.custom-actions{gap:12px}.custom-actions button{min-height:44px;font-size:10px}.custom-disclaimer{font-size:10px}.custom-upload small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.custom-preview *{transition:none!important}}

/* Keep product identity above the photo on narrow screens, without a repeated title below. */
.custom-mobile-product{display:none}.custom-preview{scroll-margin-block:70px 24px}
@media(max-width:700px){.custom-mobile-product{display:block;margin:0 0 20px}.custom-mobile-product>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.product-detail .custom-mobile-product h2{font-size:25px;line-height:1.16;letter-spacing:-.6px;margin:7px 0 0;overflow-wrap:anywhere}.product-detail>div:not(.personalization-view)>h2,.product-detail>div:not(.personalization-view)>.eyebrow{display:none}}
