/* BRANDING CASES — gallery-only; no PDF embedding or download controls */
.branding-section{padding:130px 0 145px;background:#eeeae4;color:#111113;position:relative;overflow:hidden}
.branding-section::before{content:'SVL';font:clamp(180px,27vw,430px)/1 var(--heading);position:absolute;top:10px;right:-5%;color:rgba(0,0,0,.027);pointer-events:none}
.branding-section .brand-intro{position:relative;display:grid;grid-template-columns:1fr minmax(220px,390px);align-items:end;gap:60px;margin-bottom:45px}
.brand-kicker{display:inline-flex;gap:10px;align-items:center;color:#b01342;font-size:11px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.brand-kicker::before{content:'';width:25px;height:2px;background:#b01342}
.branding-section h2{font:clamp(55px,7.8vw,111px)/.92 var(--heading);letter-spacing:-.085em;text-transform:uppercase;margin:20px 0 0;max-width:850px}
.branding-section h2 em{font-style:normal;color:#b01342}
.branding-section .brand-intro p{font-size:17px;line-height:1.65;color:#68656a;margin:0 0 8px}
.brand-intro-note{display:flex;gap:12px;align-items:center;margin:0 0 30px;color:#777176;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.brand-intro-note strong{font:38px/1 var(--heading);color:#18181a}
.brand-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 26px}
.brand-filter{border:1px solid #bcb7b3;color:#3e3b3a;background:transparent;padding:12px 17px;cursor:pointer;font:800 11px var(--body);text-transform:uppercase;letter-spacing:.065em;transition:background .2s,color .2s}
.brand-filter:hover{border-color:#b01342;color:#b01342}
.brand-filter.is-active{background:#141316;color:white;border-color:#141316}
.brand-filter span{margin-left:6px;opacity:.75}
.brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.brand-card{background:#fff;border:1px solid #d8d3d0;transition:transform .3s,box-shadow .3s;min-width:0;overflow:hidden}
.brand-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px #0000001a}
.brand-card-action{width:100%;height:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer}
.brand-card-image{position:relative;background:#101c25;aspect-ratio:1.27;overflow:hidden}
.brand-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.brand-card:hover img{transform:scale(1.045)}
.brand-card-index{position:absolute;top:14px;left:14px;background:#f3f0ea;color:#222;padding:8px 11px;font:800 10px var(--body);letter-spacing:.12em}
.brand-card-open{position:absolute;bottom:14px;right:14px;background:#ff164f;color:white;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:22px}
.brand-card-info{padding:24px 22px 25px}
.brand-card-eyebrow{font:800 10px var(--body);color:#b01342;letter-spacing:.12em;text-transform:uppercase}
.brand-card-info h3{font:clamp(22px,2.15vw,32px)/1.05 var(--heading);text-transform:uppercase;letter-spacing:-.055em;margin:12px 0 16px;min-height:32px}
.brand-card-footer{display:flex;justify-content:space-between;gap:10px;align-items:end}
.brand-card-footer p{font:500 12px/1.35 var(--body);color:#78747b;margin:0}
.brand-card-footer .swatches{display:inline-flex;flex-shrink:0;gap:4px}
.brand-card-footer .swatches i{width:13px;height:13px;display:inline-block;border:1px solid #9995}
.branding-section .brand-section-footer{margin-top:35px;border-top:1px solid #c9c2c0;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font:900 10px var(--body);letter-spacing:.11em;color:#757078;text-transform:uppercase}
/* Full presentation modal */
.brand-modal-open{overflow:hidden}
.brand-modal{position:fixed;inset:0;z-index:140;background:#09090bd9;padding:20px;display:grid;place-items:center;backdrop-filter:blur(9px)}
.brand-modal[hidden],.brand-lightbox[hidden]{display:none}
.brand-modal-shell{position:relative;max-height:min(94vh,1100px);width:min(1220px,100%);background:#f4f1ed;color:#151518;overflow:auto;border:1px solid #9997;box-shadow:0 26px 100px #000a}
.brand-modal-close{position:sticky;float:right;top:0;z-index:5;background:#f51550;color:white;border:0;width:52px;height:52px;font-size:20px;cursor:pointer}
.brand-case-header{padding:62px 60px 40px;background:#171719;color:#f9f9f8;position:relative}
.brand-case-meta{display:flex;gap:20px;align-items:center;flex-wrap:wrap;color:#b8b4b9;font:800 11px var(--body);letter-spacing:.12em;text-transform:uppercase}
.brand-pill{color:#ff4a74}
.brand-case-header h2{font:clamp(39px,5.5vw,72px)/1 var(--heading);letter-spacing:-.07em;text-transform:uppercase;margin:25px 0 22px;max-width:940px}
.brand-case-header p{font:400 clamp(15px,1.5vw,18px)/1.7 var(--body);max-width:700px;color:#d0ced0;margin:0 0 25px}
.brand-case-tags{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:25px}
.brand-case-tags span{border:1px solid #424147;padding:8px 10px;font:700 10px var(--body);letter-spacing:.05em;text-transform:uppercase}
.brand-case-swatches{display:flex;gap:7px}
.brand-case-swatches i{height:18px;width:53px;border:1px solid #9995}
.brand-case-intro{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:25px 50px;border-bottom:1px solid #cdc9c5;background:#ebe7e1}
.brand-case-intro span{font:800 10px var(--body);white-space:nowrap;letter-spacing:.12em}
.brand-case-intro p{max-width:620px;color:#66636a;font:400 13px/1.5 var(--body);margin:0}
.brand-documents{padding:45px 50px 55px;display:grid;gap:52px}
.brand-document h4{margin:0 0 20px;font:clamp(18px,2.3vw,28px)/1.1 var(--heading);text-transform:uppercase;letter-spacing:-.035em}
.brand-piece-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.brand-piece{padding:0;background:#fdfdfd;border:1px solid #d5cfc8;cursor:zoom-in;position:relative;aspect-ratio:.96/1;overflow:hidden;display:grid;place-items:center}
.brand-piece img{width:100%;height:100%;object-fit:cover;object-position:top}
.brand-piece:hover{border-color:#b01342}
.brand-piece-zoom{position:absolute;bottom:0;left:0;right:0;text-align:right;background:linear-gradient(transparent,#111b);color:white;padding:25px 12px 11px;font:800 10px var(--body);letter-spacing:.08em}
.brand-case-bottom{background:#171719;color:#9e999e;text-align:center;padding:20px;font:800 10px var(--body);letter-spacing:.17em}
.brand-lightbox{position:fixed;inset:0;z-index:160;background:#0a0a0df7;padding:15px;display:flex;flex-direction:column;gap:10px;justify-content:center;align-items:center;color:white}
.brand-lightbox-head{width:min(1200px,100%);display:flex;justify-content:space-between;align-items:center;gap:16px}
.brand-lightbox-head strong{font:clamp(15px,2.6vw,24px)/1.1 var(--heading);letter-spacing:-.04em;text-transform:uppercase}
.brand-lightbox-head span{font:700 12px var(--body);color:#b7b5ba}
.brand-lightbox-close{background:#fc2357;color:white;border:0;font-size:20px;width:43px;height:43px;cursor:pointer;flex-shrink:0}
.brand-lightbox-stage{width:min(1200px,100%);display:flex;align-items:center;justify-content:center;gap:14px;min-height:0;flex:1}
.brand-lightbox-image-wrap{min-width:0;min-height:0;display:grid;place-items:center;height:100%;flex:1;overflow:auto}
.brand-lightbox-stage img{height:auto;max-height:80vh;max-width:100%;width:auto;object-fit:contain;box-shadow:0 10px 50px #0008}
.brand-lightbox-arrow{background:#ffffff17;border:1px solid #ffffff42;color:white;font:32px/1 var(--body);width:52px;height:60px;cursor:pointer;flex-shrink:0}
.brand-lightbox-arrow:hover{background:#fc2357}
.brand-lightbox-foot{color:#a9a6ac;font:700 11px var(--body);letter-spacing:.05em}
@media(max-width:920px){.branding-section .brand-intro{grid-template-columns:1fr;gap:20px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.branding-section{padding:90px 0}.brand-piece-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.branding-section{padding:74px 0 85px}.branding-section h2{font-size:clamp(45px,13vw,70px)}.branding-section .brand-intro p{font-size:15px}.brand-grid{grid-template-columns:1fr;gap:16px}.brand-card-image{aspect-ratio:1.4}.brand-card-info{padding:19px}.brand-card-info h3{font-size:25px}.brand-intro-note{font-size:9px}.branding-section .brand-section-footer{flex-direction:column}.brand-modal{padding:6px}.brand-modal-shell{max-height:98vh}.brand-modal-close{width:43px;height:43px}.brand-case-header{padding:52px 20px 30px}.brand-case-header h2{font-size:40px}.brand-case-intro{padding:19px 20px;display:block}.brand-case-intro p{margin-top:12px}.brand-documents{padding:26px 12px 30px;gap:30px}.brand-piece-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.brand-piece-zoom{font-size:8px}.brand-lightbox{padding:6px}.brand-lightbox-stage{gap:4px}.brand-lightbox-arrow{width:29px;height:45px;font-size:25px}.brand-lightbox-head{padding:0 6px}.brand-lightbox-stage img{max-height:78vh}.brand-lightbox-foot{font-size:9px}}
