:root{
  --uc-bg:#f4f3ef;
  --uc-surface:#fff;
  --uc-ink:#111214;
  --uc-muted:#6d6f73;
  --uc-line:rgba(17,18,20,.12);
  --uc-red:#e33a34;
  --uc-dark:#0d0f12;
  --uc-max:1280px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--uc-bg);
  color:var(--uc-ink);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.menuOpen{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{max-width:100%}

.customsContainer{
  width:min(calc(100% - 48px),var(--uc-max));
  margin-inline:auto;
}

/* HERO */
.customsHero{
  position:relative;
  overflow:hidden;
  padding:54px 0 78px;
  background:
    linear-gradient(rgba(17,18,20,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,18,20,.045) 1px,transparent 1px),
    var(--uc-bg);
  background-size:48px 48px;
}
.customsHero::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-180px;
  top:-230px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(227,58,52,.11),transparent 68%);
  pointer-events:none;
}
.customsBreadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:42px;
  color:#85878b;
  font-size:11px;
  font-weight:650;
}
.customsBreadcrumb a{transition:color .2s ease}
.customsBreadcrumb a:hover{color:var(--uc-ink)}
.customsBreadcrumb span{color:#b0b1b3}
.customsHeroGrid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);
  align-items:center;
  gap:74px;
}
.customsKicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
  color:var(--uc-red);
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.customsKicker::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
}
.customsHero h1{
  max-width:660px;
  margin:0;
  font-size:clamp(48px,5.3vw,78px);
  line-height:.94;
  letter-spacing:-.058em;
  font-weight:850;
}
.customsHero h1 em{
  display:block;
  color:var(--uc-red);
  font-style:normal;
}
.customsHeroLead{
  max-width:610px;
  margin:25px 0 0;
  color:#5f6266;
  font-size:15px;
  line-height:1.78;
}
.customsHeroActions{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:30px;
  flex-wrap:wrap;
}
.customsPrimaryBtn,
.customsSecondaryBtn{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 18px;
  border-radius:13px;
  font-size:11px;
  font-weight:850;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.customsPrimaryBtn{background:var(--uc-dark);color:#fff}
.customsPrimaryBtn:hover{transform:translateY(-2px);background:#171a1f}
.customsSecondaryBtn{border:1px solid var(--uc-line);background:rgba(255,255,255,.68)}
.customsSecondaryBtn:hover{transform:translateY(-2px);border-color:rgba(17,18,20,.25)}
.customsFacts{
  display:flex;
  align-items:flex-start;
  margin-top:38px;
  padding-top:22px;
  border-top:1px solid var(--uc-line);
}
.customsFact{
  min-width:110px;
  margin-right:22px;
  padding-right:22px;
  border-right:1px solid var(--uc-line);
}
.customsFact:last-child{border-right:0;margin-right:0;padding-right:0}
.customsFact strong{display:block;font-size:20px;line-height:1;font-weight:850;letter-spacing:-.04em}
.customsFact span{display:block;margin-top:7px;color:#85878b;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}

.customsHeroVisual{
  position:relative;
  min-height:530px;
}
.customsHeroMosaic{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:1.18fr .82fr;
  grid-template-rows:1fr 1fr;
  gap:10px;
}
.customsHeroTile{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:#d9d9d5;
  box-shadow:0 24px 70px rgba(17,18,20,.1);
}
.customsHeroTile:first-child{grid-row:1 / 3}
.customsHeroTile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.customsHeroTile:hover img{transform:scale(1.035)}
.customsHeroTile::after{
  content:"";
  position:absolute;
  inset:45% 0 0;
  background:linear-gradient(transparent,rgba(8,10,12,.78));
  pointer-events:none;
}
.customsHeroTileText{
  position:absolute;
  z-index:2;
  left:18px;
  right:18px;
  bottom:17px;
  color:#fff;
}
.customsHeroTileText small{display:block;margin-bottom:5px;color:rgba(255,255,255,.65);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.customsHeroTileText strong{display:block;font-size:14px;line-height:1.2;letter-spacing:-.02em}
.customsHeroStamp{
  position:absolute;
  z-index:3;
  right:-18px;
  bottom:-18px;
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  border:1px solid rgba(17,18,20,.14);
  border-radius:50%;
  background:rgba(244,243,239,.9);
  backdrop-filter:blur(10px);
  color:#707277;
  font-size:8px;
  font-weight:850;
  line-height:1.35;
  text-align:center;
  letter-spacing:.12em;
  text-transform:uppercase;
  transform:rotate(8deg);
}

/* GALLERY */
.customsGallerySection{padding:94px 0 112px}
.customsSectionHead{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:40px;
  margin-bottom:34px;
}
.customsSectionKicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:13px;
  color:var(--uc-red);
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.customsSectionKicker::before{content:"";width:22px;height:1px;background:currentColor}
.customsSectionHead h2{
  max-width:800px;
  margin:0;
  font-size:clamp(38px,4.5vw,64px);
  line-height:.97;
  letter-spacing:-.052em;
  font-weight:850;
}
.customsSectionLead{max-width:660px;margin:16px 0 0;color:#6d6f73;font-size:13px;line-height:1.7}
.customsResultSummary{color:#797b80;font-size:11px;font-weight:700;white-space:nowrap}
.customsResultSummary strong{color:var(--uc-ink)}

.customsToolbar{
  display:grid;
  grid-template-columns:minmax(260px,420px) minmax(0,1fr);
  align-items:center;
  gap:18px;
  margin-bottom:28px;
  padding:14px;
  border:1px solid var(--uc-line);
  border-radius:18px;
  background:rgba(255,255,255,.62);
  backdrop-filter:blur(12px);
}
.customsSearchWrap{position:relative}
.customsSearchIcon{
  position:absolute;
  left:15px;
  top:50%;
  width:17px;
  height:17px;
  transform:translateY(-50%);
  color:#8b8d91;
  pointer-events:none;
}
.customsSearch{
  width:100%;
  height:46px;
  padding:0 16px 0 43px;
  border:1px solid rgba(17,18,20,.12);
  border-radius:12px;
  outline:0;
  background:#fff;
  color:var(--uc-ink);
  font-size:12px;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.customsSearch:focus{border-color:rgba(17,18,20,.32);box-shadow:0 0 0 3px rgba(17,18,20,.04)}
.customsFilters{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.customFilterBtn{
  min-height:38px;
  padding:0 13px;
  border:1px solid rgba(17,18,20,.11);
  border-radius:999px;
  background:#fff;
  color:#606267;
  cursor:pointer;
  font-size:10px;
  font-weight:800;
  transition:all .2s ease;
}
.customFilterBtn:hover{border-color:rgba(17,18,20,.25);color:var(--uc-ink)}
.customFilterBtn.isActive{background:var(--uc-dark);border-color:var(--uc-dark);color:#fff}

.customsGrid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:14px;
}
.customCard{
  grid-column:span 4;
  min-width:0;
}
.customCard:nth-child(9n+1){grid-column:span 8}
.customCardMedia{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:4 / 5;
  border-radius:22px;
  background:#dededa;
  isolation:isolate;
}
.customCard:nth-child(9n+1) .customCardMedia{aspect-ratio:16 / 10}
.customCardImage{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.customCardMedia::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  background:linear-gradient(180deg,rgba(4,5,6,.08) 20%,transparent 48%,rgba(4,5,6,.86) 100%);
  pointer-events:none;
}
.customCardMedia::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:inherit;
  pointer-events:none;
}
.customCard:hover .customCardImage{transform:scale(1.035);filter:saturate(1.04)}
.customCardTop{
  position:absolute;
  z-index:2;
  top:14px;
  left:14px;
  display:flex;
  align-items:center;
  gap:7px;
}
.customCardTag{
  min-height:27px;
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:rgba(10,12,14,.52);
  backdrop-filter:blur(9px);
  color:#fff;
  font-size:8px;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.customCardIndex{
  color:rgba(255,255,255,.68);
  font-size:8px;
  font-weight:800;
  letter-spacing:.1em;
}
.customCardOverlay{
  position:absolute;
  z-index:2;
  left:18px;
  right:18px;
  bottom:17px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  color:#fff;
}
.customCardMeta{min-width:0}
.customCardTitle{
  margin:0;
  font-size:clamp(18px,1.7vw,25px);
  line-height:1.03;
  letter-spacing:-.04em;
  font-weight:850;
}
.customCardHandle{
  display:block;
  margin-top:8px;
  color:rgba(255,255,255,.68);
  font-size:10px;
  font-weight:650;
}
.customCardArrow{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(8px);
  font-size:14px;
  transition:background .2s ease,transform .2s ease;
}
.customCard:hover .customCardArrow{background:#fff;color:#111214;transform:translate(2px,-2px)}
.customEmpty{
  grid-column:1/-1;
  padding:54px 24px;
  border:1px dashed rgba(17,18,20,.18);
  border-radius:20px;
  text-align:center;
  color:#77797d;
  font-size:13px;
}
.customImageMissing{opacity:.12}

/* CTA */
.customsCta{padding:0 0 110px}
.customsCtaPanel{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:40px;
  padding:46px 50px;
  border-radius:26px;
  background:var(--uc-dark);
  color:#fff;
}
.customsCtaPanel::after{
  content:"CUSTOM";
  position:absolute;
  right:-10px;
  top:-32px;
  color:rgba(255,255,255,.035);
  font-size:120px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.08em;
}
.customsCtaText{position:relative;z-index:1}
.customsCtaLabel{display:block;margin-bottom:9px;color:#ef6b66;font-size:9px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.customsCta h3{max-width:780px;margin:0;font-size:clamp(28px,3.5vw,46px);line-height:1;letter-spacing:-.045em}
.customsCta p{max-width:680px;margin:12px 0 0;color:#9da1a8;font-size:12px;line-height:1.7}
.customsCtaButton{position:relative;z-index:1;min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border-radius:12px;background:#fff;color:#111214;font-size:11px;font-weight:850;white-space:nowrap;transition:transform .2s ease}
.customsCtaButton:hover{transform:translateY(-2px)}

/* FOOTER */
.homeFooter{
  position:relative;overflow:hidden;padding:72px 0 24px;background:#0b0d10;color:#fff;border-top:1px solid rgba(255,255,255,.07)
}
.homeFooter::before{content:"";position:absolute;width:520px;height:520px;left:-220px;top:-330px;border-radius:50%;background:radial-gradient(circle,rgba(227,58,52,.11),transparent 68%);pointer-events:none}
.footerTop{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:start;gap:72px;padding-bottom:58px}
.footerIdentity{max-width:570px}
.footerBrand{width:max-content;display:inline-flex;align-items:center;gap:7px;color:#fff;white-space:nowrap}
.footerBrandMark{width:44px;height:28px;display:grid;place-items:center;flex:0 0 44px}
.footerBrandMark img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}
.footerBrandName{display:block;font-size:24px;line-height:1;font-weight:850;letter-spacing:-.045em}
.footerStatement{max-width:500px;margin:24px 0 0;color:#a5a9af;font-size:14px;line-height:1.75}
.footerScale{display:inline-flex;align-items:center;margin-top:24px;color:#62676f;font-size:9px;line-height:1;font-weight:800;letter-spacing:.16em}
.footerScale::before{content:"";width:22px;height:1px;margin-right:10px;background:var(--uc-red)}
.footerNav{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:56px}
.footerNavGroup{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.footerNavTitle{margin-bottom:5px;color:#62676f;font-size:9px;line-height:1;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.footerNavGroup>a{display:inline-flex;align-items:center;gap:8px;color:#c7c9cd;font-size:12px;line-height:1.35;font-weight:650;transition:color .2s ease,transform .2s ease}
.footerNavGroup>a:hover{color:#fff;transform:translateX(2px)}
.footerNavGroup>a>span:last-child{color:#666b72;font-size:10px}
.footerWhatsApp .footerWaIcon{width:15px;height:15px;flex:0 0 auto;fill:currentColor;transition:color .2s ease,transform .2s ease}
.footerWhatsApp:hover .footerWaIcon{color:#25d366;transform:scale(1.04)}
.footerInstagram svg{width:15px;height:15px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:color .2s ease,transform .2s ease}
.footerInstagram:hover svg{color:#ee3631;transform:scale(1.04)}
.footerContactNote{color:#62676f;font-size:9px;line-height:1.5}
.footerBottom{position:relative;z-index:1;min-height:52px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-top:22px;border-top:1px solid rgba(255,255,255,.075);color:#62676f;font-size:9px;line-height:1.5}
.footerDeveloper{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:13px}
.footerDeveloper a{position:relative;color:#c3c7cd;font-weight:780;transition:color .2s ease}
.footerDeveloper a::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:var(--uc-red);transform:scaleX(0);transform-origin:right;transition:transform .25s ease}
.footerDeveloper a:hover{color:#fff}.footerDeveloper a:hover::after{transform:scaleX(1);transform-origin:left}

@media(max-width:1080px){
  .customsHeroGrid{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:42px}
  .customsHeroVisual{min-height:470px}
  .customCard{grid-column:span 6}
  .customCard:nth-child(9n+1){grid-column:1/-1}
  .customCard:nth-child(9n+1) .customCardMedia{aspect-ratio:16/8.5}
}

@media(max-width:820px){
  .customsContainer{width:min(calc(100% - 32px),var(--uc-max))}
  .customsHero{padding:40px 0 62px}
  .customsBreadcrumb{margin-bottom:30px}
  .customsHeroGrid{grid-template-columns:1fr;gap:42px}
  .customsHero h1{max-width:720px}
  .customsHeroVisual{min-height:500px}
  .customsSectionHead{grid-template-columns:1fr;gap:14px}
  .customsToolbar{grid-template-columns:1fr}
  .customsFilters{justify-content:flex-start}
  .customsGallerySection{padding:76px 0 88px}
  .customsCtaPanel{grid-template-columns:1fr;padding:38px 32px}
  .customsCtaButton{width:max-content}
  .footerTop{grid-template-columns:1fr;gap:44px;padding-bottom:46px}
  .footerNav{max-width:470px}
}

@media(max-width:560px){
  .customsContainer{width:calc(100% - 24px)}
  .customsHero{padding:28px 0 48px;background-size:36px 36px}
  .customsBreadcrumb{margin-bottom:24px;font-size:10px}
  .customsKicker{font-size:9px}
  .customsHero h1{font-size:47px}
  .customsHeroLead{font-size:13px;line-height:1.7}
  .customsHeroActions{margin-top:24px}
  .customsPrimaryBtn,.customsSecondaryBtn{min-height:47px;padding-inline:15px}
  .customsFacts{margin-top:28px}
  .customsFact{min-width:0;flex:1;margin-right:12px;padding-right:12px}
  .customsFact strong{font-size:17px}.customsFact span{font-size:7px}
  .customsHeroVisual{min-height:430px}
  .customsHeroMosaic{grid-template-columns:1.15fr .85fr;gap:7px}
  .customsHeroTile{border-radius:17px}
  .customsHeroTileText{left:12px;right:12px;bottom:12px}
  .customsHeroTileText strong{font-size:11px}
  .customsHeroStamp{display:none}
  .customsGallerySection{padding:62px 0 72px}
  .customsSectionHead h2{font-size:40px}
  .customsToolbar{padding:10px;border-radius:15px}
  .customsFilters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
  .customsFilters::-webkit-scrollbar{display:none}
  .customFilterBtn{flex:0 0 auto}
  .customsGrid{gap:10px}
  .customCard,.customCard:nth-child(9n+1){grid-column:1/-1}
  .customCardMedia,.customCard:nth-child(9n+1) .customCardMedia{aspect-ratio:4/4.7;border-radius:18px}
  .customCardOverlay{left:15px;right:15px;bottom:14px}
  .customCardTitle{font-size:22px}
  .customsCta{padding-bottom:72px}
  .customsCtaPanel{padding:31px 24px;border-radius:20px}
  .customsCtaPanel::after{font-size:74px;top:-14px}
  .homeFooter{padding:56px 0 20px}
  .footerNav{grid-template-columns:1fr 1fr;gap:28px}
  .footerBottom{align-items:flex-start;flex-direction:column;gap:11px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
