:root{--paper:#f8f5ef;--ink:#181816;--gold:#a67e42;--line:#cec1ac;--muted:#615c54;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:1rem/1.55 Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 3.6%;border-bottom:1px solid var(--line)}.brand{display:flex;gap:15px;align-items:center}.brand img{mix-blend-mode:multiply;width:56px;height:56px}.brand span{font:600 clamp(1.1rem,2.1vw,1.8rem) Georgia,serif;letter-spacing:.12em}nav{display:flex;gap:32px;font-size:.9rem}nav a:hover,.text-link:hover{color:var(--gold)}.button{border:1px solid var(--gold);box-shadow:inset 0 0 0 2px #c1a26c;background:var(--ink);color:#fff;padding:15px 24px;display:inline-flex;justify-content:center;align-items:center;gap:24px;font-size:.95rem;transition:background .2s}.button:hover{background:#39352d}.button span{font-size:1.5rem;line-height:1;color:#c6a065}.hero{display:grid;grid-template-columns:42% 58%;border-bottom:1px solid var(--line);max-width:1600px;margin:auto}.hero-copy{padding:55px 7.8% 30px}.eyebrow{color:#926b31;font-size:.72rem;text-transform:uppercase;letter-spacing:.3em;margin:0 0 18px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.07;margin:0}h1{font-size:clamp(3rem,5.8vw,6rem);letter-spacing:-.055em}.intro{font-size:clamp(1rem,1.35vw,1.2rem);max-width:420px;margin:24px 0 30px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.text-link{border-bottom:1px solid var(--gold);padding:9px 0;font-size:.9rem}.signature{font-size:.62rem;text-transform:uppercase;letter-spacing:.36em;color:#6f6250;display:flex;align-items:center;gap:16px;margin-top:42px}.signature:before{content:'';height:1px;background:var(--gold);width:50px}.hero-image{min-height:500px}.hero-image img{display:block;width:100%;height:100%;object-fit:cover}.section{padding:42px 3.6%}.section-heading{text-align:center;margin-bottom:28px}.section-heading .eyebrow{display:flex;align-items:center;justify-content:center;gap:18px}.section-heading .eyebrow:before,.section-heading .eyebrow:after{content:'';width:44px;height:1px;background:var(--gold)}h2{font-size:clamp(2.1rem,3.9vw,3.8rem);letter-spacing:-.045em}.section-heading>p:last-child:not(.eyebrow){margin:12px 0 0}.services{max-width:1450px;margin:auto}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.service-grid article{display:grid;grid-template-columns:47% 53%;border:1px solid var(--line);min-width:0}.service-grid img{width:100%;height:100%;min-height:205px;object-fit:cover}.service-grid article>div{padding:26px 23px;display:flex;flex-direction:column;align-items:flex-start}h3{font-size:clamp(1.45rem,2vw,2rem);letter-spacing:-.035em}.service-grid i{display:block;width:40px;height:1px;background:var(--gold);margin-top:18px}.service-grid p{margin:14px 0;font-size:.95rem}.service-link{margin-top:auto;padding:0;border:0;background:transparent;color:#775929;font-size:.8rem;text-align:left}.service-link:hover{text-decoration:underline}.image-note{font-size:.75rem;color:var(--muted);text-align:right;margin:12px 0 0}.process{background:radial-gradient(ellipse at center,#292a28,#181917);color:var(--paper);padding-top:44px;padding-bottom:52px}.process .eyebrow{color:#c7a164}.process ol{display:grid;grid-template-columns:repeat(3,1fr);padding:0;list-style:none;max-width:1360px;margin:36px auto 0}.process li{display:flex;gap:23px;padding:0 26px;border-right:1px solid #766548}.process li:first-child{padding-left:0}.process li:last-child{border:0}.number{font:4rem/.95 Georgia,serif;color:#c3a065}.process h3{font-size:1.45rem;margin:3px 0 12px}.process li p{font-size:.95rem;margin:0;max-width:285px;color:#e4e0d9}.contact{text-align:center;padding:48px 20px}.contact .button{margin-top:25px;min-width:235px}.contact .signature{justify-content:center;margin-top:25px}.contact .signature:after{content:'';width:45px;height:1px;background:var(--gold)}footer{border-top:1px solid var(--line);padding:20px 3.6%;display:flex;align-items:center;gap:28px;font-size:.8rem}footer>a{font:bold 1.1rem Georgia,serif;letter-spacing:.12em}footer p{margin:0}.rule{flex:1;height:1px;background:var(--line)}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:5}.skip:focus{top:10px}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:38px;width:min(620px,calc(100% - 28px));max-height:90dvh}dialog::backdrop{background:#111b;backdrop-filter:blur(4px)}dialog h2{font-size:2.4rem}.close{position:absolute;right:12px;top:6px;border:0;background:transparent;font-size:2rem;width:44px;height:44px}.preview-note{background:#ece6db;padding:12px;font-size:.85rem;color:#575044}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;margin:16px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fields label{min-width:0}input,select,textarea{border:1px solid #b7ab98;background:#fffdf9;padding:11px;min-width:0;width:100%;border-radius:0;color:var(--ink)}textarea{resize:vertical}#form-status{font-size:.85rem;margin-bottom:0}@media(min-width:1500px){.hero-copy{padding-top:80px}}@media(max-width:1050px){header{gap:15px}nav{gap:18px}.header-quote{padding:12px}.hero-copy{padding:35px 7%}.hero-image{min-height:470px}.service-grid article>div{padding:20px 16px}.process li{gap:15px;padding:0 18px}.number{font-size:3rem}}@media(max-width:760px){header{flex-wrap:wrap;padding:12px 5%;gap:12px}.brand img{width:44px;height:44px}.brand span{font-size:1.2rem}.header-quote{display:none}nav{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:38px 6% 30px}h1{font-size:clamp(3.4rem,11vw,5rem)}.intro{max-width:550px}.hero-image{min-height:0;aspect-ratio:1.3}.signature{margin-top:30px}.section{padding:36px 5%}.service-grid{grid-template-columns:1fr}.service-grid article{grid-template-columns:42% 58%}.service-grid img{min-height:200px}.service-grid article>div{padding:22px 17px}.service-grid h3{font-size:1.6rem}.process ol{grid-template-columns:1fr;gap:24px}.process li,.process li:first-child{padding:0 0 24px;border:0;border-bottom:1px solid #655b48;gap:23px}.process li:last-child{padding-bottom:0}.process li p{max-width:none}.number{font-size:3.6rem}.process .section-heading{text-align:left}.process .eyebrow{justify-content:flex-start}.process .eyebrow:before{display:none}footer{flex-wrap:wrap;gap:14px;padding:24px 5%}footer .rule{display:none}footer p{width:100%}dialog{padding:30px 20px}.fields{grid-template-columns:1fr;gap:0}.fields label{margin:10px 0}.image-note{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.quote-intro a,.form-note a,.contact-email a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.form-note{font-size:.85rem;color:var(--muted);margin:18px 0 0}.contact-email{font-size:.95rem;margin:20px 0 0}

#artwork{padding:14px;border:1px dashed var(--gold);background:#f0e9dd}#artwork::file-selector-button{font:inherit;padding:9px 14px;margin-right:12px;border:1px solid var(--line);background:var(--paper);cursor:pointer}#artwork-status{margin:8px 0 18px;overflow-wrap:anywhere}#artwork-help{margin-top:-8px}

[hidden]{display:none!important}nav a[aria-current="page"]{color:#775929;border-bottom:1px solid var(--gold)}.portfolio-page{max-width:1450px;margin:auto}.portfolio-heading{padding:35px 6% 42px;border-bottom:1px solid var(--line)}.back-link{font-size:.85rem;color:var(--muted);display:inline-block;margin-bottom:40px}.portfolio-heading h1{font-size:clamp(3.5rem,7vw,6.5rem)}.portfolio-heading h1 em{font-weight:400;color:#93703e}.portfolio-heading>p:last-child{color:var(--muted);margin:24px 0 0}.portfolio-content{padding:40px 6% 60px}.portfolio-empty{text-align:center;border:1px solid var(--line);padding:38px 20px 44px;background:#f0ece4}.portfolio-empty img{mix-blend-mode:multiply;display:block;margin:0 auto 25px;opacity:.8}.portfolio-empty h2{font-size:clamp(2rem,3vw,3rem)}.portfolio-empty>p:not(.eyebrow){color:var(--muted);margin:18px 0 24px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-card{min-width:0;padding:0;border:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;transition:transform .2s}.project-card:hover{transform:translateY(-3px)}.project-card>img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.project-details{display:block;padding:20px}.project-details .eyebrow{display:block;margin-bottom:10px}.project-title{display:block;font:1.6rem/1.2 Georgia,serif}.photo-viewer{width:min(1000px,calc(100% - 24px));padding:44px 20px 20px}.photo-viewer figure{margin:0}.photo-viewer figure>img{display:block;max-width:100%;height:auto;max-height:60dvh;object-fit:contain;margin:auto}.photo-viewer figcaption{padding:20px 4px 5px}.photo-viewer h2{font-size:1.8rem}.photo-viewer figcaption p{margin:8px 0}.photo-close{position:absolute;right:10px;top:0;width:44px;height:44px;font-size:2rem;background:transparent;border:0;color:var(--ink)}.photo-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:16px}.photo-controls button{background:var(--ink);color:var(--paper);border:1px solid var(--gold);padding:10px 16px}.photo-controls span{font-size:.85rem;color:var(--muted)}@media(max-width:1050px){header{flex-wrap:wrap}nav{gap:18px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){nav{gap:10px;flex-wrap:wrap;font-size:.8rem}.portfolio-heading{padding:25px 6% 32px}.back-link{margin-bottom:28px}.project-grid{grid-template-columns:1fr}.portfolio-content{padding:28px 6% 40px}.photo-controls button{font-size:.85rem;padding:10px}.portfolio-empty{padding:30px 16px}}

footer{flex-wrap:wrap}.social-links{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:1rem}.social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;border-bottom:1px solid var(--gold)}.social-links a:hover{color:var(--gold)}

/* Corporate and catalog pages */
header{flex-wrap:wrap}header nav{flex-wrap:wrap;gap:12px 22px}header nav a{min-height:44px;display:inline-flex;align-items:center}.business-page{max-width:1450px;margin:auto;padding:0 6%}.business-intro{padding:55px 0 38px}.business-intro .intro{max-width:680px}.catalog-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-bottom:32px}.catalog-card{border:1px solid var(--line);padding:36px;background:#f0ece4}.catalog-card h2{font-size:3rem}.catalog-card .button{margin-top:18px}.catalog-draft-note{color:#765018;border-left:3px solid var(--gold);padding-left:12px}.pricing-note{padding:24px 0}.pricing-note p{max-width:510px}.business-steps{padding:44px 0;border-top:1px solid var(--line)}.business-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;padding:0;list-style:none;counter-reset:steps}.business-steps li{counter-increment:steps}.business-steps li:before{content:'0' counter(steps);display:block;color:#886632;font:2.5rem Georgia,serif;margin:18px 0}.business-steps h3{font-size:1.65rem}.corporate-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:40px}.corporate-hero h1{font-size:clamp(2.8rem,5vw,5.2rem)}.corporate-hero figure{margin:30px 0}.corporate-hero img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}.corporate-hero figcaption{font-size:.875rem;color:var(--muted);margin-top:10px}.business-offerings{padding:40px 0;border-top:1px solid var(--line)}.offering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 45px;margin-top:32px}.offering-grid article{border-bottom:1px solid var(--line);padding-bottom:20px}.business-callout{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:40px 6%;border-top:1px solid var(--line)}.business-callout p{max-width:700px}.business-callout .button{flex-shrink:0}.business-page .business-callout{padding:40px 0}.business-callout h2{font-size:clamp(2rem,3vw,3rem)}@media(max-width:850px){.corporate-hero,.catalog-layout{grid-template-columns:1fr;gap:10px}.corporate-hero figure{margin:0 0 30px}.business-callout{align-items:flex-start;flex-direction:column}.business-steps ol{grid-template-columns:1fr;gap:0}}@media(max-width:500px){.offering-grid{grid-template-columns:1fr}.catalog-card{padding:24px}.business-intro{padding-top:32px}.business-intro h1{font-size:2.9rem}header nav{justify-content:flex-start;font-size:.875rem}.business-page .button{max-width:100%;gap:12px}}

footer .review-link{font:inherit;letter-spacing:normal;display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}footer .review-link:hover{color:var(--ink)}

.catalog-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.catalog-card h2{font-size:clamp(2rem,3.6vw,3rem)}.catalog-card>.button{margin-top:auto}.catalog-card>p:not(.eyebrow):not(.form-note){margin-bottom:28px}.catalog-quote{text-align:center;padding:36px 24px;border:1px solid var(--line)}.catalog-quote>p:not(.eyebrow){max-width:680px;margin:20px auto 26px}.catalog-quote h2{font-size:clamp(2rem,3.5vw,3rem)}.business-page>.pricing-note{padding:36px 0}.business-page>.pricing-note p{max-width:850px}
