
:root{--ink:#20251f;--paper:#f6f4ec;--line:#c9cbbb;--accent:#526149;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 var(--sans)}a{color:inherit;text-underline-offset:.22em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b78541;outline-offset:3px}.skip{position:absolute;top:-5rem;left:1rem;background:white;padding:.6rem;z-index:10}.skip:focus{top:1rem}.site-head{padding:1.4rem 5vw 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.brand{text-decoration:none;line-height:1.1;font:1.7rem var(--serif);white-space:nowrap}.brand small{display:block;font:600 .62rem var(--sans);letter-spacing:.15em;text-transform:uppercase;margin-top:.5rem}.nav{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;font-size:.76rem;font-weight:bold;letter-spacing:.04em}.nav a{text-decoration:none}.nav a:hover,.nav a[aria-current=page]{text-decoration:underline}.hero{min-height:28rem;position:relative;display:grid;align-items:end;background:linear-gradient(90deg,rgba(19,24,20,.88),rgba(19,24,20,.12)),var(--hero) center/cover;color:white}.hero-inner{width:min(1160px,90%);margin:0 auto;padding:6rem 0 4rem}.eyebrow{font-size:.7rem;letter-spacing:.19em;font-weight:700;text-transform:uppercase}.hero h1{font:normal clamp(2.8rem,6vw,5.6rem)/1.02 var(--serif);max-width:820px;margin:.9rem 0}.hero p{max-width:610px;font-size:1.05rem}.button{display:inline-block;background:#d6bf98;color:#1b211b;padding:.85rem 1.2rem;text-decoration:none;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-top:1rem}.wrap{width:min(1120px,90%);margin:auto}.intro{display:grid;grid-template-columns:1fr 2fr;gap:5rem;padding:5rem 0;border-bottom:1px solid var(--line)}.intro strong{font:normal clamp(1.9rem,3vw,2.7rem)/1.2 var(--serif)}.intro p{margin:0}.sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:5rem}.section{padding:2.4rem 0;border-bottom:1px solid var(--line)}.section h2{font:normal clamp(1.65rem,2.5vw,2.2rem)/1.2 var(--serif);margin:0 0 1.2rem}.section p{margin:.8rem 0;color:#414a40}.photo{min-height:22rem;background:linear-gradient(0deg,rgba(20,25,20,.18),rgba(20,25,20,.18)),var(--accent-image) center/cover;margin:4rem 0}.next{padding:4rem 0;display:flex;align-items:center;justify-content:space-between;gap:2rem}.next h2{font:normal 2.4rem var(--serif);margin:0}.next p{margin:.4rem 0}.next-links{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;font-weight:bold}.footer{background:#202720;color:#f3f2ea;padding:3rem 5vw}.footer-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:2rem}.footer h2{font:normal 1.6rem var(--serif);margin:0}.footer p{font-size:.86rem;line-height:1.7}.footlinks{display:flex;gap:1rem;flex-wrap:wrap;font-size:.82rem}.formbox{margin:3rem 0;padding:2rem;background:#e9ebdf;max-width:700px}.formbox h2{font:normal 2rem var(--serif);margin-top:0}.formbox label{display:block;font-size:.8rem;font-weight:bold;margin-top:1rem}.formbox input,.formbox textarea{display:block;width:100%;padding:.8rem;border:1px solid #8c9685;background:white;font:inherit}.formbox button{border:0;padding:1rem;background:#768074;color:white;margin-top:1rem}.notice{font-size:.84rem}.city{--ink:#182733;--paper:#f0f2f1;--line:#b7c4c8;--accent:#2a4859}.city .site-head{background:#f7f7f5}.city .brand{font-family:var(--sans);font-size:1.15rem;font-weight:bold;letter-spacing:.08em;text-transform:uppercase}.city .hero{min-height:33rem;background:linear-gradient(90deg,rgba(13,34,48,.92),rgba(13,34,48,.15)),var(--hero) center/cover}.city .hero h1{font-family:var(--sans);font-weight:700;letter-spacing:-.045em;font-size:clamp(2.8rem,6vw,5.4rem);max-width:700px}.city .button{background:#c9a76d;color:#182733}.city .intro{grid-template-columns:2fr 1fr}.city .intro strong,.city .section h2,.city .next h2,.city .footer h2,.city .formbox h2{font-family:var(--sans);font-weight:700;letter-spacing:-.035em}.city .section h2{font-size:1.65rem}.city .footer{background:#172e3c}.city .formbox{background:#dce4e5}@media(max-width:800px){.site-head{display:block}.nav{margin-top:1.3rem;gap:.65rem 1rem}.hero{min-height:24rem}.hero-inner{padding:4rem 0 3rem}.intro,.city .intro{display:block;padding:3rem 0}.intro p{margin-top:1rem}.sections{display:block}.section{padding:2rem 0}.photo{min-height:15rem;margin:2rem 0}.next{display:block;padding:3rem 0}.next-links{margin-top:1.2rem}.footer-inner{display:block}.footlinks{margin-top:1.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Descriptive service images are real, crawlable HTML images. */
.hero.hero--photo{isolation:isolate;overflow:hidden;background:#37312b;position:relative}.hero--photo .hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero--photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,25,21,.9),rgba(28,25,21,.28));z-index:-1}.photo-credit{font-size:.7rem;color:var(--ink);opacity:.75;text-align:right;margin:.7rem 0 -2rem}.photo-credit a{color:inherit}
html.city{--ink:#202529;--paper:#f1f0ed;--line:#bbbcb8;--accent:#997844}.city .site-head{background:#252a2c;color:#fff}.city .button{background:#b99b60;color:#161a1b}.city .footer{background:#252a2c;color:#f4f2ed}.city .section p{color:#3a4140}.city .nav-disclosure{position:relative;margin-left:auto;flex:0 0 auto}.city .nav-disclosure summary{display:flex;align-items:center;gap:.6rem;cursor:pointer;list-style:none;font-size:.8rem;font-weight:bold;letter-spacing:.12em;text-transform:uppercase;padding:.65rem .8rem;border:1px solid #c9b181}.city .nav-disclosure summary::-webkit-details-marker{display:none}.city .nav-disclosure summary:focus-visible{outline:3px solid #d1b574;outline-offset:3px}.city .menu-icon{font-size:1.2rem;line-height:1}.city .nav-disclosure .nav{position:absolute;right:0;top:100%;z-index:10;display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:225px;margin:0;padding:.5rem;background:#252a2c;color:#fff;box-shadow:0 12px 30px #0003}.city .nav-disclosure .nav a{padding:.7rem .8rem;border-bottom:1px solid #ffffff24}.city .nav-disclosure .nav a:last-child{border:0}.city .nav-disclosure .nav a:hover{background:#ffffff15}.city .hero.hero--photo:before{background:linear-gradient(90deg,rgba(20,24,27,.9),rgba(20,24,27,.25))}@media(max-width:800px){.city .site-head{display:flex;align-items:center;justify-content:space-between}.city .brand{font-size:1rem;white-space:normal}.city .nav-disclosure{margin-left:1rem}.city .nav-disclosure .nav{margin:0}}

/* Illustrative tailoring process photographs */
.process-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0 2.5rem;grid-column:1/-1}.process-gallery figure{margin:0}.process-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.process-gallery figcaption{font-size:.72rem;line-height:1.5;margin:.5rem 0;color:#625b50}.process-gallery a{color:inherit}.hero--photo .hero-image{object-position:center}@media(max-width:650px){.process-gallery{grid-template-columns:1fr;gap:1.5rem}.process-gallery img{aspect-ratio:4/3}}

.home-photo{margin:1.7rem 0 .2rem}.home-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}.home-photo figcaption{font-size:.68rem;line-height:1.5;color:#5c5b53;margin-top:.45rem}.home-photo figcaption a{color:inherit}.city .home-wedding-hero .hero-image{object-position:center 42%}.city .home-wedding-hero:before{background:linear-gradient(90deg,rgba(22,25,26,.91),rgba(22,25,26,.22))}@media(max-width:650px){.home-photo img{aspect-ratio:4/3}.city .home-wedding-hero .hero-image{object-position:58% center}}

.fabric-focus{background:#282624;color:#f5f0e7;padding:clamp(54px,7vw,100px) clamp(24px,8vw,110px);margin:0}.fabric-focus>div{max-width:1040px;margin:auto}.fabric-focus-label{color:#d4bc86;font:600 .7rem/1.4 Arial,sans-serif;letter-spacing:.16em}.fabric-focus h2{font:400 clamp(2rem,4vw,3.6rem)/1.12 Georgia,serif;color:#f5f0e7;margin:22px 0}.fabric-focus p{max-width:850px;font:400 1rem/1.85 Arial,sans-serif;color:#f5f0e7}.fabric-focus a{display:inline-block;color:#f5f0e7;font:600 .85rem/1.5 Arial,sans-serif;text-underline-offset:5px;margin-top:12px}
