/* Legalexbo desktop refinement. Existing navigation and content remain intact. */
@media screen and (min-width:1024px){
 html{background:#f1f4f8}body::before{opacity:.08}.site-header{background:#ffffffed;border-color:#e1e7ef;box-shadow:0 3px 24px #142d4d06;backdrop-filter:blur(20px)}
 .search-hero{background:linear-gradient(180deg,#e6edf5,#f1f4f8);padding-bottom:38px}.hero-profile h1{letter-spacing:-.045em;font-size:3.15rem}.profile-tagline{color:#586b83;letter-spacing:.12em}.profile-avatar{box-shadow:0 10px 35px #17395d26,0 0 0 1px #ffffff;border-width:6px}
 .portal-dock{max-width:1160px;gap:18px;margin-top:30px}.master-nav,.master-nav:first-child,.master-nav:nth-child(3){min-height:112px;border-radius:19px;padding:23px 25px;background:#ffffffdc;border:1px solid #d8e2ef;box-shadow:0 8px 24px #24496d08;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
 .master-nav:hover{border-color:#79a9d9;box-shadow:0 12px 32px #214b7314}.master-nav.active{background:linear-gradient(125deg,#152c75,#1e529d);border-color:#3267aa;box-shadow:0 10px 28px #1c448523}.master-nav strong{font-size:1.16rem}.master-nav small{font-size:.9rem}
 .quick-links a{background:#ffffffad;border-color:#d1dfea;color:#28547f;padding:10px 17px}.social-row a{background:#274464;border-color:#274464;box-shadow:0 4px 12px #1e3f6010}.social-row a:hover{background:#1674c4;border-color:#1674c4}
 .catalog,.family-area,.services-area,.methodology{padding:44px 36px;max-width:1320px}.catalog h2,.area-hero h2,.methodology h2,.latest-heading h2{color:#193654;letter-spacing:-.035em;line-height:1.15}
 .catalog-search-field{background:#fff;border-color:#cedde9;border-radius:16px;padding:7px;box-shadow:0 5px 18px #22415c05}.catalog-search input{min-height:48px;font-size:1.04rem}
 .group-toggle,.family-toggle{background:#fff;border-color:#d7e1ed;border-left-color:#9abbdc;border-radius:15px;padding:21px 25px;box-shadow:0 4px 18px #22456505}.group-toggle-copy strong,.family-toggle strong{font-size:1.17rem}.result-group.expanded .group-toggle,.family-group.expanded .family-toggle{background:linear-gradient(120deg,#193f6a,#28659a);border-color:#346c9c;border-left-color:#53b5e8}
 .group-grid,.family-grid{gap:20px;padding:8px 3px 16px}.group-grid .card,.family-grid .family-card{flex-basis:308px;border-color:#dce5ef;border-radius:19px;box-shadow:0 7px 24px #20456a0c;overflow:hidden}.card-body,.family-card-body{background:#fff;padding:19px}.card h3,.family-card-body h3{line-height:1.45;font-size:1.1rem;color:#203d5b}.card-media{height:198px;background:#edf2f8;border-bottom-color:#e3ebf3}.source-row{border-color:#e4ecf3}.source-icon{border-radius:11px;min-height:43px}
 .carousel-controls{background:#e7eef6;border-color:#d0dfec;border-radius:14px;padding:11px 15px}.carousel-step-buttons button{background:#ffffffb3;border-color:#c7d8e9;border-radius:9px}
 .latest{max-width:1248px;background:linear-gradient(115deg,#e4edf6,#f3f7fb);border-color:#d3e0ee;border-radius:24px;padding:34px}.latest-card{background:#ffffffde;border-color:#d8e5f0;border-left-color:#73a6d3;border-radius:14px;box-shadow:0 4px 15px #203e5d05}
 .services-grid>article,.method-grid>article,.resource-card{background:#fff;border:1px solid #d8e4ef;border-radius:20px;box-shadow:0 8px 25px #28486607}.resources-section{max-width:1320px;padding:38px 36px}.resource-card summary{padding:27px}.resource-status{background:#eef4fb;border-color:#d3e1ed;color:#4b6b89}
 .nodo-service{border-radius:24px;border-color:#bfd7eb;background:radial-gradient(ellipse at 90% 0%,#d6efff,transparent 60%),linear-gradient(125deg,#fff,#edf5fc);box-shadow:0 14px 42px #1b528715}
 .node-menu-panel{background:#ffffffed;border-color:#d7e4ef;border-radius:20px;box-shadow:0 20px 55px #193e5d20;backdrop-filter:blur(22px)}.precedent-dialog-shell{border-radius:24px;box-shadow:0 24px 100px #1837573d}.precedent-dialog-header{background:linear-gradient(120deg,#f8fbff,#edf5fc)}.precedent-text{line-height:1.8}
}
@media(prefers-reduced-motion:reduce){.master-nav{transition:none!important}}
/* A single discreet progress rail on mobile; touch and keyboard scrolling retained. */
@media(max-width:1023px){
 .carousel-controls{margin:0 12px 5px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
 .carousel-control-caption,.carousel-step-buttons{display:none}
 .carousel-range{height:24px;margin:0;cursor:pointer}
 .carousel-range::-webkit-slider-runnable-track{height:3px;background:#d1dfeb;border-radius:8px}
 .carousel-range::-moz-range-track{height:3px;background:#d1dfeb;border-radius:8px}
 .carousel-range::-moz-range-progress{background:#729ac1;height:3px}
 .carousel-range::-webkit-slider-thumb{height:3px;width:38px;margin-top:0;border:0;border-radius:8px;background:#28649c;box-shadow:none}
 .carousel-range::-moz-range-thumb{height:3px;width:38px;border:0;border-radius:8px;background:#28649c;box-shadow:none}
 .group-grid,.family-grid{padding-bottom:4px}
}
/* Use desktop width instead of stacking a phone layout on a large screen. */
@media(min-width:1024px){
 .catalog,.family-area,.services-area{padding-top:28px;padding-bottom:30px}
 .cards,.family-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
 .result-group.expanded,.family-group.expanded{grid-column:1/-1}.group-toggle,.family-toggle{min-height:74px;padding:15px 20px}
 .latest,.resources-section,.methodology{margin-top:18px;padding-top:26px;padding-bottom:26px}
}

/* Desktop library: headings precede the content, never a narrow side column. */
@media(min-width:1000px){
 .catalog{display:block}
 .catalog .section-heading{position:static;top:auto;margin:0 0 22px;display:block}
 .catalog h2{max-width:none;font-size:2.15rem;line-height:1.2}
 .area-hero{max-width:none;margin-bottom:24px}
 .area-hero h2,.methodology h2,.latest-heading h2{font-size:2.15rem;line-height:1.2}
 .catalog-workspace{width:100%;min-width:0}
 .catalog-search{max-width:760px;margin:0 0 22px}
 .cards,.family-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
 .result-group,.family-group{min-width:0;margin:0}
 .result-group.expanded,.family-group.expanded{grid-column:1/-1}
 .group-grid .card,.family-grid .family-card{flex-basis:calc((100% - 40px)/3);min-width:270px}
 .group-toggle,.family-toggle{width:100%;min-height:78px}
 .services-grid,.method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
}
