:root{--black:#10110e;--cream:#f3eee3;--gold:#e2b74f;--teal:#163c3a;--line:rgba(239,229,206,.25)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--black);color:var(--cream);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;background:rgba(11,12,10,.95);backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid var(--line)}.logo{font:600 25px "Playfair Display",serif;letter-spacing:-.04em;line-height:1}.logo span{color:var(--gold)}.logo small{display:block;font:9px "DM Mono",monospace;letter-spacing:.32em;margin-top:9px}.topbar nav{display:flex;gap:31px}.topbar nav a,.outline-btn,.menu-toggle{font-size:10px;letter-spacing:.13em;font-weight:700}.topbar nav a:hover,.line-link:hover{color:var(--gold)}.outline-btn{border:1px solid var(--gold);color:var(--gold);padding:17px 24px}.menu-toggle{display:none;color:var(--cream);border:0;background:none}.hero{min-height:740px;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 68% 25%,#28534b 0%,#142320 35%,#10110e 75%);display:flex;align-items:center;padding:90px 5% 115px}.hero:before,.work:before,.contact:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:repeating-linear-gradient(110deg,transparent 0 3px,rgba(255,255,255,.025) 4px 5px);mix-blend-mode:screen}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:190px;background:linear-gradient(transparent,var(--black));pointer-events:none}.hero-grain{position:absolute;inset:0;pointer-events:none;z-index:3;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.hero-image{position:absolute;z-index:0;right:-4%;top:-5%;height:116%;width:67%;background-image:linear-gradient(90deg,var(--black) 0%,rgba(16,17,14,.36) 20%,transparent 48%),linear-gradient(0deg,var(--black),transparent 25%),url("https://mracewallace.com/wp-content/uploads/2026/03/Headshot.png");background-position:center,center,center 20%;background-size:cover;filter:saturate(.95) contrast(1.04);-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 24%,#000 80%,transparent)}.hero-content{position:relative;z-index:4;max-width:1100px}.kicker{font:10px/1.6 "DM Mono",monospace;letter-spacing:.17em}.kicker b{color:var(--gold);padding:0 5px}.gold{color:var(--gold)}h1,h2,h3,p{margin-top:0}.hero h1,h2,.capabilities h3{font-family:"Playfair Display",Georgia,serif}.hero h1{font-size:clamp(78px,9vw,156px);line-height:.91;letter-spacing:-.075em;margin:38px 0 28px;max-width:1000px;text-shadow:0 8px 50px #0b0c0a}.hero h1 em,h2 em{font-style:normal;color:var(--gold)}.hero-desc{font:clamp(16px,1.8vw,23px)/1.5 "Playfair Display",serif;max-width:420px}.hero-buttons{display:flex;gap:28px;align-items:center;margin-top:35px}.gold-btn{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;background:var(--gold);color:#15140f;padding:18px 26px;font-size:11px;letter-spacing:.13em;font-weight:700;transition:transform .2s,background .2s}.gold-btn:hover{transform:translateY(-3px);background:#f1cb71}.gold-btn span{font-size:20px}.quiet-btn,.line-link{font-size:11px;letter-spacing:.12em;font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:8px}.hero-city{position:absolute;right:5%;top:12%;z-index:2;font:italic 24px/1.4 "Playfair Display",serif;color:#ead9b3;transform:rotate(-8deg);text-align:center}.hero-film{position:absolute;right:2%;top:34%;bottom:15%;z-index:2;display:flex;flex-direction:column;justify-content:space-between;border-left:9px dotted rgba(239,229,206,.5);padding-left:12px;font:9px "DM Mono",monospace;writing-mode:vertical-rl;color:var(--gold)}.signature{position:absolute;z-index:4;bottom:60px;right:8%;font:italic 44px "Playfair Display",serif;transform:rotate(-9deg);color:var(--cream)}.signature span{font:9px "DM Mono",monospace;display:block;transform:rotate(9deg);letter-spacing:.1em}.capabilities{position:relative;z-index:5;margin-top:-25px;background:#0b0c0a;border-top:1px solid var(--gold);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);padding:27px 4% 34px;gap:15px}.capabilities>div{border-right:1px solid var(--line);padding:0 18px}.capabilities>div:last-child{border:0}.capabilities span{color:var(--gold);font:10px "DM Mono",monospace}.capabilities h3{font-size:clamp(19px,2vw,31px);line-height:1.1;margin:10px 0 14px}.capabilities small{font:8px "DM Mono",monospace;letter-spacing:.08em;color:#a9a69b}.section{padding:105px 5%;position:relative}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-top>div{flex:1}.section-top>p{font-size:13px;line-height:1.8;color:#c0bcb2;max-width:350px}.section-top .line-link{white-space:nowrap;color:var(--gold)}h2{font-size:clamp(44px,5.4vw,83px);letter-spacing:-.06em;line-height:.98;margin:18px 0 0}.work{background:radial-gradient(ellipse at 90% 20%,#142724,transparent 60%),#10110e}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 20px}.work-card.large{grid-column:span 2}.work-art{height:320px;position:relative;overflow:hidden;padding:24px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.work-card.large .work-art{height:410px}.work-kicker{font:10px "DM Mono",monospace;letter-spacing:.14em;position:relative;z-index:1}.work-art strong{font-size:clamp(40px,5vw,100px);line-height:.82;letter-spacing:-.08em;position:relative;z-index:1}.work-art strong i{font-family:"Playfair Display",serif;font-weight:500}.work-arrow{position:absolute;right:20px;bottom:16px;font-size:25px}.vvs{background:radial-gradient(ellipse at 60% 50%,#6c5832,#241d15 55%,#0b0c0a);color:#e8ca82}.vvs:before{content:"";position:absolute;inset:10%;border:1px solid #c09c50;transform:rotate(-3deg)}.vvs strong{text-align:center;font-family:"Playfair Display",serif;font-size:clamp(90px,12vw,185px);align-self:center}.vvs strong i{font-size:.5em;letter-spacing:.2em;display:block}.cold{background:#ded1b2;color:#181a17}.cold strong{transform:rotate(-5deg);font-family:"DM Sans",sans-serif;font-weight:700}.cold:after{content:"";position:absolute;bottom:24%;left:-10%;height:55px;width:120%;background:var(--gold);transform:rotate(-8deg);z-index:0}.tyree{background:linear-gradient(135deg,#254c46,#9b8d6c);color:#fff}.tyree strong{font-family:"Playfair Display",serif}.tyree strong i{font-size:.6em}.gannett{background:#1a2220}.gannett strong{color:var(--gold);font-size:clamp(100px,13vw,180px)}.gannett strong span{font-size:.5em}.gannett small{font:10px "DM Mono",monospace;letter-spacing:.13em}.work-card h3{font:600 20px "Playfair Display",serif;margin:17px 0 6px}.work-card p{font-size:11px;color:#a8a79f}.project-note{font:10px/1.8 "DM Mono",monospace;color:#8f8c82;margin:45px 0 0}.statement{padding:85px 5%;background:#d5ad55;color:#16140e;position:relative}.statement h2{font-size:clamp(30px,4vw,61px);line-height:1.2;max-width:1050px}.statement h2 em{color:#4b3615}.statement-mark{position:absolute;right:5%;bottom:24px;font:10px "DM Mono",monospace}.about{display:grid;grid-template-columns:1.1fr 1.15fr .5fr;gap:5%;background:#131715;align-items:center}.about-photo{height:550px;position:relative;overflow:hidden;background:#18302c}.about-photo-inner{position:absolute;inset:0;background:linear-gradient(0deg,#10110e,transparent 55%),url("https://mracewallace.com/wp-content/uploads/2026/03/Headshot.png") center 18%/cover;filter:grayscale(1) contrast(1.15)}.photo-caption{position:absolute;bottom:18px;left:18px;font:9px "DM Mono",monospace;letter-spacing:.1em}.about-text h2{margin-bottom:25px}.about-text p:not(.kicker){font:15px/1.9 "Playfair Display",serif;color:#ded7c8}.about-text .gold-btn{margin-top:20px}.stats>div{border-bottom:1px solid var(--line);padding:20px 0}.stats strong{display:block;font:30px "Playfair Display",serif;color:var(--gold)}.stats span{font:9px/1.6 "DM Mono",monospace;letter-spacing:.08em}.experience{background:#10110e}.experience-list{border-top:1px solid var(--line)}.experience-list>div{display:grid;grid-template-columns:1fr 2fr 2fr .6fr;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:25px 0}.experience-list span,.experience-list b{font:10px "DM Mono",monospace;color:var(--gold)}.experience-list h3{font:600 24px "Playfair Display",serif;margin:0}.experience-list p{font-size:12px;color:#aaa69b;margin:0}.services{background:#181b17;display:flex;justify-content:space-between;gap:60px;align-items:center}.service-list{display:flex;flex-wrap:wrap;gap:12px;max-width:650px}.service-list span{font:10px "DM Mono",monospace;letter-spacing:.1em;border:1px solid var(--line);padding:16px 19px}.contact{min-height:480px;background:radial-gradient(ellipse at 75% 85%,#2e3025,transparent 55%),linear-gradient(110deg,#121714,#0d0e0c);overflow:hidden}.contact h2{font-size:clamp(65px,8vw,128px)}.contact>p:not(.kicker){max-width:450px;font-size:15px;line-height:1.8;color:#c4bdae;margin:25px 0}.cityline{position:absolute;right:5%;bottom:40px;font:10px "DM Mono",monospace;letter-spacing:.2em;color:var(--gold)}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:32px 5%;border-top:1px solid var(--line)}footer p,footer>small,footer div{font:9px "DM Mono",monospace;letter-spacing:.08em;color:#aaa69b}footer div{display:flex;gap:20px}footer div a:hover{color:var(--gold)}@media(max-width:950px){.topbar nav{gap:14px}.topbar nav a{font-size:9px}.hero-image{width:80%;right:-15%}.hero h1{font-size:clamp(72px,10vw,120px)}.about{grid-template-columns:1fr 1fr}.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.services{display:block}.service-list{margin-top:35px}}@media(max-width:680px){.topbar{height:70px;padding:0 5%}.logo{font-size:21px}.topbar .outline-btn{display:none}.menu-toggle{display:block}.topbar nav{display:none;position:absolute;top:70px;left:0;right:0;background:#111;padding:24px 5%;flex-direction:column;gap:22px;border-bottom:1px solid var(--gold)}.topbar nav.open{display:flex}.hero{min-height:720px;align-items:flex-start;padding:75px 6% 70px}.hero-image{width:130%;height:88%;right:-35%;top:12%;opacity:.67;background-position:center,center,center 15%;-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 68%,transparent);mask-image:linear-gradient(180deg,transparent,#000 20%,#000 68%,transparent)}.hero h1{font-size:clamp(63px,13.5vw,100px);margin:28px 0 20px}.hero-desc{max-width:290px;font-size:17px}.hero-content{z-index:4}.hero-city{display:none}.hero-film{opacity:.5}.signature{font-size:32px;bottom:38px;right:8%}.capabilities{grid-template-columns:repeat(2,1fr);margin:0;padding:20px 5%;gap:0}.capabilities>div{padding:17px 10px;border-bottom:1px solid var(--line)}.capabilities>div:nth-child(2n){border-right:0}.capabilities h3{font-size:24px}.section{padding:70px 6%}.section-top{display:block}.section-top>p{margin:22px 0}.section-top .line-link{display:inline-block;margin-top:10px}.work-grid{grid-template-columns:1fr}.work-card.large{grid-column:auto}.work-art,.work-card.large .work-art{height:300px}.vvs strong{font-size:105px}.statement{padding:65px 6%}.about{display:block}.about-photo{height:380px;margin-bottom:40px}.about-text h2{margin-bottom:24px}.stats{display:grid;grid-template-columns:1fr 1fr;margin-top:35px}.stats strong{font-size:24px}.experience-list>div{grid-template-columns:1fr auto;gap:10px}.experience-list h3{grid-column:1/-1;grid-row:2}.experience-list p{grid-column:1/-1;grid-row:3}.experience-list b{grid-column:2;grid-row:1}.service-list span{font-size:9px}.contact{min-height:550px}.cityline{left:6%;right:auto;bottom:30px;font-size:9px}footer{padding:30px 6%}footer p{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Custom Photoshop hero artwork: desktop and mobile */
.hero{background:#10110e url("hero-desktop.jpg") center center/cover no-repeat;min-height:clamp(650px,56.25vw,1000px)}
.hero-image,.hero-city,.hero-film,.signature,.hero-grain{display:none}
.hero:before{background:none}
.hero:after{height:42%;background:linear-gradient(0deg,rgba(7,9,8,.91),rgba(7,9,8,0))}
.hero-content{align-self:flex-end;max-width:850px}
.hero h1{font-size:clamp(62px,7.3vw,115px);text-shadow:0 3px 22px #000,0 0 45px rgba(0,0,0,.8);margin:15px 0}
.hero .kicker,.hero-desc{text-shadow:0 2px 14px #000,0 0 28px #000}
.hero-desc{max-width:520px;font-size:clamp(16px,1.6vw,21px)}
@media(max-width:680px){
.hero{background-image:url("hero-mobile.jpg");background-position:center top;background-size:cover;min-height:clamp(760px,128vw,1050px);padding:70px 6% 55px;align-items:flex-end}
.hero:after{height:55%;background:linear-gradient(0deg,rgba(7,9,8,.96),rgba(7,9,8,.72) 40%,transparent)}
.hero-content{align-self:flex-end}
.hero h1{font-size:clamp(55px,11.6vw,82px);margin:15px 0}
.hero-desc{font-size:16px;max-width:350px}
.hero-buttons{margin-top:23px}
}

/* Separate sharp portrait over the newly uploaded motion-blur background */
.hero{background-image:url("hero-desktop.jpg");background-position:center center}
.hero-image{display:block;position:absolute;z-index:2;left:auto;right:2%;top:auto;bottom:0;width:52%;height:96%;background:url("hero-headshot.png") center bottom/contain no-repeat;filter:none;opacity:1;-webkit-mask-image:none;mask-image:none;pointer-events:none}
.hero:after{z-index:1;height:55%;background:linear-gradient(0deg,rgba(8,9,8,.64),transparent)}
.hero-content{z-index:4;max-width:650px;align-self:center}
.hero h1{font-size:clamp(65px,7vw,116px);line-height:.97;max-width:650px}
@media(max-width:950px){.hero-image{width:57%;right:-5%}.hero-content{max-width:57%}.hero h1{font-size:clamp(55px,7vw,86px)}}
@media(max-width:680px){
.hero{background-image:url("hero-desktop.jpg");background-position:48% center;min-height:790px;align-items:flex-end}
.hero-image{width:112%;height:69%;right:-30%;bottom:17%;background-position:center bottom}
.hero:after{height:65%;background:linear-gradient(0deg,rgba(8,9,8,.98) 0%,rgba(8,9,8,.85) 30%,transparent 82%)}
.hero-content{align-self:flex-end;max-width:100%;width:100%;z-index:4}
.hero h1{font-size:clamp(52px,11vw,76px);max-width:100%}
.hero-desc{max-width:330px}
}

/* Mobile-specific hero asset and compact viewport composition */
@media(max-width:680px){
  .hero{background-image:url("hero-mobile.jpg");background-position:center center;background-size:cover;min-height:0;height:clamp(520px,150vw,640px);padding:26px 6% 30px;align-items:flex-end}
  .hero-image{width:104%;height:75%;right:-31%;bottom:20%;background-position:center bottom}
  .hero:after{height:78%;background:linear-gradient(0deg,rgba(8,9,8,.97) 0%,rgba(8,9,8,.79) 28%,rgba(8,9,8,.1) 78%,transparent)}
  .hero-content{align-self:flex-end;width:100%;max-width:100%}
  .hero .kicker{font-size:8px;letter-spacing:.09em;max-width:250px}
  .hero h1{font-size:clamp(44px,10.5vw,64px);margin:12px 0;line-height:1}
  .hero-desc{font-size:14px;line-height:1.35;max-width:290px;margin-bottom:0}
  .hero-buttons{margin-top:16px;gap:16px}
  .hero .gold-btn{padding:12px 15px;font-size:9px;gap:16px}
  .hero .quiet-btn{font-size:9px}
}

/* Mobile portrait fills to the bottom edge of the hero */
@media(max-width:680px){
  .hero-image{width:125%;height:100%;right:-36%;bottom:0;background-position:center bottom;background-size:contain}
}



/* Slightly smaller mobile headshot, bottom-aligned */
@media(max-width:680px){.hero-image{width:116%;height:93%;right:-34%;top:auto;bottom:0;background-size:contain}}

/* Featured Work: four equal project cards across on desktop */
@media(min-width:951px){
  .work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
  .work-card.large{grid-column:auto}
  .work-art,.work-card.large .work-art{height:310px}
  .work-art strong{font-size:clamp(30px,3.5vw,65px)}
  .vvs strong{font-size:clamp(50px,6vw,100px)}
  .gannett strong{font-size:clamp(48px,5.5vw,95px)}
}

/* Featured work placeholders pending original project photography */
.work-art.kindred{background:linear-gradient(145deg,#3d3022,#b48748 65%,#1d1916);color:#f4e5c6}
.work-art.penelopes{background:linear-gradient(135deg,#b99b6d,#4e3827);color:#fff2d4}
.work-art.ame{background:linear-gradient(140deg,#192a37,#506879 55%,#121923);color:#f3eee3}
.work-art.kindred strong,.work-art.penelopes strong,.work-art.ame strong{font-size:clamp(24px,3vw,54px);overflow-wrap:anywhere}
@media(max-width:950px) and (min-width:681px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-card.large{grid-column:auto}}


/* Approved My Story portrait artwork: live text and stats remain editable */
@media(min-width:681px){
.about{background:linear-gradient(90deg,rgba(12,12,11,.04) 0%,rgba(12,12,11,.24) 38%,rgba(12,12,11,.77) 58%,rgba(12,12,11,.90) 100%),url("about-background.png") left center/cover no-repeat;gap:4%;grid-template-columns:1fr 1.15fr .55fr}
.about-photo{background:transparent}
.about-photo-inner{display:none}
.about-text,.stats{position:relative;z-index:1;text-shadow:0 2px 12px rgba(0,0,0,.55)}
}
@media(max-width:680px){
.about{background:#131715}
.about-photo{height:clamp(300px,88vw,480px);background:url("about-background.png") 15% center/auto 100% no-repeat #131715}
.about-photo-inner{display:none}
}

/* One continuous cinematic canvas from Services through Contact */
.services,.contact{isolation:isolate;background-image:linear-gradient(90deg,rgba(8,9,8,.86),rgba(8,9,8,.67) 48%,rgba(8,9,8,.38)),url("services-contact-background.png");background-repeat:no-repeat;background-size:100% 200%,100% 200%;background-attachment:scroll;position:relative}
.services{background-position:center top,center top;min-height:470px;padding-top:105px;padding-bottom:105px;align-items:center}
.contact{background-position:center bottom,center bottom;min-height:520px;padding-top:105px;padding-bottom:105px;border-top:0}
.services:after{content:"";position:absolute;left:5%;right:5%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(226,183,79,.35),transparent);pointer-events:none}
.services>*,.contact>*{position:relative;z-index:1}
.service-list span{background:rgba(10,10,9,.44);backdrop-filter:blur(5px);border-color:rgba(226,183,79,.4)}
.contact:before{opacity:.08}
@media(max-width:680px){
.services,.contact{background-size:auto 200%,auto 200%;background-position:25% top,25% top}
.services{min-height:500px;padding-top:80px;padding-bottom:80px}
.contact{min-height:530px;background-position:65% bottom,65% bottom;padding-top:80px;padding-bottom:100px}
.services h2,.contact h2{text-shadow:0 3px 22px rgba(0,0,0,.75)}
}

/* Dedicated portrait-oriented artwork for mobile; desktop stays unchanged */
@media(max-width:680px){
.about-photo{height:clamp(410px,125vw,610px);background-image:url("about-background-mobile.png");background-position:center 43%;background-size:cover;background-repeat:no-repeat}
.services,.contact{background-image:linear-gradient(180deg,rgba(8,9,8,.76),rgba(8,9,8,.46)),url("services-contact-background-mobile.png");background-size:100% 200%,100% 200%;background-repeat:no-repeat}
.services{background-position:center top,center top}
.contact{background-position:center bottom,center bottom}
}

/* Contact CTA: clear separation from heading and supporting copy */
.contact .gold-btn{margin-top:32px;position:relative;z-index:2}
@media(max-width:680px){.contact h2{font-size:clamp(44px,11vw,66px);line-height:1.12}.contact>p:not(.kicker){margin:28px 0 0;line-height:1.7}.contact .gold-btn{margin-top:40px}.contact{padding-bottom:115px}}

/* Mobile contact: enforce document-flow stacking, no visual overlap */
@media(max-width:680px){
.contact{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:690px;padding:85px 6% 115px;gap:0}
.contact h2{display:block;position:static;font-size:clamp(43px,10.5vw,62px);line-height:1.18;letter-spacing:-.045em;margin:22px 0 0;max-width:100%;overflow-wrap:normal}
.contact>p:not(.kicker){display:block;position:static;margin:28px 0 0;max-width:340px;line-height:1.75}
.contact>a.gold-btn{display:inline-flex;position:relative;flex:none;align-self:flex-start;margin:48px 0 0;transform:none}
.contact .cityline{bottom:30px}
}

/* Contact location line: prevent overlap with CTA on narrow screens */
@media(max-width:680px){
.contact .cityline{position:relative;left:auto;right:auto;bottom:auto;top:auto;display:block;align-self:flex-start;width:100%;margin:32px 0 0;padding:0;font-size:9px;line-height:1.8;letter-spacing:.12em;white-space:normal;z-index:2}
.contact>a.gold-btn{margin-top:40px}
.contact{min-height:0;padding-bottom:100px}
}

/* Six balanced capability tiles beneath the hero */
@media(min-width:681px){.capabilities{grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.capabilities>div{min-width:0;padding:0 12px}.capabilities h3{font-size:clamp(17px,1.8vw,28px)}.capabilities>div:last-child{border-right:0}}
@media(max-width:680px){.capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}.capabilities>div:nth-child(5){border-bottom:0}.capabilities>div:nth-child(6){border-bottom:0;border-right:0}.capabilities h3{font-size:clamp(19px,5vw,24px)}}

/* Full-bleed About portrait on mobile; preserve desktop composition */
@media(max-width:680px){.about{padding-top:0}.about-photo{width:calc(100% + 12vw);max-width:none;margin-left:-6vw;margin-right:-6vw;margin-bottom:40px;border-radius:0;background-position:center 43%;background-size:cover}.about .photo-caption{left:6vw}}

/* VVS KING project photography: retains the existing dark fallback until image is uploaded */
.work-art.vvs{background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.65) 100%),url("vvs-king.jpg") center center/cover no-repeat,#241d15}
.work-art.vvs:before{display:none}
.work-art.vvs strong{font-size:clamp(34px,4vw,68px);text-shadow:0 2px 16px rgba(0,0,0,.8)}

/* Chicago Blackhawks Sport Court project — visual placeholder until 3D rendering video arrives */
.work-art.blackhawks{background:radial-gradient(ellipse at 70% 25%,rgba(180,38,34,.52),transparent 58%),linear-gradient(135deg,#292a2c,#111315 75%);color:#f4eee5}
.work-art.blackhawks:before{content:"";position:absolute;inset:12%;border:1px solid rgba(225,183,79,.38);transform:skew(-7deg);pointer-events:none}
.work-art.blackhawks strong{font-family:"Playfair Display",serif;font-size:clamp(22px,2.5vw,44px);line-height:1.05;letter-spacing:-.045em;text-shadow:0 2px 12px #111}
.work-art.blackhawks strong i{font-size:.7em;color:var(--gold);letter-spacing:0}

/* Desktop contact: editorial scale, natural spacing, and uncropped background proportions */
@media(min-width:681px){
.contact{min-height:480px;padding:90px 6% 95px;background-size:100% 200%,cover;background-position:center bottom,center bottom}
.contact h2{font-size:clamp(48px,5.3vw,82px);line-height:1.06;letter-spacing:-.045em;max-width:850px;margin-top:14px}
.contact>p:not(.kicker){font-size:15px;max-width:460px;line-height:1.7;margin:22px 0 0}
.contact>a.gold-btn{margin-top:30px}
.contact .cityline{right:6%;bottom:42px}
}

/* Desktop: give Services and Contact independent visual identities */
@media(min-width:681px){
.services{background:linear-gradient(110deg,rgba(10,13,12,.93),rgba(16,24,21,.86)),url("services-contact-background.png") center 35%/cover no-repeat;min-height:410px;padding-top:85px;padding-bottom:85px;border-bottom:1px solid rgba(226,183,79,.28)}
.services:after{display:none}
.contact{background:linear-gradient(105deg,rgba(12,13,12,.96) 0%,rgba(12,13,12,.91) 48%,rgba(18,25,22,.75) 100%),url("services-contact-background.png") center 75%/cover no-repeat;min-height:500px;padding-top:90px;padding-bottom:100px;border-top:0}
.contact h2{max-width:760px}
.contact>a.gold-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;width:auto;min-width:205px;max-width:max-content;margin-top:32px;padding:18px 24px;border:1px solid var(--gold);font-size:11px;line-height:1.2;letter-spacing:.12em;white-space:nowrap;box-shadow:0 8px 25px rgba(0,0,0,.2)}
.contact>a.gold-btn span{font-size:19px;line-height:1}
.contact .cityline{bottom:40px}
}

/* Desktop Services: distinct minimal treatment; reserve cinematic city imagery for Contact */
@media(min-width:681px){
.services{background:radial-gradient(ellipse at 15% 10%,rgba(158,125,62,.11),transparent 46%),linear-gradient(125deg,#161917 0%,#111412 54%,#0c0e0d 100%);background-image:radial-gradient(ellipse at 15% 10%,rgba(158,125,62,.11),transparent 46%),linear-gradient(125deg,#161917 0%,#111412 54%,#0c0e0d 100%);border-bottom:1px solid rgba(204,169,101,.25)}
.services h2{max-width:660px}
}

/* Section 05 desktop: reveal the photography and keep location line out of the CTA */
@media(min-width:681px){
.contact{background-image:linear-gradient(90deg,rgba(10,11,10,.77) 0%,rgba(10,11,10,.60) 43%,rgba(10,11,10,.24) 100%),url("services-contact-background.png");background-size:cover;background-position:center 75%;background-repeat:no-repeat;min-height:570px;padding:80px 6% 70px}
.contact h2{position:relative;z-index:1;text-shadow:0 3px 24px rgba(0,0,0,.45)}
.contact>p:not(.kicker){position:relative;z-index:1;color:#e4ded1}
.contact>a.gold-btn{position:relative;z-index:2;min-width:205px;margin-top:32px}
.contact .cityline{position:relative;right:auto;left:auto;bottom:auto;top:auto;display:block;width:max-content;max-width:100%;margin:28px 0 0;line-height:1.6;white-space:normal;z-index:1}
}

/* Section 05 portrait replacement: studio backdrop, no skyline. Upload section-5-portrait.jpg to activate. */
@media(min-width:681px){
.contact{background-image:linear-gradient(90deg,rgba(5,14,15,.86) 0%,rgba(5,14,15,.76) 37%,rgba(5,14,15,.17) 72%,rgba(5,14,15,.08) 100%),url("section-5-portrait.jpg");background-color:#112d30;background-position:center center;background-size:cover;background-repeat:no-repeat}
.contact h2,.contact>p:not(.kicker),.contact .kicker{position:relative;z-index:1}
}

/* Section 05 editorial portrait + skyline: activate by uploading section-5-editorial.jpg */
@media(min-width:681px){
.contact{background-color:#102c2e;background-image:linear-gradient(90deg,#091416 0%,#0b1d1f 36%,rgba(11,29,31,.72) 55%,rgba(11,29,31,.06) 100%),url("section-5-editorial.jpg");background-repeat:no-repeat;background-position:center center,right center;background-size:cover,auto 100%;min-height:570px}
.contact h2{max-width:690px;font-size:clamp(54px,5.8vw,90px);line-height:1.02}
.contact>p:not(.kicker){max-width:420px}
.contact>a.gold-btn{min-width:220px}
}
@media(min-width:681px) and (max-width:1050px){.contact{background-position:center center,125% center}.contact h2{max-width:590px;font-size:clamp(48px,6.1vw,70px)}}

/* Section 05: retain original skyline, without the headshot overlay */
@media(min-width:681px){
.contact{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(90deg,rgba(7,10,10,.79) 0%,rgba(7,10,10,.55) 44%,rgba(7,10,10,.18) 100%),url("services-contact-background.png");background-size:cover;background-position:center 75%;background-repeat:no-repeat}
.contact h2{max-width:680px}
}

/* Experience résumé download */
.resume-download{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:38px}
.resume-download-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:17px 22px;border:1px solid var(--gold);background:var(--gold);color:#111;font:11px "DM Mono",monospace;letter-spacing:.13em;text-decoration:none;transition:background .2s,color .2s}
.resume-download-btn:hover{background:#f0ce76;color:#111;border-color:#f0ce76}
.resume-download-btn span{font-size:21px;line-height:1}
.resume-download p{color:#aaa69b;font:10px "DM Mono",monospace;letter-spacing:.08em}
@media(max-width:680px){.resume-download{margin-top:30px;gap:14px}.resume-download-btn{width:100%;max-width:320px}}
