
/* BillMacDemos Portfolio V3: scoped design additions */
.bmv3{background:#101113;color:#f4f0e9;padding:clamp(70px,9vw,126px) 0;font-family:var(--display,Arial,sans-serif)}
.bmv3 *{box-sizing:border-box}.bmv3-inner{width:min(1440px,calc(100% - 2*var(--gut,28px)));margin:auto}
.bmv3-top{display:grid;grid-template-columns:1.3fr .7fr;gap:7%;align-items:end;margin-bottom:40px}
.bmv3-eyebrow{color:#e9945b;font:700 .8rem/1.4 var(--display,Arial,sans-serif);letter-spacing:.15em;text-transform:uppercase;margin:0 0 17px}
.bmv3 h2{font-family:var(--serif,Georgia,serif);font-weight:450;font-size:clamp(2.8rem,5.5vw,6.1rem);line-height:1.02;letter-spacing:-.035em;margin:0;max-width:13ch}
.bmv3-top>p{border-left:1px solid #49494b;padding-left:30px;color:#bebdc0;line-height:1.65;font:400 clamp(.95rem,1.15vw,1.12rem)/1.6 var(--display,Arial,sans-serif);margin:0}
.bmv3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bmv3-card{border:1px solid #393b40;border-radius:12px;overflow:hidden;background:#191b1e;min-width:0;transition:border-color .3s,transform .4s}
.bmv3-card:hover{border-color:#dc8a50;transform:translateY(-5px)}
.bmv3-media{display:block;position:relative;overflow:hidden;margin:8px 8px 0;border-radius:7px;background:#303136;aspect-ratio:1.45}
.bmv3-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s}
.bmv3-card:hover img{transform:scale(1.035)}
.bmv3-media:after{content:'OPEN LIVE DEMO ↗';font:700 .75rem var(--display,Arial,sans-serif);letter-spacing:.09em;position:absolute;bottom:14px;left:14px;padding:9px 12px;background:rgba(7,10,20,.85);border:1px solid #777;color:#fff;border-radius:3px}
.bmv3-body{padding:25px 24px 28px}.bmv3-category{font:700 .71rem var(--display,Arial,sans-serif);letter-spacing:.13em;color:#e9945b;margin:0 0 11px}
.bmv3-card h3{font:450 clamp(1.45rem,2vw,2.1rem)/1.15 var(--serif,Georgia,serif);margin:0 0 13px;color:#fff}
.bmv3-card p:not(.bmv3-category){font:400 .94rem/1.6 var(--display,Arial,sans-serif);color:#bcbcc0;min-height:4.5em;margin:0 0 23px}
.bmv3-link{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;text-decoration:none;font:700 .78rem var(--display,Arial,sans-serif);letter-spacing:.09em;color:#f6ede3;border:1px solid #55565a;border-radius:3px;padding:13px 18px;transition:background .2s}
.bmv3-link:hover{background:#ad6433;color:#fff}
.bmv3-footerbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:29px;border-top:1px solid #35363a;padding:25px 0}
.bmv3-footerbar p{font:400 .96rem/1.5 var(--display,Arial,sans-serif);color:#bdbcc1;margin:0}
.bmv3-more,.bmv3-cta-btn{display:inline-flex;text-decoration:none;align-items:center;gap:18px;justify-content:center;padding:15px 22px;border:1px solid #d48b58;color:#f7e5d3;background:transparent;border-radius:4px;font:700 .85rem var(--display,Arial,sans-serif)}
.bmv3-more:hover,.bmv3-cta-btn:hover{background:#c27745;color:#0b0e16}
.bmv3-convert{background:#f1eee8;color:#141414;padding:clamp(44px,5vw,80px);display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:34px;border-radius:10px}
.bmv3-convert h3{font:450 clamp(2.2rem,3.6vw,4.2rem)/1.06 var(--serif,Georgia,serif);letter-spacing:-.03em;margin:0 0 14px}
.bmv3-convert p{font:400 1rem/1.6 var(--display,Arial,sans-serif);color:#444;margin:0}
.bmv3-choices{display:grid;gap:12px}.bmv3-choice{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:#1c1b1b;border:1px solid #b9b6b1;border-radius:5px;padding:19px 21px;font:650 1rem var(--display,Arial,sans-serif)}
.bmv3-choice:hover{background:#151515;color:#fff}
.bmv3-note{margin-top:20px;color:#aaa9ae;font:400 .76rem/1.5 var(--display,Arial,sans-serif)}
@media(max-width:980px){.bmv3-top{grid-template-columns:1fr}.bmv3-top>p{max-width:60ch}.bmv3-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bmv3-convert{grid-template-columns:1fr}}
@media(max-width:660px){.bmv3-grid{grid-template-columns:1fr}.bmv3-top>p{border-left:0;padding-left:0}.bmv3-footerbar{align-items:stretch;flex-direction:column}.bmv3-more{align-self:flex-start}.bmv3-convert{padding:30px 20px}}
/* Gallery */
.bmv3-gallery{background:#101113;color:#f4f0e9;min-height:100vh;padding:65px 0 95px;font-family:var(--display,Arial,sans-serif)}
.bmv3-gallery .bmv3-inner{width:min(1440px,calc(100% - 40px))}.bmv3-gallery h1{font:450 clamp(2.6rem,6vw,5rem)/1.03 Georgia,serif;margin:0 0 18px;max-width:17ch}
.bmv3-intro{color:#bcbcc1;max-width:65ch;line-height:1.6}.bmv3-filter{display:flex;flex-wrap:wrap;gap:9px;margin:37px 0 30px}
.bmv3-filter button{border:1px solid #555;background:#1c1d20;color:#eee;border-radius:999px;padding:12px 17px;font:600 .83rem Arial,sans-serif;cursor:pointer}
.bmv3-filter button[aria-pressed=true]{background:#de9567;color:#141414;border-color:#de9567}.bmv3-gallery .bmv3-card[hidden]{display:none!important}
.bmv3-planned{aspect-ratio:1.45;background:linear-gradient(130deg,#252729,#161719);margin:8px 8px 0;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#adabb0;font:700 .78rem Arial,sans-serif;letter-spacing:.14em}
.bmv3-gallery .bmv3-card{display:flex;flex-direction:column}.bmv3-gallery .bmv3-body{flex:1;display:flex;flex-direction:column}.bmv3-gallery .bmv3-card p:not(.bmv3-category){min-height:0;flex:1}.bmv3-gallery .bmv3-convert{margin-top:60px}

.bmv3-media.preview:after{content:'CONCEPT PREVIEW';}
