@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Montserrat:wght@400;500;600;700&display=swap');:root{--gold:#d8ba8f;--cream:#f3e6d5;--black:#080808}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#f7f4ef;font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}#site{visibility:hidden}body.entered #site{visibility:visible}.welcome{position:fixed;inset:0;z-index:20;background:linear-gradient(#0005,#0006),url('assets/welcome.jpg') center/cover;cursor:pointer;display:grid;place-items:center;text-align:center}.welcome-label{display:flex;flex-direction:column;align-items:center;color:#fff;text-shadow:0 2px 16px #000;gap:10px}.brand-large{font:clamp(3.2rem,10vw,8rem)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:.12em}.emblem{color:var(--gold);font-size:2rem;line-height:1}.welcome .emblem{font-size:4rem}.tracking{letter-spacing:.3em;font-size:.68rem}.header{display:flex;justify-content:space-between;align-items:center;padding:14px 4%;gap:20px;min-height:105px}.brand{display:flex;flex-direction:column;align-items:center;min-width:185px;color:var(--cream);line-height:1}.brand-name{font:2.3rem 'Cormorant Garamond',Georgia,serif;letter-spacing:.09em}.brand-sub{font:1rem 'Cormorant Garamond',Georgia,serif;letter-spacing:.4em}.brand small{font-size:.42rem;letter-spacing:.16em;margin-top:9px}.header nav{display:flex;gap:30px}.header nav a,footer a{font-size:.65rem;font-weight:600}.header nav a:hover,footer a:hover{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:13px 28px;font-size:.7rem;font-weight:700;letter-spacing:.02em;text-align:center;border:1px solid var(--gold);cursor:pointer}.light{background:var(--cream);color:#111}.outline{background:#0006;color:white}.dark{background:#080808;color:#fff}.btn:hover{filter:brightness(.9)}.hero{min-height:470px;background:linear-gradient(90deg,#000 0%,#000b 32%,#0000 78%),url('assets/hero.jpg') center/cover;display:flex;align-items:center;padding:50px 4%}.hero-copy{max-width:660px}.eyebrow{font-size:.68rem;letter-spacing:.4em;font-weight:600}.hero h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}.hero h1{font-size:clamp(3.6rem,7vw,7rem);line-height:.82;letter-spacing:-.035em;margin:22px 0}.rule{height:1px;background:var(--gold);max-width:500px}.hero-copy>p:not(.eyebrow){line-height:1.6}.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px}.benefits{background:#eee8df;color:#111;display:grid;grid-template-columns:repeat(4,1fr);padding:24px 4%;text-align:center}.benefits>div{padding:4px 20px;border-right:1px solid #c6beb3}.benefits>div:last-child{border:0}.benefits span{display:block;font-size:2rem;margin-bottom:8px}.benefits b{font-size:.7rem}.benefits p{font-size:.68rem;line-height:1.5}.section{padding:40px 4%}.section-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #967d5d;gap:30px;margin-bottom:16px}.section-heading h2,.portfolio h2,.about h2,.quote h2{font-size:clamp(3.4rem,6vw,6rem);line-height:.95;margin:10px 0}.section-heading>p{max-width:390px;font-size:.8rem;line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-grid img{width:100%;aspect-ratio:1.35;object-fit:cover}.service-grid h3{font-size:.95rem;margin:12px 0 5px}.service-grid p{font-size:.8rem;line-height:1.4;margin:0 0 12px}.service-grid a{font-size:.72rem;font-weight:700}.portfolio{display:flex;gap:28px;background:linear-gradient(135deg,#171717,#080808)}.portfolio-intro{min-width:220px}.portfolio-intro .btn{margin-top:10px}.portfolio-images{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;flex:1}.portfolio-images img{width:100%;height:205px;object-fit:cover}.about{text-align:center;padding-top:65px;padding-bottom:65px}.about>p:last-child{max-width:650px;margin:auto;line-height:1.8}.cta{text-align:center;color:#111;background:linear-gradient(120deg,#eee8df,#faf7f1,#e9dfd0);padding:28px 16px}.cta h2{font-size:clamp(1.7rem,3vw,3rem);margin:12px 0}.cta p:not(.eyebrow){font-size:.8rem}.quote{max-width:1000px;margin:auto}.quote>p{line-height:1.7}.quote form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote label{font-size:.75rem;display:flex;flex-direction:column;gap:8px}.quote input,.quote textarea,.quote select{background:#1a1a1a;border:1px solid #777;color:#fff;padding:12px;font:inherit;border-radius:0}.quote .wide{grid-column:1/-1}.quote button{justify-self:start}.form-note{font-size:.72rem;color:#bbb}footer{display:flex;justify-content:space-between;align-items:center;padding:25px 4%;gap:25px;flex-wrap:wrap}footer>div{display:flex;gap:22px}footer small{color:#aaa}@media(max-width:850px){.header{flex-wrap:wrap;justify-content:center}.header nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:15px}.nav-quote{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.portfolio{flex-direction:column}.portfolio-images img{height:190px}}@media(max-width:550px){.hero{min-height:520px;background-position:60% center}.hero h1{font-size:3.9rem}.benefits{grid-template-columns:1fr 1fr;gap:14px}.benefits>div{border:0}.section-heading{display:block}.service-grid{gap:22px}.portfolio-images{grid-template-columns:1fr 1fr}.quote form{grid-template-columns:1fr}.quote .wide{grid-column:auto}.brand-large{font-size:3rem}.tracking{letter-spacing:.12em}.hero .tracking{line-height:2}footer{justify-content:center;text-align:center}footer>div{justify-content:center;flex-wrap:wrap}}

