:root{--ink:#1d211e;--green:#28332c;--clay:#a6523f;--gold:#d0a56f;--paper:#f4efe7;--cream:#fbf8f2;--line:rgba(29,33,30,.16);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.eyebrow{margin:0 0 13px;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:600}.topbar{height:34px;background:var(--ink);color:#f7ead8;display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.16em;font-size:.64rem}.site-nav{height:98px;background:var(--green);color:#fff;display:flex;align-items:center}.nav-inner{width:min(1240px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.nav-links{display:flex;align-items:center;gap:28px}.nav-links.right{justify-content:flex-end}.nav-links>a,.price-menu summary{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.nav-links a:hover,.price-menu summary:hover{color:#f1d2aa}.brand img{width:108px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.45))}.price-menu{position:relative}.price-menu summary{list-style:none;cursor:pointer}.price-menu summary::-webkit-details-marker{display:none}.price-menu summary:after{content:" +"}.price-menu[open] summary:after{content:" −"}.price-options{position:absolute;z-index:20;top:calc(100% + 18px);left:50%;transform:translateX(-50%);width:190px;padding:8px;background:var(--cream);color:var(--ink);box-shadow:0 16px 42px #0004}.price-options a{display:block;padding:11px 13px}.price-options a+a{border-top:1px solid var(--line)}
.vendor-hero{min-height:640px;display:grid;grid-template-columns:1.06fr .94fr;background:var(--clay);color:#fff}.hero-image{min-height:640px}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-copy{padding:clamp(60px,8vw,120px);display:flex;flex-direction:column;justify-content:center}.hero-copy h1{font:500 clamp(3.7rem,7vw,7rem)/.88 var(--serif);letter-spacing:-.045em;margin:0}.hero-copy>p:not(.eyebrow){max-width:520px;font:400 1.35rem/1.5 var(--serif)}.text-link{align-self:flex-start;margin-top:20px;border-bottom:1px solid;padding-bottom:5px;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem}.directory,.preferred{padding:105px 0}.directory{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-head h2{font:500 clamp(3rem,5vw,5rem)/.95 var(--serif);letter-spacing:-.035em;margin:0}.section-head>p{max-width:440px;color:#606660}.category-grid{display:grid;grid-template-columns:repeat(4,1fr)}.category{min-height:285px;padding:28px;border:1px solid var(--line);margin:-1px 0 0 -1px;background:var(--cream);display:flex;flex-direction:column;justify-content:flex-end;transition:.3s;position:relative;overflow:hidden}.category span{position:absolute;top:24px;right:25px;font-size:.65rem;letter-spacing:.15em}.category h3{font:500 2rem/1.05 var(--serif);margin:0 0 9px}.category p{font-size:.82rem;margin:0;color:#626862}.category:hover{transform:translateY(-5px);box-shadow:0 20px 40px #332d2418;z-index:2}.category.clay{background:var(--clay);color:#fff}.category.gold{background:var(--gold)}.category.green{background:var(--green);color:#fff}.category.clay p,.category.green p{color:#eee}.category.photo,.category.image-two,.category.image-three{color:#fff;background-size:cover;background-position:center}.category.photo{background-image:linear-gradient(#1113,#111b),url('/assets/gallery-professional/photo-05.webp')}.category.image-two{background-image:linear-gradient(#1112,#111c),url('/assets/gallery-professional/photo-22.webp')}.category.image-three{background-image:linear-gradient(#1112,#111c),url('/assets/gallery-professional/photo-35.webp')}.category.photo p,.category.image-two p,.category.image-three p{color:#eee}.preferred{background:var(--cream)}.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.partner-grid article{padding:38px 40px;border-bottom:1px solid var(--line)}.partner-grid article:not(.featured-partner):nth-child(even){border-right:1px solid var(--line)}.partner-grid span{color:var(--clay);text-transform:uppercase;letter-spacing:.14em;font-size:.65rem}.partner-grid h3{font:500 2.3rem/1 var(--serif);margin:14px 0}.partner-grid p{color:#626862;max-width:430px}.partner-grid a{display:inline-block;margin-top:15px;border-bottom:1px solid;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.partner-grid .featured-partner{grid-column:1/-1;display:grid;grid-template-columns:.82fr 1.18fr;padding:0;background:var(--green);color:#fff;border-right:0}.featured-montage{display:grid;grid-template-columns:30.5fr 32.6fr 36.9fr;gap:3px;align-items:start;overflow:hidden;background:#f7f2ea;padding:3px}.featured-montage:after{display:none}.montage-column{display:grid;gap:3px;align-content:start}.montage-photo{display:block;width:100%;background-image:url('/assets/true-photography-montage.png');background-repeat:no-repeat;background-color:#222;box-shadow:none}.true-01{aspect-ratio:297/449;background-size:303.704% auto;background-position:0 0}.true-02{aspect-ratio:297/448;background-size:303.704% auto;background-position:0 40.87%}.true-03{aspect-ratio:297/199;background-size:303.704% auto;background-position:0 66.57%}.true-04{aspect-ratio:297/449;background-size:303.704% auto;background-position:0 99.91%}.true-05{aspect-ratio:297/198;background-size:303.704% auto;background-position:49.752% 0}.true-06{aspect-ratio:297/202;background-size:303.704% auto;background-position:49.752% 14.87%}.true-07{aspect-ratio:297/199;background-size:303.704% auto;background-position:49.752% 29.89%}.true-08{aspect-ratio:297/201;background-size:303.704% auto;background-position:49.752% 44.86%}.true-09{aspect-ratio:297/445;background-size:303.704% auto;background-position:49.752% 73.04%}.true-10{aspect-ratio:297/199;background-size:303.704% auto;background-position:49.752% 92.84%}.true-11{aspect-ratio:300/198;background-size:300.667% auto;background-position:100% 0}.true-12{aspect-ratio:300/451;background-size:300.667% auto;background-position:100% 18.22%}.true-13{aspect-ratio:300/445;background-size:300.667% auto;background-position:100% 59.06%}.true-14{aspect-ratio:300/196;background-size:300.667% auto;background-position:100% 81.30%}.featured-copy{padding:clamp(45px,6vw,75px);display:flex;flex-direction:column;justify-content:center}.partner-grid .featured-copy span{color:#e7c796}.partner-grid .featured-copy h3{font-size:clamp(3rem,5vw,5rem);letter-spacing:-.035em}.partner-grid .featured-copy p{color:#d6ddd7;font-size:1rem;max-width:570px}.partner-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.partner-grid .partner-primary{background:var(--clay);border:0;color:#fff;padding:14px 18px}.vendor-cta{padding:100px 0;background:var(--gold);text-align:center}.vendor-cta h2{font:500 clamp(3rem,6vw,5.4rem)/.94 var(--serif);margin:0 auto 18px;max-width:840px}.vendor-cta>div>p:not(.eyebrow){max-width:570px;margin:0 auto 28px}.btn{display:inline-flex;min-height:51px;padding:0 25px;align-items:center;background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}
.testimonials{background:var(--green);color:#fff;padding:88px 0}.testimonial-shell{display:grid;grid-template-columns:.35fr 1fr;gap:clamp(45px,8vw,95px)}.testimonial-label h2{font:500 clamp(2.5rem,4.4vw,4rem)/.98 var(--serif);margin:0 0 18px}.testimonial-rating{color:#e5c79f;font-size:1.35rem}.testimonial-source{display:inline-block;margin-top:15px;color:#bfc7c0;font-size:.68rem;border-bottom:1px solid #fff5}.testimonial-stage{position:relative;min-height:195px}.testimonial-slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(12px);pointer-events:none;transition:.55s}.testimonial-slide.active{opacity:1;transform:none}.testimonial-slide blockquote{margin:0;font:400 clamp(2rem,3.8vw,3.35rem)/1.08 var(--serif)}.testimonial-slide cite{margin-top:21px;font-style:normal;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:#d1d7d2}.testimonial-controls{display:flex;gap:9px;align-items:center;margin-top:25px}.testimonial-dot{width:30px;height:3px;padding:0;border:0;background:#fff4}.testimonial-dot.active{background:var(--gold)}.testimonial-pause{margin-left:10px;border:0;background:none;color:#d9ddd9;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}footer{padding:54px 0 22px;background:var(--ink);color:#eae7df}.footer-row{display:flex;justify-content:space-between;align-items:end}.footer-brand{font:500 2.3rem/1 var(--serif)}.footer-meta{color:#9da29e;text-align:right;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.social-links{display:flex;gap:9px;margin-top:18px}.social-link{width:34px;height:34px;border:1px solid #fff7;display:grid;place-items:center;font-weight:600}
@media(max-width:900px){.nav-links{display:none}.nav-inner{display:flex;justify-content:center}.brand img{width:90px}.vendor-hero{grid-template-columns:1fr}.hero-image{min-height:500px}.hero-copy{padding:75px 48px}.category-grid{grid-template-columns:repeat(2,1fr)}.partner-grid .featured-partner{grid-template-columns:1fr}.featured-image{min-height:430px}.testimonial-shell{grid-template-columns:1fr}.testimonial-stage{min-height:220px}}
@media(max-width:620px){.wrap{width:calc(100% - 28px)}.topbar{height:32px;font-size:.55rem;text-align:center}.site-nav{height:80px}.brand img{width:76px}.hero-image{min-height:430px}.hero-copy{padding:60px 22px}.hero-copy h1{font-size:4rem}.directory,.preferred{padding:74px 0}.section-head{align-items:start;flex-direction:column}.category-grid,.partner-grid{grid-template-columns:1fr}.category{min-height:235px}.partner-grid article:not(.featured-partner):nth-child(even){border-right:0}.featured-image{min-height:370px}.vendor-cta{padding:74px 0}.testimonials{padding:68px 0}.testimonial-stage{min-height:240px}.testimonial-slide blockquote{font-size:2.1rem}.footer-row{align-items:start;flex-direction:column;gap:30px}.footer-meta{text-align:left}}

/* Preferred vendor directory */
.vendor-group{scroll-margin-top:110px;margin-top:64px}.vendor-group>h2{font:500 clamp(2.1rem,4vw,3.3rem)/1.1 var(--serif);margin:0 0 24px;letter-spacing:-.025em}.vendor-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.partner-grid .vendor-links a{margin-top:8px;min-height:30px;overflow-wrap:anywhere;letter-spacing:.04em}.partner-grid .vendor-links .vendor-email{text-transform:none;font-size:.82rem}.vendor-contact{margin:0!important}.vendor-group .partner-grid article{border-right:0}.vendor-group .partner-grid article:nth-child(odd):not(.featured-partner){border-right:1px solid var(--line)}.vendor-group a:focus-visible{outline:2px solid var(--clay);outline-offset:4px}@media(max-width:620px){.vendor-group{margin-top:45px}.vendor-group .partner-grid article{padding:28px 16px;border-right:0!important}.vendor-group .partner-grid .featured-partner{padding:0}.vendor-links a{min-height:44px!important;display:flex;align-items:center}.featured-copy{padding:32px 22px}}

/* Logo panels retain the vendors' original artwork and proportions. */
.vendor-group .partner-grid{gap:24px;border:0;align-items:stretch}.vendor-group .partner-grid .vendor-card{padding:0;border:1px solid var(--line)!important;background:#fff;overflow:hidden}.vendor-logo-panel{height:195px;padding:26px;background:#f3f0e9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center}.vendor-logo-panel img{width:auto;max-width:100%;height:auto;max-height:145px;object-fit:contain}.vendor-logo-panel.dark{background:var(--green)}.vendor-logo-panel.name-panel{background:#e8e0d4;color:var(--green);font:500 clamp(1.7rem,3vw,2.3rem)/1.2 var(--serif);text-align:center;letter-spacing:.015em}.vendor-card-copy{padding:28px 32px}.vendor-card-copy h3{margin-top:0}.vendor-card-copy p{max-width:none}@media(max-width:620px){.vendor-logo-panel{height:175px;padding:22px}.vendor-logo-panel img{max-height:130px}.vendor-card-copy{padding:25px 22px}}
