/* Only this catalogue; approved DAYAN header and footer use shell.css. */
[hidden]{display:none!important}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #0a68e8;outline-offset:4px}
.catalog-intro{padding:30px 0 34px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) 234px;gap:48px;align-items:end}
.catalog-intro h1{font-size:clamp(30px,3.15vw,48px);line-height:1.12;letter-spacing:-.03em;max-width:1000px;margin:0 0 19px}
.catalog-intro .lead{max-width:860px;font-size:17px;line-height:1.65;margin:0}
.catalog-intro .eyebrow{margin-bottom:16px}
.catalog-intro-aside{border-left:2px solid #dce7f4;padding-left:24px;display:grid;gap:18px;padding-bottom:6px}
.catalog-intro-aside b{display:block;color:var(--navy);font-size:30px;font-weight:800;line-height:1.2}
.catalog-intro-aside span{display:block;font-size:13px;color:var(--muted);margin-top:4px}
.catalog-section{padding:32px 0 10px}
.catalog-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.catalog-topline h2{font-size:30px;letter-spacing:-.02em;margin:0 0 5px;color:var(--navy)}
.catalog-topline p{font-size:14px;color:var(--muted);margin:0}
.catalog-search{display:flex;align-items:center;position:relative;width:330px;max-width:100%;flex-shrink:0}
.catalog-search input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit;font-size:14px;color:var(--navy);padding:14px 45px 14px 16px;min-height:48px}
.catalog-search .search-icon{position:absolute;right:16px;width:19px;height:19px;pointer-events:none;color:var(--muted)}
.catalog-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;align-items:center}
.catalog-filter{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;color:#506684;border-radius:9px;padding:10px 13px;text-decoration:none;font-size:13px;line-height:1.25;font-weight:700;min-height:42px;transition:background .16s}
.catalog-filter b{font-size:11px;font-weight:700;color:#7085a0}
.catalog-filter:hover{border-color:#b4cbed;background:#f0f6ff;color:var(--blue)}
.catalog-filter.active{background:var(--blue);border-color:var(--blue);color:#fff}
.catalog-filter.active b{color:rgba(255,255,255,.84)}
.catalog-results{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px;color:var(--muted);margin:18px 0}
.catalog-clear{border:0;background:transparent;padding:6px 0;cursor:pointer;color:var(--blue);font:inherit;font-weight:700}
.catalog-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.catalog-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 8px 20px rgba(27,53,89,.035);transition:transform .18s,box-shadow .18s,border-color .18s}
.catalog-card:hover{transform:translateY(-3px);border-color:#c9d9eb;box-shadow:0 14px 30px rgba(27,53,89,.08)}
.catalog-card-media{position:relative;display:block;aspect-ratio:1.42;background:#eef3f8;overflow:hidden;border-bottom:1px solid #e7eef6;text-decoration:none}
.catalog-card-media img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
.catalog-media-label{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.96);border:1px solid rgba(219,230,244,.8);border-radius:7px;padding:6px 10px;font-size:11px;font-weight:800;line-height:1.3;color:var(--navy);box-shadow:0 3px 12px rgba(0,0,0,.06)}
.catalog-card-body{padding:16px;display:flex;flex-direction:column;flex:1;min-width:0}
.catalog-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.catalog-tag{font-size:10px;line-height:1.3;letter-spacing:.02em;color:#46719e;background:#f1f6fc;text-decoration:none;padding:4px 7px;border-radius:5px}
.catalog-tag:hover{background:#e7f0fe;color:var(--blue)}
.catalog-card h3{font-size:19px;line-height:1.28;letter-spacing:-.015em;margin:0 0 10px;color:var(--navy);max-width:none}
.catalog-card h3 a{text-decoration:none}
.catalog-card h3 a:hover{color:var(--blue)}
.catalog-card p{font-size:13px;line-height:1.55;margin:0 0 14px;color:var(--muted)}
.catalog-facts{display:flex;flex-wrap:wrap;gap:6px;margin:auto 0 14px}
.catalog-fact{display:flex;align-items:baseline;gap:5px;padding:6px 8px;border:1px solid #e8eef6;border-radius:7px;font-size:10px;color:var(--muted)}
.catalog-fact b{color:var(--navy);font-size:12px}
.catalog-open{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--blue);font-weight:800;font-size:13px;padding-top:13px;border-top:1px solid #eaf0f6}
.catalog-open span:last-child{font-size:20px;line-height:1}
.catalog-empty{border:1px dashed #c9d8eb;background:#fff;border-radius:14px;padding:35px;text-align:center;color:var(--muted)}
.catalog-empty h3{color:var(--navy);font-size:22px;margin:0 0 8px}
.catalog-empty p{margin:0 0 18px}
.catalog-archive{margin-top:36px;border-top:1px solid var(--line);padding-top:29px}
.catalog-archive h2{font-size:26px;line-height:1.25;margin:0 0 9px;color:var(--navy);letter-spacing:-.02em}
.catalog-archive-intro{max-width:810px;margin:0 0 22px;color:var(--muted);font-size:14px;line-height:1.6}
.catalog-archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.catalog-archive-card{border:1px solid var(--line);border-radius:12px;padding:20px 21px;background:#fff;display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;align-items:start;min-width:0}
.catalog-archive-card .catalog-tags{margin-bottom:8px}
.catalog-archive-number{font-size:12px;font-weight:800;letter-spacing:.03em;color:#85a0bf;padding-top:4px}
.catalog-archive-card h3{margin:0 0 8px;font-size:17px;color:var(--navy);line-height:1.35}
.catalog-archive-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:0}
.catalog-archive-caption{font-size:11px;color:#899bb1;margin-top:13px;display:block}
.catalog-contact{margin:36px 0 6px;padding:29px 30px;border:1px solid var(--line);background:#fff;border-radius:14px;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}
.catalog-contact h2{font-size:28px;margin:0 0 9px;color:var(--navy);letter-spacing:-.02em}
.catalog-contact p{font-size:15px;line-height:1.6;color:var(--muted);max-width:790px;margin:0}
.catalog-contact-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:230px}
.catalog-contact-actions .btn{padding:13px 18px;font-size:14px}
.catalog-contact-direct{font-size:13px;display:flex;gap:18px;margin-top:16px;flex-wrap:wrap}
.catalog-contact-direct a{color:var(--navy);font-weight:700;text-decoration:none}
.catalog-image-failure{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:20px;color:var(--muted);font-size:14px}
.catalog-noscript{padding:12px 16px;background:white;color:var(--muted);border:1px solid var(--line);border-radius:10px;font-size:13px}
@media(min-width:1600px){.catalog-card-media{aspect-ratio:1.46}}
@media(max-width:1180px){.site-header .contact-mini{display:none}.catalog-intro{grid-template-columns:minmax(0,1fr) 174px;gap:26px}.catalog-intro h1{font-size:38px}.catalog-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.catalog-card-media{aspect-ratio:1.4}.catalog-card h3{font-size:18px}.catalog-card-body{padding:15px}}
@media(max-width:980px){.catalog-intro{padding-top:22px}.catalog-intro h1{font-size:36px}.catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.catalog-archive-card{grid-template-columns:minmax(0,1fr);gap:4px}.catalog-archive-number{display:none}.catalog-contact{grid-template-columns:1fr}.catalog-contact-actions{flex-direction:row;flex-wrap:wrap}.catalog-card-media{aspect-ratio:1.5}.catalog-search{width:280px}}
@media(max-width:680px){
 .catalog-intro{grid-template-columns:minmax(0,1fr);padding:16px 0 23px;gap:21px}
 .catalog-intro h1{font-size:31px;line-height:1.13;margin-bottom:14px}.catalog-intro .lead{font-size:14px;line-height:1.65}
 .catalog-intro-aside{grid-template-columns:1fr 1fr;border-left:0;border-top:1px solid var(--line);padding:17px 0 0;gap:18px}
 .catalog-intro-aside b{font-size:25px}.catalog-intro-aside span{font-size:12px}.catalog-topline{display:block;margin-bottom:17px}.catalog-topline h2{font-size:26px}
 .catalog-search{width:100%;margin-top:17px}.catalog-section{padding-top:24px}.catalog-filters{gap:6px}.catalog-filter{font-size:12px;padding:9px 10px;gap:7px;min-height:40px}
 .catalog-cards,.catalog-archive-list{grid-template-columns:minmax(0,1fr)}.catalog-cards{gap:17px}.catalog-card h3{font-size:21px}.catalog-card-media{aspect-ratio:1.55}
 .catalog-card-body{padding:18px}.catalog-card p{font-size:13px}.catalog-facts{margin-bottom:17px;gap:6px}.catalog-fact{font-size:10px;gap:5px;padding:7px 8px}
 .catalog-results{font-size:12px;gap:10px;align-items:flex-start}.catalog-archive{margin-top:27px;padding-top:24px}.catalog-archive h2{font-size:24px}.catalog-archive-intro{font-size:13px}
 .catalog-archive-card{padding:17px}.catalog-contact{padding:23px 20px;margin-top:27px}.catalog-contact h2{font-size:25px}.catalog-contact p{font-size:14px}.catalog-contact-actions{flex-direction:column;min-width:0}
 .site-header .logo{width:auto;height:auto;min-width:0;flex:1}.site-header .nav-shell{display:flex;gap:10px;justify-content:space-between;padding:0 12px;min-width:0}
 .site-header .logo img{width:100%;max-width:178px;height:auto}.site-header .header-actions{gap:8px;flex:0 0 auto}.site-header .header-actions .btn{font-size:11px;line-height:1.25;padding:10px 9px;max-width:100px}.site-header .mobile-toggle{width:38px;height:38px;flex:none}
 .site-footer .footer-col a,.site-footer .footer-col div{font-size:14px}.site-footer .footer-brand p{font-size:15px}.site-header .container,.site-footer .container{padding-left:12px;padding-right:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.catalog-card,.catalog-filter{transition:none}.catalog-card:hover{transform:none}}

.site-header #megaMenu .mega-approved{max-height:calc(100vh - 126px);overflow-y:auto}
@supports(height:100svh){.site-header #megaMenu .mega-approved{max-height:calc(100svh - 126px)}}

/* V3: every portfolio project continues in the same grid. */
.catalog-card-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#8094ae;background:#eef3f8;text-align:center;padding:20px;cursor:default}
.catalog-card-placeholder svg{width:38px;height:38px;color:#a0b2c8;flex:none}
.catalog-card-placeholder span{font-size:13px;line-height:1.4}
.catalog-open-pending{color:var(--muted);font-weight:500;cursor:default;font-size:12px;line-height:1.5}
.catalog-card-pending:hover{transform:none;box-shadow:0 8px 20px rgba(27,53,89,.035);border-color:var(--line)}

.catalog-open.catalog-open-pending span{font-size:12px;line-height:1.5}