/* Original Republic Atelier artwork replaces placeholder diamond and typeset logo */
.brand{min-width:0;display:block;flex-shrink:0}
.brand-artwork{display:block;width:205px;height:auto;max-width:100%}
footer .brand-artwork{width:170px}
@media(max-width:550px){.brand-artwork{width:190px}}

/* Hero correction: keep live text/buttons, use photograph-only crop to avoid baked-in duplicates. */
.hero{background:#080808;position:relative;isolation:isolate;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0 0 0 47%;background:url('assets/hero-photo.jpg') center center/cover no-repeat;z-index:-2}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080808 0%,#080808 32%,rgba(8,8,8,.92) 44%,rgba(8,8,8,.30) 74%,rgba(8,8,8,.05) 100%);z-index:-1;pointer-events:none}
.hero-copy{position:relative;z-index:1}
@media(max-width:550px){.hero::before{inset:0 0 0 25%;opacity:.65}.hero::after{background:linear-gradient(90deg,#080808 0%,rgba(8,8,8,.94) 25%,rgba(8,8,8,.58) 100%)}}

/* Faithful restoration of original uncropped hero artwork, with interactive button hotspots. */
.hero{display:block;position:relative;min-height:0;padding:0;background:#080808;overflow:hidden;isolation:auto}
.hero::before,.hero::after{content:none!important;display:none!important}
.hero-original{display:block;width:100%;height:auto;max-width:none}
.hero-hit{position:absolute;display:block;top:79.4%;height:11.3%;z-index:2}
.hero-hit-quote{left:4.15%;width:21.3%}
.hero-hit-work{left:26.9%;width:19.2%}
.hero-hit:focus-visible{outline:3px solid #e2bf91;outline-offset:2px}
.hero-mobile-actions{display:none}
/* Restore legible premium-sized navigation */
.header nav a{font-size:.82rem;letter-spacing:.055em}
.header nav{gap:26px}
/* Restore the warm champagne-toned original call-to-action panel */
.cta{background:linear-gradient(115deg,#d8c4a9 0%,#f2e6d5 46%,#d6bfa0 100%);color:#18130e}
@media(max-width:850px){.header nav a{font-size:.78rem}}
@media(max-width:550px){.hero-hit{display:none}.hero-mobile-actions{display:flex;gap:10px;padding:14px 4%;justify-content:center;flex-wrap:wrap;background:#080808}.hero-mobile-actions .btn{font-size:.66rem;padding:10px 14px}.hero-original{width:100%;height:auto}}
