/* Public catalog only: navy navigation, integrated hero and light product board. */
.catalog-body .public-header{display:flex;justify-content:space-between;gap:24px;min-height:92px;margin:14px auto 0;padding:10px 26px;background:linear-gradient(120deg,rgba(4,34,76,.97),rgba(16,42,85,.96));border:1px solid rgba(104,158,225,.5);border-radius:22px;box-shadow:0 10px 35px rgba(0,17,45,.24)}
.catalog-body .public-header .public-brand{display:flex;align-items:center;gap:12px;min-width:0;max-width:560px}
.catalog-body .public-header .company-logo{width:74px;height:74px;flex-shrink:0}
.catalog-body .public-header .public-brand-title{width:360px;max-width:100%;display:flex;flex-direction:column;align-items:center}
.catalog-body .public-brand-title img{width:100%;height:62px;object-fit:contain}
.catalog-body .public-brand-title small{color:#ffd26d;text-transform:uppercase;letter-spacing:.35em;font-size:9px;margin-top:-7px}
.catalog-body .public-header nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:0}
.catalog-body .public-header nav a{color:#fff;font-size:12px;font-weight:600;text-shadow:none;white-space:nowrap}
.catalog-body .public-header nav a:hover{color:#ffd26d}
.catalog-body .header-search{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff40;border-radius:50%}
.catalog-body .public-main{padding-top:14px}
.catalog-body .catalog-hero{position:relative;min-height:350px;margin:0 24px;padding:30px 28px;border:1px solid rgba(255,255,255,.25);border-radius:20px;background:linear-gradient(100deg,rgba(8,24,54,.9),rgba(8,24,54,.55) 45%,rgba(8,24,54,.12));overflow:hidden;box-shadow:none}
.catalog-body .hero-copy{max-width:640px;padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;border-radius:0}
.catalog-body .hero-copy .eyebrow{color:#ffd26d;font-size:10px;letter-spacing:.2em}
.catalog-body .catalog-hero h1{font-size:clamp(34px,3.3vw,52px);line-height:1.08;letter-spacing:-.045em;color:#fff;margin:12px 0 14px}
.catalog-body .catalog-hero h1 em{font-style:normal;color:#ffd26d}
.catalog-body .hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#f1f3f8;max-width:475px;padding:0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}
.catalog-body .hero-actions .btn-primary{background:linear-gradient(#ef263f,#bd001c);border:1px solid #ff7a85;box-shadow:0 5px 18px #a8002c40;padding:12px 24px}
.catalog-body .hero-actions .btn-outline-light{border-color:#ffffff90;color:#fff;padding:12px 24px;background:#ffffff08}
.hero-highlights{display:flex;gap:20px;margin-top:25px;color:white}
.hero-highlights span{border-left:2px solid #ffd26d;padding-left:12px}.hero-highlights b{display:block;font-size:12px}.hero-highlights small{display:block;font-size:10px;color:#d4dfef;margin-top:4px}
.catalog-body .catalog-hero .hero-art.brand-mascot{display:block;right:70px;bottom:0;width:220px;height:330px;z-index:0}
.catalog-body .catalog-board{position:relative;background:rgba(255,255,255,.98);border:1px solid #e5eaf3;border-radius:24px;margin-top:14px;padding:30px;box-shadow:0 14px 45px #101d3330}
.catalog-body .catalog-board .catalog-section{margin-top:28px;scroll-margin-top:20px}.catalog-body .catalog-board .catalog-section:first-child{margin-top:0}
.catalog-body .catalog-board .section-heading,.catalog-body .catalog-board .section-heading h2{color:#082b61}
.catalog-body .catalog-board .section-heading h2{font-size:24px}.catalog-body .catalog-board .eyebrow{color:#bf1027}.catalog-body .catalog-board .section-heading .muted{color:#596b83}
.catalog-body .catalog-board .category-tabs{padding:0 0 10px;border-radius:0;gap:10px;scroll-margin-top:24px}
.catalog-body .category-tabs a{border-radius:24px;padding:10px 20px;background:#f5f7fb;color:#274c7d}.catalog-body .category-tabs a.active{background:#074886;color:white;box-shadow:0 2px 6px #0d62a940}
.catalog-body .catalog-board .catalog-filters{background:#f6f8fc;padding:14px;border:1px solid #e5eaf3;border-radius:14px}
.catalog-body .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.catalog-body .product-card{border-radius:12px;box-shadow:0 3px 14px #16295109}.catalog-body .product-picture{height:190px}.catalog-body .product-card-body{padding:16px}.catalog-body .product-card h3{font-size:15px}.catalog-body .product-price{color:#c40b22;font-size:20px}.catalog-body .product-card p{color:#556580;font-size:12px}.catalog-body .product-link{display:flex;align-items:center;justify-content:space-between;border:0;border-radius:7px;padding:10px 12px;background:#0a3974;color:white;font-size:12px}.catalog-body .product-link:hover{background:#082b61;color:#ffd26d}
.catalog-body .public-footer{margin-top:30px;background:#ffffffeb}
@media(min-width:1500px){.catalog-body .product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1199px){.catalog-body .public-header{gap:14px;padding:10px 18px}.catalog-body .public-header .public-brand-title{width:300px}.catalog-body .public-header nav{gap:16px}.catalog-body .hero-copy{max-width:58%}.catalog-body .catalog-hero .hero-art.brand-mascot{right:30px}.catalog-body .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.catalog-body .public-header{flex-direction:column;gap:6px;margin:8px 12px 0;width:calc(100% - 24px);padding:8px 12px;border-radius:16px}.catalog-body .public-header .public-brand{width:100%;justify-content:center;gap:8px}.catalog-body .public-header .company-logo{width:60px;height:60px}.catalog-body .public-header .public-brand-title{width:255px;min-width:0}.catalog-body .public-brand-title img{height:50px}.catalog-body .public-brand-title small{font-size:7px;letter-spacing:.22em}.catalog-body .public-header nav{justify-content:center;gap:17px;width:100%;padding:8px 0 4px}.catalog-body .public-header nav a{font-size:11px}.catalog-body .header-search{width:30px;height:30px}.catalog-body .catalog-hero{margin:0;padding:24px 20px;min-height:380px}.catalog-body .hero-copy{max-width:100%;position:relative;z-index:1}.catalog-body .catalog-hero h1{font-size:32px}.catalog-body .hero-copy>p:not(.eyebrow){max-width:260px}.catalog-body .catalog-hero .hero-art.brand-mascot{width:100px;height:150px;right:10px;bottom:14px;opacity:1}.hero-highlights{flex-direction:column;gap:10px;max-width:calc(100% - 100px);margin-top:20px}.hero-actions{gap:10px}.catalog-body .hero-actions .btn{font-size:12px;padding:10px 14px;margin:0}.catalog-body .catalog-board{padding:18px 12px;border-radius:18px}.catalog-body .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-body .product-picture{height:155px}.catalog-body .product-card-body{padding:12px}.catalog-body .product-card h3{font-size:14px}.catalog-body .product-card p{font-size:11px}.catalog-body .product-price{font-size:18px}.catalog-body .product-link{font-size:11px}.catalog-body .section-heading{gap:10px}.catalog-body .catalog-board .section-heading h2{font-size:21px}.catalog-body .category-tabs a{padding:8px 15px}.catalog-body .catalog-filters{gap:10px}}
@media(max-width:359px){.catalog-body .product-grid{grid-template-columns:1fr}.catalog-body .public-header nav{gap:10px}}
.catalog-body .public-header .public-brand{flex-direction:row}
.catalog-body .public-header .public-brand-title img{height:54px;object-fit:cover;object-position:center}
.catalog-body .public-header .public-brand-title small{margin:0;line-height:1.3}
@media(max-width:767px){.catalog-body .public-header .public-brand-title img{height:43px}.catalog-body .public-header .public-brand-title small{font-size:7px}}
.catalog-body .public-header .public-brand-title small{display:none}
/* Align navigation, celebration hero and catalog panel to the same edges. */
.catalog-body .public-header{padding-inline:26px;width:calc(100% - 24px)}
.catalog-body .catalog-hero{margin-inline:0}
@media(min-width:576px){.catalog-body .public-header{width:516px}}
@media(min-width:768px){.catalog-body .public-header{width:696px}}
@media(min-width:992px){.catalog-body .public-header{width:936px}}
@media(min-width:1200px){.catalog-body .public-header{width:1116px}}
@media(min-width:1400px){.catalog-body .public-header{width:1296px}}
@media(max-width:767px){.catalog-body .public-header{padding-inline:12px}}
@media(min-width:576px){.catalog-body .public-header{margin-inline:auto}}
/* Centered supplied title, navigation icons and reference-inspired scenery. */
.catalog-body::before{background-image:url('/assets/brand/catalog-reference-background.png')}
.catalog-body .public-header{display:grid;grid-template-columns:85px minmax(0,1fr) 85px;gap:6px 18px;padding-top:10px;padding-bottom:10px}
.catalog-body .public-logo-link{grid-column:1;grid-row:1;justify-self:start}
.catalog-body .public-header .public-brand-title{grid-column:2;grid-row:1;justify-self:center;width:min(100%,620px);display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.catalog-body .public-header .public-brand-title img{width:100%;height:58px;object-fit:contain}
.catalog-body .public-header .public-brand-title small{display:block;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:9px;letter-spacing:.42em;line-height:1.5;text-transform:uppercase;color:#ffd363;text-align:center;margin:0}
.catalog-body .public-header nav{grid-column:1/-1;grid-row:2;justify-self:center;justify-content:center;gap:26px}
.catalog-body .public-header nav a{display:inline-flex;align-items:center;gap:8px;padding:7px 0}
.catalog-body .public-header nav a:first-child svg{color:#ffd363}
.catalog-body .public-header .header-search{padding:0;justify-content:center}
.catalog-body .catalog-hero{background:linear-gradient(100deg,rgba(5,19,44,.91),rgba(5,19,44,.6) 45%,rgba(5,19,44,.08))}
@media(max-width:767px){.catalog-body .public-header{grid-template-columns:48px minmax(0,1fr) 48px;gap:8px 6px}.catalog-body .public-header .company-logo{width:48px;height:48px}.catalog-body .public-header .public-brand-title{width:100%}.catalog-body .public-header .public-brand-title img{height:36px}.catalog-body .public-header .public-brand-title small{font-size:6px;letter-spacing:.25em}.catalog-body .public-header nav{gap:12px;flex-wrap:wrap;width:100%}.catalog-body .public-header nav a{gap:4px;font-size:10px}.catalog-body .public-header nav svg{width:15px;height:15px}}
.catalog-body .public-header .public-brand-title{aspect-ratio:auto;overflow:visible}
.catalog-body .public-header .public-brand-title img{position:static;transform:none;object-fit:cover;height:92px;flex-shrink:0}
@media(max-width:767px){.catalog-body .public-header .public-brand-title img{height:36px}}
/* Soft reference scenery, with a larger left logo and a centered wordmark. */
.catalog-body::before{inset:-8px;filter:blur(4px);background-size:cover}
.catalog-body .public-header{grid-template-columns:150px minmax(0,1fr) 150px}
.catalog-body .public-header .company-logo{width:148px;height:148px;object-fit:contain}
@media(max-width:767px){.catalog-body::before{filter:blur(3px)}.catalog-body .public-header{grid-template-columns:96px minmax(0,1fr) 96px}.catalog-body .public-header .company-logo{width:96px;height:96px}.catalog-body .public-header .public-brand-title img{height:auto;max-height:70px;object-fit:contain}.catalog-body .public-header .public-brand-title small{font-size:6px;letter-spacing:.14em}}
@media(max-width:767px){.catalog-body .public-header .public-brand-title{grid-column:1/-1;grid-row:2;width:min(100%,340px)}.catalog-body .public-header .public-brand-title img{height:50px;object-fit:cover}.catalog-body .public-header nav{grid-row:3}.catalog-body .public-header .public-brand-title small{font-size:7px;letter-spacing:.25em}}
/* Four navigation entries, a larger aligned logo and a stacked mobile brand. */
.catalog-body .public-header{grid-template-columns:196px minmax(0,1fr) 196px}
.catalog-body .public-logo-link{justify-self:center;align-self:center;display:grid;place-items:center}
.catalog-body .public-header .company-logo{width:192.4px;height:192.4px}
@media(max-width:767px){.catalog-body .public-header{grid-template-columns:minmax(0,1fr);gap:6px}.catalog-body .public-logo-link{grid-column:1;grid-row:1;justify-self:center}.catalog-body .public-header .company-logo{width:124.8px;height:124.8px}.catalog-body .public-header .public-brand-title{grid-column:1;grid-row:2;justify-self:center}.catalog-body .public-header nav{grid-column:1;grid-row:3;gap:18px}.catalog-body .public-header nav a{font-size:11px}}
/* Catalog motion: consistent easing, native scrolling and lightweight layers. */
html.catalog-page{scroll-behavior:smooth;scroll-padding-top:24px}
.catalog-body{--catalog-ease:cubic-bezier(.22,1,.36,1)}
.catalog-body::before{transform:translateZ(0);will-change:transform;backface-visibility:hidden}
.catalog-body .product-card{transform:translate3d(0,0,0);transition:transform .5s var(--catalog-ease),box-shadow .5s var(--catalog-ease),border-color .4s ease}
.catalog-body .product-picture img{transition:transform .65s var(--catalog-ease);transform:translate3d(0,0,0)}
.catalog-body .btn,.catalog-body .product-link,.catalog-body .category-tabs a,.catalog-body .public-header nav a{transition:transform .4s var(--catalog-ease),background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .4s ease}
.catalog-body .catalog-social .social-button{transition:transform .45s var(--catalog-ease),box-shadow .4s ease;transform:translate3d(0,0,0)}
.catalog-body .catalog-social .social-button::before,.catalog-body .catalog-social .social-button::after{will-change:transform,opacity;animation-timing-function:cubic-bezier(.2,.55,.35,1)}
@keyframes social-video-wave{0%{transform:scale(1);opacity:0}14%{opacity:.75}100%{transform:scale(1.9);opacity:0}}
@media(hover:hover){.catalog-body .product-card:hover{transform:translate3d(0,-5px,0)}.catalog-body .product-card:hover .product-picture img{transform:translate3d(0,0,0) scale(1.035)}.catalog-body .btn:hover,.catalog-body .product-link:hover{transform:translate3d(0,-2px,0)}.catalog-body .catalog-social .social-button:hover{transform:translate3d(0,-3px,0) scale(1.07)}}
.catalog-body .btn:active,.catalog-body .product-link:active,.catalog-body .catalog-social .social-button:active{transform:translate3d(0,0,0) scale(.97);transition-duration:.18s}
@media(prefers-reduced-motion:reduce){html.catalog-page{scroll-behavior:auto}.catalog-body .product-card,.catalog-body .product-picture img,.catalog-body .btn,.catalog-body .product-link,.catalog-body .category-tabs a,.catalog-body .catalog-social .social-button{transition:none}.catalog-body .product-card:hover .product-picture img{transform:none}}
/* A smaller lift with a gradual, symmetrical hover transition. */
.catalog-body .product-card{transition:transform .85s cubic-bezier(.42,0,.2,1),box-shadow .85s cubic-bezier(.42,0,.2,1),border-color .75s ease;transform:translate3d(0,0,0)}
.catalog-body .product-picture img{transition:transform .9s cubic-bezier(.42,0,.2,1)}
@media(hover:hover){.catalog-body .product-card:hover{transform:translate3d(0,-3px,0)}.catalog-body .product-card:hover .product-picture img{transform:translate3d(0,0,0) scale(1.02)}}
@media(prefers-reduced-motion:reduce){.catalog-body .product-card,.catalog-body .product-picture img{transition:none}.catalog-body .product-card:hover{transform:none}}
/* Focus does not latch the tricolor highlight after a product click. */
.catalog-body .product-card:not(:hover){box-shadow:0 3px 14px #16295109;border-color:#e2e8f1;transition:transform .85s cubic-bezier(.42,0,.2,1),box-shadow 0s,border-color 0s}
.catalog-body .product-card:not(:hover) .product-card-body{background:none}
@media(hover:none){.catalog-body .product-card:hover{box-shadow:0 3px 14px #16295109;border-color:#e2e8f1}.catalog-body .product-card:hover .product-card-body{background:none}}
/* Two transparent layers: the shoulder moves behind a stationary body. */
.catalog-body .catalog-hero .hero-art.brand-mascot{z-index:2;overflow:visible}
.mascot-greeting{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer;touch-action:manipulation}
.catalog-body .mascot-greeting img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;margin:0}
.mascot-wave-arm,.mascot-wave-body{visibility:hidden}.mascot-wave-arm{z-index:0;transform-origin:73% 37%;will-change:transform}.mascot-wave-body{z-index:1}
.mascot-greeting.layers-ready .mascot-original{visibility:hidden}.mascot-greeting.layers-ready .mascot-wave-arm,.mascot-greeting.layers-ready .mascot-wave-body{visibility:visible}
.mascot-greeting:focus-visible{outline:2px solid #ffd363;outline-offset:5px;border-radius:16px}
/* Scenic header artwork beneath the real logo, wordmark and navigation. */
.catalog-body .public-header{background-color:#042247;background-image:linear-gradient(90deg,rgba(4,30,65,.15) 58%,rgba(4,30,65,0)),url('/assets/brand/header-maracaibo.png');background-size:100% 100%,auto 100%;background-position:center,right center;background-repeat:no-repeat}
.catalog-body .public-header nav a{text-shadow:0 1px 4px #00132a}
@media(max-width:767px){.catalog-body .public-header{background-image:linear-gradient(180deg,rgba(4,30,65,.55),rgba(4,30,65,.72)),url('/assets/brand/header-maracaibo.png');background-position:center,right center;background-size:100% 100%,auto 100%}}
@media(min-width:768px){.catalog-body .public-header{background-image:linear-gradient(90deg,#042247 0%,#042247 46%,rgba(4,34,71,.7) 61%,rgba(4,34,71,0) 78%),url("/assets/brand/header-maracaibo.png")}}
/* Gold strokes framing the subtitle, matching the supplied banner. */
.catalog-body .public-header .public-brand-title small{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;white-space:nowrap}
.catalog-body .public-header .public-brand-title small::before,.catalog-body .public-header .public-brand-title small::after{content:'';display:block;flex:1;max-width:90px;height:2px;background:linear-gradient(90deg,transparent,#e9ab30 40%,#fff1ae 50%,#e9ab30 60%,transparent);box-shadow:0 0 6px rgba(255,202,84,.3)}
@media(max-width:767px){.catalog-body .public-header .public-brand-title small{gap:8px}.catalog-body .public-header .public-brand-title small::before,.catalog-body .public-header .public-brand-title small::after{max-width:48px;height:1px}}
/* Desktop-only handwritten signature and a metallic golden celebration. */
.catalog-body .catalog-hero h1 em{color:#ffd369;background:linear-gradient(175deg,#fff2ba 5%,#ffdf7c 35%,#efb631 70%,#ffe3a0 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 3px 15px rgba(214,148,27,.14)}
.hero-signature{display:none}
@media(min-width:1200px){.catalog-body .hero-signature{display:block;position:absolute;right:310px;top:48%;width:245px;margin:0;z-index:1;transform:rotate(-8deg);font-family:'Segoe Script','Brush Script MT',cursive;font-weight:400;font-size:30px;line-height:1.45;text-align:center;color:#fff8e7;text-shadow:0 2px 8px rgba(0,14,39,.65);pointer-events:none}.hero-signature span{display:block}.hero-signature::after{content:'';display:block;width:155px;height:3px;margin:8px auto 0;border-radius:50%;background:linear-gradient(90deg,transparent,#ffce62 15%,#ffedb7 55%,#d8a331 90%,transparent);transform:rotate(-4deg)}}
@media(min-width:1200px){.catalog-body .catalog-hero .hero-signature{font-size:32px;line-height:1.4;color:#fff8e7}}
@media(min-width:1200px){.catalog-body .catalog-hero .hero-signature{right:350px;top:30%;width:240px;transform:none;line-height:0}.catalog-body .hero-signature img{display:block;width:100%;height:auto;max-height:230px;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,10,30,.3))}.catalog-body .hero-signature::after{display:none}}
.quote-cart-count{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 4px;background:#e5223e;border-radius:50%;color:#fff;font-size:11px}
.catalog-body .catalog-cart-link{border:1px solid #ffffff40;border-radius:9px;padding:8px 12px!important;background:#ffffff0c}
.quote-add-form{margin-top:12px}.quote-add-button{width:100%;font-size:12px}.quote-detail-add{margin-top:22px}.quote-detail-add .quote-add-button{width:auto}
.quote-public-panel{background:rgba(255,255,255,.98);border:1px solid #e0e7ef;border-radius:20px;padding:28px;margin-top:12px;color:#172c49}
.quote-public-panel h1{font-size:30px}.quote-quantity{display:flex;gap:8px;align-items:center}.quote-quantity input{width:90px;flex-shrink:0}.quote-total{margin-top:24px;font-size:20px}.quote-customer-form{border-top:1px solid #e0e7ef;padding-top:24px;margin-top:24px}
.quote-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.quote-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#082c5b;color:white;border:1px solid #7296bf;border-radius:12px;padding:12px 20px;z-index:1040;box-shadow:0 4px 20px #0003;max-width:calc(100% - 150px);text-align:center;font-size:13px}
.catalog-body .product-card .quote-add-button{padding:10px 6px}
@media(max-width:767px){.quote-public-panel{padding:20px 14px}.quote-public-panel .page-heading{flex-direction:column}.quote-public-panel h1{font-size:25px}.quote-quantity{flex-wrap:wrap}.quote-detail-add .quote-add-button{width:100%}.catalog-body .public-header nav{gap:10px}.catalog-body .public-header .catalog-cart-link{padding:6px 10px!important}.quote-toast{left:12px;transform:none;max-width:calc(100% - 100px)}}
.catalog-body .quote-add-button{white-space:normal;line-height:1.35;min-height:42px}.quote-cart-count{font-variant-numeric:tabular-nums}
@media(max-width:767px){.quote-public-panel .table thead{display:none}.quote-public-panel .table,.quote-public-panel .table tbody{display:block}.quote-public-panel .table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;border-bottom:1px solid #e0e7ef;padding:12px 0}.quote-public-panel .table td{display:block;border:0;padding:8px 0}.quote-public-panel .table td:first-child{grid-column:1/-1;grid-row:1;padding-right:80px}.quote-public-panel .table td:nth-child(2){grid-column:1/-1;grid-row:2}.quote-public-panel .table td:last-child{grid-column:2;grid-row:1}.quote-public-panel .quote-quantity{flex-wrap:nowrap}.quote-public-panel .quote-quantity::before{content:'Cantidad';font-size:12px;font-weight:600}.quote-public-panel .table-responsive{overflow:visible}}
