
:root{--ink:#080808;--ink2:#101010;--paper:#f3f0e9;--muted:#a8a49c;--gold:#c7a86b;--gold2:#ead9ad;--line:rgba(255,255,255,.13);--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f7f5f0;font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{background:rgba(8,8,8,.88);backdrop-filter:blur(18px);border-color:var(--line)}.nav{height:92px;display:flex;align-items:center;gap:38px}.brand img{width:138px;height:auto}.links{margin-left:auto;display:flex;gap:30px;align-items:center;font-size:14px}.links a{opacity:.78}.links a:hover,.links a.active{opacity:1;color:var(--gold2)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:1px solid var(--gold);background:var(--gold);color:#0b0b0b;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:.2s}.btn:hover{background:var(--gold2);transform:translateY(-2px)}.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}.menu{display:none;background:none;border:0;color:#fff;font-size:24px}
.hero{min-height:100vh;padding:150px 0 80px;display:flex;align-items:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(199,168,107,.12),transparent 65%);right:-18vw;top:4vh;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold2);font-weight:700}.hero h1,.page-hero h1,.section-title{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:.92;margin:22px 0}.hero h1{font-size:clamp(64px,8vw,132px)}.hero h1 em{color:var(--gold);font-weight:400}.lead{font-size:18px;color:#c9c6bf;max-width:640px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.visual{height:650px;position:relative;border:1px solid rgba(255,255,255,.13);overflow:hidden;background:linear-gradient(140deg,#171717 0 35%,#0c0c0c 35% 55%,#29231a 55% 57%,#0c0c0c 57%)}.visual:before{content:"";position:absolute;inset:9%;border:1px solid rgba(199,168,107,.5);background:linear-gradient(110deg,transparent 0 47%,rgba(199,168,107,.13) 48% 51%,transparent 52%),linear-gradient(0deg,#0b0b0b,#24211c);clip-path:polygon(0 0,100% 0,78% 100%,13% 100%)}.visual:after{content:"JMC";position:absolute;right:8%;bottom:5%;font:700 92px/1 Arial;color:rgba(255,255,255,.045);letter-spacing:-.08em}.visual-copy{position:absolute;left:7%;bottom:7%;z-index:2}.visual-copy b{display:block;font:400 32px Georgia;color:#f5f0e4}.visual-copy span{font-size:10px;letter-spacing:.25em;color:var(--gold)}
.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band-inner{display:grid;grid-template-columns:repeat(3,1fr)}.band-item{padding:24px;border-right:1px solid var(--line);font-size:12px;color:#aaa}.band-item:last-child{border:0}.band-item b{color:#fff;margin-right:10px}
section{padding:120px 0}.light{background:var(--paper);color:#101010}.section-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;margin-bottom:70px}.section-title{font-size:clamp(48px,6vw,88px);max-width:900px}.section-copy{color:#aaa;max-width:620px;font-size:17px}.light .section-copy{color:#57534c}
.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:80px 1fr 1fr 40px;gap:25px;align-items:center;padding:32px 0;border-bottom:1px solid var(--line);transition:.25s}.service-row:hover{padding-left:14px;background:rgba(255,255,255,.025)}.service-row .num{color:var(--gold);font-size:11px}.service-row h3{font:400 clamp(28px,3vw,44px) Georgia;margin:0}.service-row p{color:#aaa;margin:0;max-width:520px}.arrow{font-size:25px;color:var(--gold)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.card{background:var(--ink2);padding:38px;min-height:280px}.card .n{font-size:11px;color:var(--gold);letter-spacing:.18em}.card h3{font:400 30px Georgia;margin:50px 0 14px}.card p{color:#aaa}.light .cards{background:#d6d0c5}.light .card{background:var(--paper)}.light .card p{color:#5b5750}
.statement{padding:150px 0}.statement blockquote{font:400 clamp(44px,6vw,92px)/1.02 Georgia;margin:0;max-width:1100px;letter-spacing:-.045em}.statement blockquote em{color:var(--gold)}
.process{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.step{padding:28px 24px 70px 0;border-right:1px solid var(--line)}.step:not(:first-child){padding-left:24px}.step b{font-size:11px;color:var(--gold)}.step h3{font:400 26px Georgia;margin-top:35px}.step p{font-size:14px;color:#999}
.cta{background:var(--gold);color:#0b0b0b}.cta-grid{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:50px}.cta h2{font:400 clamp(56px,7vw,104px)/.92 Georgia;letter-spacing:-.05em;margin:0}.cta .btn{background:#0b0b0b;color:#fff;border-color:#0b0b0b}
.page-hero{padding:190px 0 110px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(72px,10vw,150px);max-width:1000px}.page-hero p{font-size:20px;color:#aaa;max-width:720px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.big-copy{font:400 clamp(36px,4vw,60px)/1.05 Georgia;letter-spacing:-.035em}.prose{color:#aaa;font-size:17px}.values{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.value{background:var(--ink);padding:34px;min-height:230px}.value b{color:var(--gold);font-size:11px}.value h3{font:400 28px Georgia}.value p{color:#999}
.detail{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;padding:70px 0;border-top:1px solid var(--line)}.detail h2{font:400 clamp(42px,5vw,70px) Georgia;margin:0}.detail p,.detail li{color:#aaa}.detail ul{columns:2;padding-left:18px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-info a{display:block;font:400 26px Georgia;margin:12px 0}.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#aaa}.field input,.field select,.field textarea{width:100%;border:1px solid #393939;background:#111;color:#fff;padding:16px;outline:none}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold)}.check{display:flex;gap:10px;color:#aaa;font-size:13px}.status{font-size:13px;color:var(--gold2)}
footer{padding:55px 0;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.footer-links{display:flex;gap:20px;flex-wrap:wrap;color:#999;font-size:12px}.small{color:#777;font-size:11px;margin-top:25px}
.reveal{opacity:0;transform:translateY(22px);transition:.7s ease}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.links,.nav>.btn{display:none}.menu{display:block;margin-left:auto}.links.open{display:flex;position:absolute;top:92px;left:0;right:0;margin:0;background:#0a0a0a;padding:28px 20px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line)}.hero-grid,.section-head,.split,.contact-grid,.cta-grid{grid-template-columns:1fr}.visual{height:480px}.cards{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.service-row{grid-template-columns:45px 1fr 35px}.service-row p{display:none}.detail{grid-template-columns:1fr;gap:25px}.hero{padding-top:130px}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.nav{height:76px}.links.open{top:76px}.hero{min-height:auto;padding-bottom:55px}.hero h1{font-size:59px}.visual{height:380px}.band-inner,.cards,.process,.values{grid-template-columns:1fr}.band-item{border-right:0;border-bottom:1px solid var(--line)}section{padding:85px 0}.section-head{margin-bottom:45px}.service-row{padding:24px 0}.detail ul{columns:1}.form{grid-template-columns:1fr}.field.full{grid-column:auto}.page-hero{padding-top:145px}.footer-grid{grid-template-columns:1fr}.contact-info a{font-size:21px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}}

/* Final multipage refinements */
.home-services{padding-top:95px;padding-bottom:95px}
.home-services .service-row{padding:25px 0}
.page-index{padding:110px 0}
.page-index-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.page-index-card{background:#101010;padding:34px;min-height:230px;display:flex;flex-direction:column}
.page-index-card h3{font:400 30px Georgia;margin:28px 0 12px}
.page-index-card p{color:#999;margin:0 0 25px}
.page-index-card a{margin-top:auto;color:var(--gold2);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.contact-only{min-height:calc(100vh - 92px);padding-top:175px}
.map-frame{width:100%;height:330px;border:1px solid var(--line);filter:grayscale(1) contrast(1.05)}
@media(max-width:800px){.page-index-grid{grid-template-columns:1fr}.contact-only{padding-top:135px}}

.cookie-banner{position:fixed;z-index:9999;left:16px;right:16px;bottom:16px;background:#111;color:#fff;border:1px solid rgba(211,184,125,.45);box-shadow:0 16px 50px rgba(0,0,0,.35);border-radius:16px}
.cookie-inner{max-width:1180px;margin:auto;padding:18px 20px;display:flex;gap:24px;align-items:center;justify-content:space-between}
.cookie-inner strong{display:block;margin-bottom:5px}
.cookie-inner p{margin:0;color:#d7d7d7;font-size:.92rem;line-height:1.5}
.cookie-inner a{color:#e2c98e;text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex:0 0 auto}
.cookie-actions .btn{min-width:110px}
.cookie-actions .cookie-reject{background:transparent;color:#fff;border-color:#777}
@media(max-width:680px){.cookie-inner{align-items:stretch;flex-direction:column;gap:14px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions .btn{min-width:0}}
