/* The Wedding Project — black, gold and warm photography. */
:root{color-scheme:dark;--ink:#e4c16c;--muted:#ad8e4b;--line:#30291b;--paper:#090909;--soft:#14130f}
body{background:#090909;color:var(--ink)}
::selection{background:#d6af53;color:#14130f}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #d6af53;outline-offset:4px}
.skip{background:#d6af53;color:#14130f}
.preview-strip{background:#1c1912;color:#ad8e4b;border-bottom:1px solid #30291b;font-size:8px;letter-spacing:1.6px;padding:6px 18px}
.site-header{background:#090909;border-color:#30291b;height:96px}
.brand img{filter:none;opacity:1}
.brand{color:#e4c16c}
.site-header nav{color:#bfa05b}
.site-header nav>a.active:not(.button){color:#e4c16c}
.count{background:#30291b;border-color:#4a3b20;color:#d6af53}
.button{background:transparent;color:#e4c16c;border-color:#4a3b20;border-radius:4px;transition:background .2s,border-color .2s,transform .2s}
.button:hover{background:#30291b;border-color:#8e733b;color:#e4c16c}
.button-dark,.button-white{background:#d6af53;color:#14130f;border-color:#d6af53}
.button-dark:hover,.button-white:hover{background:#e4c16c;border-color:#e4c16c;color:#14130f}
.icon-button{color:var(--ink)}
.text-link{border-color:#6a5229;color:#d6af53}
.text-link:hover{color:var(--gold-light);border-color:#e4c16c}
.directory-hero{background:#090909;border-color:#30291b;position:relative}
.directory-hero-inner{padding:33px 0 37px;gap:58px;grid-template-columns:1.15fr 1fr}
.directory-hero h1{font-size:53px;line-height:1.02;letter-spacing:-.8px;color:#e4c16c;margin-bottom:17px}
.directory-hero .eyebrow{color:#ad8e4b;letter-spacing:2.2px}
.directory-hero p:not(.eyebrow){color:#bfa05b;max-width:410px;line-height:1.9}
.directory-hero .text-link{font-size:10px}
.directory-hero-photo{height:233px;border:1px solid #4a3b20;border-radius:6px 38px 6px 6px;box-shadow:0 20px 45px #0005;background-position:82% 50%}
.directory-hero-photo:after{border-radius:inherit;background:linear-gradient(90deg,#0002,transparent 60%),linear-gradient(transparent 50%,#000a)}
.directory-body{padding-top:25px}
.directory-search{background:linear-gradient(115deg,#1c1912,#14130f);border-color:#30291b;border-radius:8px;box-shadow:inset 0 1px 0 #e4c16c06,0 15px 40px #0002;padding:21px 23px;margin-bottom:34px}
.field input,.field select,.field textarea{background:#14130f;color:#e4c16c;border-color:#4a3b20;border-radius:4px}
.field input::placeholder,.field textarea::placeholder{color:#8e733b;opacity:1}
.field>label{color:#bfa05b;font-weight:500}
.directory-search .field>label{font-size:10px;margin-bottom:2px}
.directory-search input,.directory-search select{height:47px;background:#0c0c0c;border-color:#4a3b20}
.search-input-wrap>svg{color:#bfa05b}
.directory-browse-heading{margin-bottom:21px;align-items:end}
.directory-browse-heading .eyebrow{font-size:8px;letter-spacing:2px;color:#8e733b;margin-bottom:8px}
.directory-browse-heading h2{font-family:var(--serif);font-size:34px;line-height:1.05;color:#e4c16c}
.category-nav-all{border:1px solid #6a5229;border-radius:30px;padding:10px 16px;background:transparent;color:#d6af53;display:inline-flex;align-items:center;gap:9px;font-size:10px;min-height:40px;flex-shrink:0}
.category-nav-all svg{width:16px;height:16px}
.category-nav-all[aria-pressed=true]{background:#d6af53;color:#1c1912;border-color:#d6af53}
.category-nav-all:hover{border-color:#d6af53}
.directory-group-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0}
.directory-group-nav .category-tile{position:relative;isolation:isolate;overflow:hidden;display:block;min-height:172px;padding:19px 21px 14px;border:1px solid #4a3b20;border-radius:9px;text-align:left;background:radial-gradient(ellipse at 93% 0%,#4a3b2066,transparent 69%),linear-gradient(135deg,#30291b,#14130f 72%);box-shadow:inset 0 1px 0 #e4c16c08,0 5px 14px #0003;color:#e4c16c;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s}
.category-tile:after{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(115deg,transparent 25%,#e4c16c05 48%,transparent 70%);opacity:0;transition:opacity .3s}
.directory-group-nav .category-tile:nth-child(2n){background:radial-gradient(ellipse at 90% 85%,#30291b70,transparent 66%),linear-gradient(140deg,#1c1912,#14130f)}
.directory-group-nav .category-tile:hover{background-color:#30291b;border-color:#8e733b;transform:translateY(-3px);box-shadow:inset 0 1px 0 #e4c16c12,0 12px 25px #0005}
.category-tile:hover:after{opacity:1}
.category-tile .category-tile-top{display:flex;justify-content:space-between;align-items:start;margin:0 0 17px;position:relative;z-index:1}
.category-tile .category-symbol{width:39px;height:39px;display:flex;align-items:center;justify-content:center;border:1px solid #6a52294d;border-radius:11px;background:linear-gradient(145deg,#e4c16c0a,#e4c16c02);box-shadow:inset 0 1px 0 #e4c16c08}
.category-tile .category-symbol svg{width:23px;height:23px;stroke-width:1.3;color:#d6af53}
.category-tile .category-number{font-size:9px;letter-spacing:1px;color:#8e733b;margin-top:2px}
.category-tile .category-watermark{display:block;position:absolute;right:-5px;top:19px;opacity:.055;pointer-events:none;transform:rotate(-12deg)}
.category-watermark svg{width:125px;height:125px;stroke-width:.7}
.category-tile .category-name{display:block;font-size:12px;line-height:1.4;font-weight:500;letter-spacing:.05px;position:relative;z-index:1;max-width:95%}
.category-tile .category-tile-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:7px;position:relative;z-index:1}
.category-tile .category-tile-bottom small{font-size:9px;letter-spacing:.4px;color:#ad8e4b;opacity:1;margin:0}
.tile-arrow{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #6a522966;border-radius:50%;transition:transform .2s,background .2s}
.tile-arrow svg{width:13px;height:13px;transform:rotate(-40deg)}
.category-tile:hover .tile-arrow{transform:rotate(40deg);background:#e4c16c0a}
.directory-group-nav .category-tile[aria-pressed=true]{background:radial-gradient(ellipse at 95% 0%,#e4c16c,transparent 80%),#d6af53;border-color:#d6af53;color:#1c1912;box-shadow:0 6px 24px #0005}
.category-tile[aria-pressed=true] .category-symbol{background:#e4c16c50;border-color:#4a3b2040}
.category-tile[aria-pressed=true] .category-symbol svg{color:#4a3b20}
.category-tile[aria-pressed=true] .category-number,.category-tile[aria-pressed=true] .category-tile-bottom small{color:#6a5229}
.category-tile[aria-pressed=true] .tile-arrow{border-color:#6a522977}
.directory-body .result-summary{margin:26px 0 30px;color:#ad8e4b;font-size:10px}
.directory-group{margin-bottom:36px}
.directory-group-heading{margin-bottom:17px;gap:13px;border-top:1px solid #30291b;padding-top:22px}
.directory-group-heading .group-icon{width:38px;height:38px;border:1px solid #4a3b20;border-radius:50%;background:#1c1912;color:#bfa05b}
.directory-group-heading .group-icon svg{width:20px;height:20px;stroke-width:1.3}
.directory-group-heading h2{font-size:31px;color:#e4c16c}
.directory-group-heading p{font-size:9px;color:#ad8e4b}
.group-total{border-color:#4a3b20;color:#bfa05b;border-radius:50%;background:#1c1912;width:29px;height:29px}
.directory-service-grid{gap:12px}
.service-card,.directory-service-grid .service-card{position:relative;overflow:hidden;isolation:isolate;border:1px solid #30291b;border-radius:8px;background:radial-gradient(ellipse at 100% 0%,#4a3b2043,transparent 60%),linear-gradient(145deg,#1c1912,#14130f);box-shadow:inset 0 1px 0 #e4c16c06,0 7px 20px #0003;min-height:206px;transition:transform .25s,border-color .25s,box-shadow .25s}
.service-card:before{content:'';position:absolute;top:0;left:20px;right:20px;height:1px;background:linear-gradient(90deg,transparent,#ad8e4b55,transparent);pointer-events:none}
.service-card:hover,.directory-service-grid .service-card:hover{background:radial-gradient(ellipse at 100% 0%,#6a52294d,transparent 65%),linear-gradient(145deg,#30291b,#1c1912);border-color:#8e733b;transform:translateY(-3px);box-shadow:inset 0 1px 0 #e4c16c0a,0 12px 28px #0006}
.service-card>a,.directory-service-grid .service-card>a{display:flex;flex-direction:column;position:relative;padding:20px 21px 16px;min-height:206px;height:100%}
.service-card .service-card-top{display:flex;gap:14px;align-items:center;margin-bottom:18px;padding-right:31px}
.service-card .service-symbol{width:43px;height:43px;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#e4c16c0a,#e4c16c02);border:1px solid #6a52294d;border-radius:12px;margin:0;color:#d6af53}
.service-symbol svg{width:24px;height:24px;stroke-width:1.3}
.service-number{font-size:8px;letter-spacing:1.2px;color:#8e733b}
.service-watermark{position:absolute;right:-3px;top:49px;pointer-events:none;z-index:-1;opacity:.035;transform:rotate(-12deg)}
.service-watermark svg{width:132px;height:132px;stroke-width:.8}
.service-card h3,.directory-service-grid .service-card h3{font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.1;color:#e4c16c;margin:0 0 12px;max-width:95%}
.service-card p{color:#ad8e4b;font-size:10px;line-height:1.65;margin-bottom:12px}
.directory-service-grid .service-card p{display:none}
.service-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e4c16c0d;margin-top:auto;padding-top:12px;color:#ad8e4b;font-size:9px;letter-spacing:.5px}
.service-card-bottom .tile-arrow{width:23px;height:23px;color:#d6af53;border-color:#6a522966}
.service-card:hover .service-card-bottom{color:#d6af53}
.service-card:hover .tile-arrow{background:#bfa05b12;border-color:#8e733b55;transform:translateX(2px)}
.service-card .save-button,.directory-service-grid .service-card .save-button{background:#e4c16c04;border:1px solid #e4c16c12;color:#ad8e4b;top:14px;right:13px;width:29px;height:29px;border-radius:50%;z-index:2}
.service-card .save-button svg,.directory-service-grid .save-button svg{color:#ad8e4b;width:13px;height:13px}
.service-card .save-button:hover{color:#e4c16c;border-color:#ad8e4b;background:#ad8e4b18}
.service-card .save-button.saved,.directory-service-grid .service-card .save-button.saved{background:#d6af53;border-color:#d6af53}
.service-card .save-button.saved svg,.directory-service-grid .save-button.saved svg{color:#30291b}
.directory-vendor-banner{border-color:#4a3b20;border-radius:8px;background:radial-gradient(ellipse at 95% 30%,#4a3b2055,transparent 60%),#1c1912;padding:30px 33px;margin-top:45px}
.directory-vendor-banner .eyebrow{color:#ad8e4b}
.directory-vendor-banner p:not(.eyebrow){color:#ad8e4b}
.page-intro{background:linear-gradient(110deg,#1c1912,#14130f);border-color:#30291b}
.footer{background:#0b0b0b;border-color:#30291b}
.section-soft,.supplier-aside,.filters-box,.form-panel,.profile-contact,.draft-card,.vendor-card{background:#1c1912;border-color:#30291b;border-radius:7px}
.supplier-aside,.supplier-aside p{color:#ad8e4b}
.supplier-aside h2{color:#d6af53}
.info-banner{background:#30291b;border-color:#4a3b20;color:#bfa05b;border-radius:5px}
.form-panel h2,.dialog-inner h2{color:#e4c16c}
.additional-services{border-color:#4a3b20;border-radius:4px;background:#14130f}
.additional-services summary{color:#d6af53}
.checkbox-label input{accent-color:#bfa05b}
.filter-tag{background:#1c1912;color:#bfa05b;border-color:#4a3b20;border-radius:3px}
.filter-tag:hover{border-color:#ad8e4b}
.filter-tag[aria-pressed=true]{color:#14130f;background:#d6af53;border-color:#d6af53}
.empty{background:#14130f;border-color:#4a3b20;border-radius:8px}
.empty .empty-icon{color:#ad8e4b;border-color:#6a5229;background:#1c1912}
.status{background:#30291b;border-color:#4a3b20;color:#bfa05b}
.placeholder-gallery>div{background:#1c1912;border-color:#4a3b20;color:#ad8e4b;border-radius:6px}
.planning-note{background:#1c1912;border-left-color:#8e733b;color:#bfa05b}
.vendor-benefits strong{color:#d6af53}
.vendor-benefits span,.hint,.form-panel .hint{color:#ad8e4b}
dialog{background:#14130f;color:#d6af53;border:1px solid #4a3b20;border-radius:9px;box-shadow:0 30px 90px #0009}
dialog::backdrop{background:#000b}
.dialog-close{color:#d6af53}
.toast{background:#d6af53;color:#1c1912;border:1px solid #d6af53}
@media(max-width:1020px){.directory-hero-inner{gap:35px}.directory-hero h1{font-size:46px}.directory-group-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.directory-group-nav .category-tile{padding:17px 16px 13px;min-height:169px}.category-tile .category-name{font-size:11px}.directory-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card h3,.directory-service-grid .service-card h3{font-size:25px}.service-card>a,.directory-service-grid .service-card>a{padding:18px 18px 14px}}
@media(max-width:760px){.site-header{height:80px}.site-header nav{top:80px;background:#14130f;border-color:#4a3b20;box-shadow:0 15px 30px #0007}.preview-strip{font-size:7px;letter-spacing:.7px}.directory-hero-inner{grid-template-columns:1fr;padding:27px 0 28px}.directory-hero h1{font-size:40px;margin-bottom:14px}.directory-hero .eyebrow{font-size:7px;letter-spacing:1.7px}.directory-hero p:not(.eyebrow){font-size:10px;line-height:1.8}.directory-hero .text-link{font-size:9px}.directory-body{padding-top:20px}.directory-search{padding:17px;gap:14px;margin-bottom:27px;border-radius:7px}.directory-search input,.directory-search select{font-size:10px}.directory-browse-heading{align-items:center;gap:10px;margin-bottom:17px}.directory-browse-heading .eyebrow{font-size:6px;letter-spacing:1.5px;margin-bottom:7px}.directory-browse-heading h2{font-size:28px;max-width:210px}.category-nav-all{padding:9px 11px;font-size:8px;gap:6px;min-height:36px}.category-nav-all svg{width:13px;height:13px}.directory-group-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.directory-group-nav .category-tile{min-height:159px;border:1px solid #4a3b20;padding:16px 15px 12px}.category-tile .category-tile-top{margin-bottom:16px}.category-tile .category-symbol{width:35px;height:35px;border-radius:10px}.category-tile .category-symbol svg{width:21px;height:21px}.category-tile .category-name{font-size:10px;line-height:1.5;max-width:100%;min-height:30px}.category-tile .category-number{font-size:8px}.category-tile .category-tile-bottom{margin-top:6px}.category-tile .category-tile-bottom small{font-size:8px}.category-tile .category-watermark{right:-24px;top:20px}.category-watermark svg{width:114px;height:114px}.tile-arrow{width:22px;height:22px}.directory-body .result-summary{font-size:8px;margin:24px 0 21px}.directory-group-heading{padding-top:19px;gap:10px;margin-bottom:15px}.directory-group-heading h2{font-size:27px}.directory-group-heading p{font-size:8px;max-width:245px;line-height:1.6}.group-total{width:24px;height:24px;font-size:9px;flex-shrink:0}.directory-group-heading .group-icon{display:none}.directory-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-card,.directory-service-grid .service-card{min-height:199px;border-radius:7px}.service-card>a,.directory-service-grid .service-card>a{min-height:199px;padding:17px 14px 12px}.service-card .service-card-top{margin-bottom:17px;gap:8px;padding-right:24px}.service-card .service-symbol{width:36px;height:36px;flex-shrink:0;border-radius:10px}.service-symbol svg{width:21px;height:21px}.service-number{font-size:7px;letter-spacing:.4px}.service-card h3,.directory-service-grid .service-card h3{font-size:24px;line-height:1.04;margin-bottom:13px;max-width:100%}.service-card .save-button,.directory-service-grid .service-card .save-button{width:26px;height:26px;right:9px;top:13px}.service-card .save-button svg{width:12px;height:12px}.service-card-bottom{font-size:7px;letter-spacing:.1px;padding-top:11px}.service-card-bottom .tile-arrow{width:21px;height:21px;flex-shrink:0}.service-card-bottom .tile-arrow svg{width:12px;height:12px}.service-watermark{right:-18px;top:50px}.service-watermark svg{width:110px;height:110px}.directory-vendor-banner{padding:25px 22px;margin-top:35px}.directory-vendor-banner h2{font-size:29px}.directory-vendor-banner .eyebrow{font-size:7px}.service-grid:not(.directory-service-grid) .service-card{min-height:210px}.footer-top>p{color:#bfa05b}}
@media(hover:none){.category-tile:hover,.directory-group-nav .category-tile:hover,.service-card:hover,.directory-service-grid .service-card:hover{transform:none}}

/* Bold geometric labels and unframed Phosphor icons. */
:root{--tile-font:'Sora','Montserrat',Arial,sans-serif}
svg.pictogram{fill:currentColor;stroke:none;stroke-width:0}
.category-tile,.service-card{font-family:var(--tile-font)}
.directory-group-nav .category-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:195px;padding:21px 22px 16px}
.category-tile .category-name{font-family:var(--tile-font);font-size:20px;line-height:1.2;font-weight:700;letter-spacing:-.35px;max-width:95%;color:#e4c16c}
.category-tile .category-tile-top{margin-bottom:18px;align-items:center;width:100%}
.category-tile .category-symbol,.category-tile[aria-pressed=true] .category-symbol,.service-card .service-symbol,.directory-group-heading .group-icon{width:46px;height:46px;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;justify-content:flex-start;color:#d6af53}
.category-tile .category-symbol svg{width:36px;height:36px;color:#d6af53}
.category-tile .category-number{color:#ad8e4b;font-size:10px;letter-spacing:1.2px}
.category-tile .category-tile-bottom{margin-top:auto;padding-top:12px;width:100%}
.category-tile .category-tile-bottom small{font-family:var(--tile-font);font-size:11px;letter-spacing:.1px;color:#bfa05b}
.category-tile[aria-pressed=true] .category-symbol svg,.category-tile[aria-pressed=true] .category-name{color:#1c1912}
.category-tile .category-watermark,.service-watermark{display:none}
.service-card h3,.directory-service-grid .service-card h3{font-family:var(--tile-font);font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.35px;margin-bottom:18px;color:#e4c16c;max-width:95%}
.service-card .service-card-top{margin-bottom:19px;gap:10px}
.service-symbol svg{width:34px;height:34px}
.service-number{font-family:var(--tile-font);color:#ad8e4b;letter-spacing:1px;font-size:10px}
.service-card-bottom{font-family:var(--tile-font);font-size:11px;font-weight:500;letter-spacing:0;color:#bfa05b}
.tile-arrow,.service-card-bottom .tile-arrow{border:0;border-radius:0;background:transparent;width:25px;height:25px}
.tile-arrow svg{width:22px;height:22px}
.service-card-bottom .tile-arrow svg{width:20px;height:20px}
.category-tile:hover .tile-arrow,.service-card:hover .tile-arrow{background:transparent;border:0}
.service-card .save-button,.directory-service-grid .service-card .save-button,.service-card .save-button.saved,.directory-service-grid .service-card .save-button.saved{border:0;border-radius:0;background:transparent}
.service-card .save-button svg,.directory-service-grid .save-button svg{width:19px;height:19px;color:#ad8e4b}
.service-card .save-button.saved svg,.directory-service-grid .save-button.saved svg{color:#e4c16c}
.service-card .save-button.saved svg path{stroke:currentColor;stroke-width:9px}
.directory-group-heading .group-icon svg{width:28px;height:28px}
.category-nav-all svg{width:18px;height:18px}
@media(max-width:1020px){.directory-group-nav .category-tile{padding:19px 17px 14px}.category-tile .category-name{font-size:18px}.service-card h3,.directory-service-grid .service-card h3{font-size:20px}}
@media(max-width:760px){.directory-group-nav .category-tile{padding:17px 15px 13px;min-height:185px}.category-tile .category-symbol{width:40px;height:40px}.category-tile .category-symbol svg{width:33px;height:33px}.category-tile .category-tile-top{margin-bottom:16px}.category-tile .category-name{font-size:16px;font-weight:700;line-height:1.25;letter-spacing:-.2px;min-height:40px;max-width:100%}.category-tile .category-tile-bottom{margin-top:9px}.category-tile .category-tile-bottom small{font-size:10px}.category-tile .category-number{font-size:9px}.service-card .service-symbol{width:37px;height:37px}.service-symbol svg{width:31px;height:31px}.service-card h3,.directory-service-grid .service-card h3{font-size:19px;line-height:1.2;letter-spacing:-.25px;margin-bottom:18px}.service-card .service-card-top{gap:8px;margin-bottom:18px}.service-number{font-size:9px}.service-card-bottom{font-size:10px}.service-card .save-button svg,.directory-service-grid .save-button svg{width:18px;height:18px}.category-nav-all svg{width:15px;height:15px}}

/* Shared black-and-gold accents. */
:root{--gold:#d6af53;--gold-light:#e4c16c;--gold-muted:#bfa05b;--ink:var(--gold-light);--muted:var(--gold-muted);--line:#40351d}
.directory-hero-photo>span{color:var(--gold-light)}
.button-dark,.button-white{background:linear-gradient(115deg,#edcf7d 0%,#d6af53 52%,#c59737 100%);border-color:#dfba5f;color:#121009}
.button-dark:hover,.button-white:hover{background:linear-gradient(115deg,#f5da95,#e5bf65);border-color:#f1d184;color:#121009}
.category-nav-all[aria-pressed=true]{background:#d6af53;border-color:#d6af53;color:#141006}
.directory-group-nav .category-tile[aria-pressed=true]{background:radial-gradient(ellipse at 95% 0%,#f0d78c,transparent 80%),#cfa74c;border-color:#e5c16b;color:#191307}
.category-tile[aria-pressed=true] .category-name,.category-tile[aria-pressed=true] .category-symbol svg{color:#191307}
.category-tile[aria-pressed=true] .category-number,.category-tile[aria-pressed=true] .category-tile-bottom small{color:#44330f}
.category-tile[aria-pressed=true] .tile-arrow{color:#191307}
.category-tile:focus-visible,.service-card a:focus-visible{outline-color:#edc96c}
.checkbox-label input{accent-color:#d6af53}

/* Flat black surfaces and a cohesive Sora display system. */
.directory-hero h1{font-family:var(--tile-font);font-size:44px;font-weight:600;line-height:1.14;letter-spacing:-1.6px;max-width:590px}
.directory-browse-heading h2,.directory-group-heading h2{font-family:var(--tile-font);font-weight:600;letter-spacing:-.6px}
.directory-browse-heading h2{font-size:27px;line-height:1.2}
.directory-group-heading h2{font-size:25px;line-height:1.25}
.category-tile .category-name{font-size:18px;font-weight:600;line-height:1.35;letter-spacing:-.35px}
.service-card h3,.directory-service-grid .service-card h3{font-size:20px;font-weight:600;line-height:1.35;letter-spacing:-.4px}
.directory-group-nav .category-tile,.directory-group-nav .category-tile:nth-child(2n),.service-card,.directory-service-grid .service-card{background:#0e0e0e;border-color:#393322;box-shadow:0 8px 20px #0004}
.directory-group-nav .category-tile:hover,.service-card:hover,.directory-service-grid .service-card:hover{background:#151515;border-color:#b9913d;box-shadow:0 10px 25px #0006}
.category-tile:after,.service-card:before{display:none}
.directory-group-nav .category-tile[aria-pressed=true]{background:#181818;border-color:#d6af53;box-shadow:inset 0 0 0 1px #d6af53}
.category-tile[aria-pressed=true] .category-name,.category-tile[aria-pressed=true] .category-symbol svg,.category-tile[aria-pressed=true] .tile-arrow{color:var(--gold-light)}
.category-tile[aria-pressed=true] .category-number,.category-tile[aria-pressed=true] .category-tile-bottom small{color:var(--gold-muted)}
.directory-search,.directory-vendor-banner,.page-intro,.supplier-aside,.filters-box,.form-panel,.profile-contact,.draft-card,.vendor-card{background:#101010}
.preview-strip,.footer{background:#0b0b0b}
.button-dark,.button-white{background:#d6af53}
.button-dark:hover,.button-white:hover{background:#e7c26a}
@media(max-width:1020px){.directory-hero h1{font-size:38px;letter-spacing:-1.25px}.category-tile .category-name{font-size:16px}.service-card h3,.directory-service-grid .service-card h3{font-size:18px}}
@media(max-width:760px){.directory-hero h1{font-size:32px;line-height:1.17;letter-spacing:-1.15px}.directory-browse-heading h2{font-size:23px;letter-spacing:-.6px}.directory-group-heading h2{font-size:23px;letter-spacing:-.5px}.category-tile .category-name{font-size:14px;font-weight:600;line-height:1.4;letter-spacing:-.25px}.service-card h3,.directory-service-grid .service-card h3{font-size:17px;font-weight:600;line-height:1.35;letter-spacing:-.3px}}

/* Cinematic horizontal strips, with live text over generated photography. */
.directory-body{container-type:inline-size}
:root{--tile-font:'Montserrat',Arial,sans-serif}
.wedding-banner{isolation:isolate;position:relative;overflow:hidden;background:#090909;display:flex;align-items:center;color:var(--gold-light);border-top:1px solid #3b301c;border-bottom:1px solid #3b301c}
.wedding-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.wedding-banner:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0009 0%,#0005 38%,#0001 72%)}
.wedding-banner-hero{min-height:430px}
.wedding-banner-content{position:relative;padding-top:40px;padding-bottom:40px}
.wedding-banner .eyebrow{font-size:9px;letter-spacing:2.2px;color:#d3b574;margin-bottom:17px}
.wedding-banner h1,.wedding-banner h2{font-family:var(--sans);font-size:34px;font-weight:500;line-height:1.35;letter-spacing:1.1px;text-transform:uppercase;color:#e7c778;max-width:650px;margin:0}
.wedding-banner h2{font-size:29px;max-width:600px}
.banner-rule{display:block;width:65px;height:1px;background:#cfa84b;margin:21px 0}
.wedding-banner .banner-description{font-family:var(--sans);color:#cab786;line-height:1.9;font-size:11px;max-width:540px;margin-bottom:23px}
.banner-actions{display:flex;gap:12px;flex-wrap:wrap}
.wedding-banner .button{border-radius:0;padding:13px 22px;min-height:46px;font-size:10px;letter-spacing:.2px}
.wedding-banner .banner-outline{background:#0808083d;border-color:#b59651;color:#e7c778}
.wedding-banner .banner-outline:hover{background:#d6af5314;border-color:#e7c778}
.banner-image-note{position:absolute;right:25px;bottom:17px;letter-spacing:1.6px;font-size:6px;color:#cdb98899}
.wedding-banner-details{min-height:300px;margin:35px 0 43px;border:1px solid #48391e;border-left:0;border-right:0}
.wedding-banner-details:before{background:linear-gradient(90deg,#0000 15%,#0003 42%,#0009 100%)}
.wedding-banner-details .wedding-banner-content{width:49%;margin-left:auto;padding:33px 35px 33px 25px}
.wedding-banner-details h2{font-size:25px;letter-spacing:.6px}
.wedding-banner-details .eyebrow{font-size:8px;letter-spacing:1.8px}
.wedding-banner-details .banner-description{font-size:10px;line-height:1.8}
.wedding-banner-details .banner-rule{margin:16px 0}
.wedding-banner-details .button{padding:11px 17px;min-height:41px;font-size:9px}
.wedding-banner-vendors{min-height:355px;margin-top:48px}
.wedding-banner-vendors .wedding-banner-image{object-position:center 48%}
.wedding-banner-vendors:before{background:linear-gradient(90deg,#0008,#0003 53%,#0000)}
.directory-browse-heading h2,.directory-group-heading h2{font-family:var(--sans);font-size:24px;font-weight:500;letter-spacing:.65px;line-height:1.3;text-transform:uppercase}
.directory-group-heading h2{font-size:22px}
.category-tile .category-name,.service-card h3,.directory-service-grid .service-card h3{font-family:var(--tile-font);font-size:15px;font-weight:600;line-height:1.5;letter-spacing:.1px}
.category-tile .category-name{font-size:14px}
.directory-group-nav .category-tile,.directory-group-nav .category-tile:nth-child(2n),.service-card,.directory-service-grid .service-card{background:radial-gradient(ellipse at 95% 100%,#d6af530b 0%,#d6af5300 66%),#0d0d0d;border-color:#3b3321}
.directory-group-nav .category-tile:hover,.service-card:hover,.directory-service-grid .service-card:hover{background:radial-gradient(ellipse at 90% 100%,#d6af5314 0%,#d6af5300 70%),#111110;border-color:#9e803e}
.directory-group-nav .category-tile[aria-pressed=true]{background:radial-gradient(ellipse at 95% 100%,#d6af531a 0%,#d6af5300 75%),#141311;border-color:#d6af53}
@media(min-width:1700px){.wedding-banner-hero{min-height:470px}.wedding-banner h1{font-size:39px}}
@media(max-width:1020px){.wedding-banner-hero{min-height:395px}.wedding-banner h1{font-size:29px;max-width:550px}.wedding-banner h2{font-size:27px}.wedding-banner-details h2{font-size:22px}.wedding-banner-details .wedding-banner-content{width:52%;padding-right:25px}.directory-group-heading h2{font-size:21px}.category-tile .category-name{font-size:13px}}
@media(max-width:760px){.wedding-banner-hero{min-height:410px}.wedding-banner-hero .wedding-banner-image{object-position:76% center}.wedding-banner-hero:before{background:linear-gradient(90deg,#000d,#000b 68%,#0008)}.wedding-banner-content{padding-top:34px;padding-bottom:34px}.wedding-banner .eyebrow{font-size:7px;letter-spacing:1.5px;max-width:290px}.wedding-banner h1{font-size:27px;font-weight:500;line-height:1.36;letter-spacing:.4px;max-width:355px}.wedding-banner h2{font-size:26px;letter-spacing:.4px}.banner-rule{margin:19px 0;width:51px}.wedding-banner .banner-description{font-size:10px;max-width:325px;line-height:1.8}.wedding-banner .banner-description br{display:none}.banner-actions{gap:10px}.wedding-banner .button{font-size:9px;padding:12px 15px;min-height:42px}.banner-image-note{right:15px;bottom:12px;font-size:5px}.wedding-banner-details{min-height:320px;margin:27px 0 32px}.wedding-banner-details .wedding-banner-image{object-position:35% center;opacity:.75}.wedding-banner-details:before{background:linear-gradient(90deg,#000a,#0008)}.wedding-banner-details .wedding-banner-content{width:100%;margin:0;padding:28px 22px}.wedding-banner-details h2{font-size:22px;line-height:1.4}.wedding-banner-details .banner-description{font-size:10px;max-width:270px}.wedding-banner-vendors{min-height:340px;margin-top:32px}.wedding-banner-vendors .wedding-banner-image{object-position:72% center}.wedding-banner-vendors:before{background:linear-gradient(90deg,#000d,#0007)}.directory-browse-heading h2{font-size:20px;letter-spacing:.4px;max-width:220px}.directory-group-heading h2{font-size:20px;letter-spacing:.4px}.category-tile .category-name{font-size:12px;line-height:1.6;letter-spacing:0}.service-card h3,.directory-service-grid .service-card h3{font-size:14px;line-height:1.5;letter-spacing:0}}

/* Break the gifting strip out of the directory column without scrollbar overflow. */
.wedding-banner-details{width:100cqw;margin-inline:calc((100% - 100cqw)/2)}


/* Lighter directory labels and a different restrained gold glow for each tile. */
.category-tile .category-name{font-family:var(--tile-font);font-size:15.5px;font-weight:300;line-height:1.55;letter-spacing:.45px}
.service-card h3,.directory-service-grid .service-card h3{font-family:var(--tile-font);font-size:16.5px;font-weight:300;line-height:1.5;letter-spacing:.35px}
.category-tile .category-tile-bottom small{font-weight:400;letter-spacing:.35px}
.service-card-bottom{font-weight:400;letter-spacing:.3px;font-size:10px}
.directory-group-nav .category-tile,.directory-group-nav .category-tile:nth-child(2n),.service-card,.directory-service-grid .service-card{background:radial-gradient(ellipse at var(--glow-x,95%) var(--glow-y,100%),rgb(214 175 83 / var(--glow-opacity,.04)),transparent var(--glow-spread,70%)),linear-gradient(var(--glow-angle,130deg),#d6af5303,transparent 56%),#0d0d0d}
.directory-group-nav .category-tile:hover,.service-card:hover,.directory-service-grid .service-card:hover{background:radial-gradient(ellipse at var(--glow-x,95%) var(--glow-y,100%),rgb(214 175 83 / calc(var(--glow-opacity,.04) + .025)),transparent var(--glow-spread,70%)),linear-gradient(var(--glow-angle,130deg),#d6af5305,transparent 56%),#111110}
.directory-group-nav .category-tile[aria-pressed=true]{background:radial-gradient(ellipse at var(--glow-x,95%) var(--glow-y,100%),rgb(214 175 83 / calc(var(--glow-opacity,.04) + .025)),transparent var(--glow-spread,70%)),#141311}
@media(max-width:1020px){.category-tile .category-name{font-size:14px}.service-card h3,.directory-service-grid .service-card h3{font-size:15.5px}}
@media(max-width:760px){.category-tile .category-name{font-size:13.5px;font-weight:300;line-height:1.6;letter-spacing:.3px}.service-card h3,.directory-service-grid .service-card h3{font-size:15px;font-weight:300;line-height:1.5;letter-spacing:.25px}.service-card-bottom{font-size:9px}}

/* Match the footer tagline to the gold uppercase banner typography. */
.footer-top>p{font-family:var(--sans);font-size:19px;font-weight:500;line-height:1.55;letter-spacing:1.1px;text-transform:uppercase;color:#e7c778}
@media(max-width:760px){.footer-top>p{font-size:14px;letter-spacing:.6px;line-height:1.6}}

