@import url("/visito-v39/fonts.css?v=stable-20261009");
@import url("/visito-v39/tokens.css?v=20261016-directory-palette-1");
@import url("/visito-v39/pills.css?v=20261016-directory-palette-2");
:root{
  --public-ink:#171613;
  --public-navy:#07172f;
  --public-line:#e7e0d6;
  --ink:#171613;
  --navy:#07172f;
  --muted:#5f6670;
  --muted-soft:#858078;
  --line:#e7e0d6;
  --paper:#fffdf9;
  --white:#ffffff;
  --champagne:#f6e8cf;
  --champagne-strong:#ead1a3;
  --marketing-top-bg:#fff;
  --marketing-hero-title-size:clamp(48px,4.8vw,68px);
  --marketing-hero-title-mobile-size:40px;
  --marketing-hero-title-line:.98;
  --marketing-hero-title-spacing:-.055em;
  --marketing-hero-title-weight:800;
  --marketing-section-title-size:clamp(38px,4vw,56px);
  --marketing-section-title-line:1.02;
  --marketing-section-title-spacing:-.043em;
  --marketing-section-title-weight:800;
  --marketing-section-title-mobile-size:38px;
  --shadow:0 18px 48px rgba(45,35,22,.09);
  --public-search-shadow:0 18px 48px rgba(65,49,28,.08);
  --public-search-shadow-large:0 14px 36px rgba(0,0,0,.07);
  --radius-lg:26px;
  --radius-md:18px;
  --radius-sm:12px;
  --shared-mobile-menu-border:1px solid var(--public-line);
  --shared-mobile-menu-background:rgba(255,255,255,.88);
  --public-layout-width:min(1300px,calc(100% - 48px));
}

.page-shell{margin:0;background:var(--public-page-background);color:var(--public-ink);-webkit-font-smoothing:antialiased}
.page-shell *{box-sizing:border-box}
.page-shell [class*="kicker"],.page-shell [class*="eyebrow"],.cancel-page [class*="kicker"],.cancel-page [class*="eyebrow"]{display:none}
.shared-container{width:var(--public-layout-width);margin-inline:auto}
.shared-campaign-banner{position:relative;z-index:31;display:flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:7px 20px;background:#f8ecd7;color:#57401f;font-size:14px;line-height:1.35;text-align:center;text-decoration:none}
.shared-campaign-banner strong{font-weight:800}
.shared-campaign-banner__badge{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:3px 9px;border-radius:999px;background:#b9853e;color:#fff;font-size:12px;font-weight:850;white-space:nowrap}
.shared-campaign-banner__arrow{color:#9a692c;font-size:18px;font-weight:800}
@media(max-width:680px){.shared-campaign-banner{gap:7px;min-height:38px;padding:6px 12px;font-size:12px}.shared-campaign-banner__badge{min-height:22px;padding:2px 7px;font-size:11px}.shared-campaign-banner__arrow{font-size:16px}}
.shared-header{position:relative;z-index:30;height:92px;display:flex;align-items:center;gap:50px;isolation:isolate;color:var(--public-ink);line-height:1.3}
.shared-header.shared-container{width:var(--public-layout-width)}
.shared-header--profile{border-bottom:1px solid var(--public-line);background:#fff}
.shared-logo{display:flex;align-items:center;text-decoration:none}
.shared-logo-image{display:block;width:112px;height:auto}
.shared-logo,.shared-actions{align-self:center}
.shared-nav{display:flex;align-items:center;align-self:center;gap:32px}
.shared-nav-link{display:inline-flex;align-items:center;min-height:44px;color:var(--public-ink);font-size:14px;line-height:1;font-weight:700;text-decoration:none}
.shared-header .shared-nav-link{text-decoration:underline;text-decoration-color:rgba(23,22,19,.42);text-decoration-thickness:1px;text-underline-offset:5px}
.shared-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.shared-icon{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.shared-chevron{width:16px;height:16px;stroke-width:2.2;transition:transform .18s ease}
.shared-language{position:relative;display:inline-flex}
.shared-pill-language[aria-expanded="true"] .shared-chevron{transform:rotate(180deg)}
.shared-language-menu{position:absolute;z-index:60;top:calc(100% + 9px);right:0;min-width:166px;padding:6px;border:1px solid var(--public-line);border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(45,35,22,.14)}
.shared-language-menu[hidden]{display:none}
.shared-language-menu a{display:flex;justify-content:space-between;gap:15px;padding:10px 11px;border-radius:8px;color:var(--public-ink);font-size:13px;font-weight:600;text-decoration:none}
.shared-language-menu a:hover,.shared-language-menu a[aria-current="true"]{background:#f8eddc;color:#815725}
.shared-mobile-menu{display:none}
.shared-mobile-menu-close{appearance:none;-webkit-appearance:none;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--pill-selected-border);border-radius:50%;background:var(--pill-selected);box-shadow:none;color:var(--pill-gold);cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.shared-mobile-menu-close:hover{border-color:var(--pill-gold-hover);background:var(--pill-promo);color:var(--pill-gold-hover)}
.shared-mobile-menu-close .shared-icon{width:18px;height:18px;stroke-width:2.2}
.shared-mobile-menu-open{overflow:hidden}
.shared-mobile-menu summary{list-style:none}
.shared-mobile-menu summary::-webkit-details-marker{display:none}
.shared-mobile-menu summary .shared-icon{transition:transform .2s ease}
.shared-mobile-menu[open]>summary .shared-icon{transform:rotate(90deg)}
@media(min-width:681px){.shared-mobile-menu-close{display:none}}
.footer-language .shared-chevron{transform:rotate(180deg)}

.ui-primary{min-height:50px;padding:0 22px;border:1px solid var(--ink);border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--ink);color:var(--white);font-size:14px;line-height:1;font-weight:800;text-decoration:none;box-shadow:0 12px 26px rgba(23,22,19,.13)}
.ui-primary:hover{background:#000;color:var(--white)}
.ui-secondary{min-height:50px;padding:0 22px;border:1px solid var(--line);border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--white);color:var(--ink);font-size:14px;line-height:1;font-weight:800;text-decoration:none}
.ui-secondary:hover{border-color:#cec4b6}
.ui-link{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:15px;line-height:1.3;font-weight:800;text-decoration:none}

.footer-shell{margin-top:32px;background:#F5F3F0;padding:58px 0 0;color:#171613;border-top:1px solid var(--public-line)}
.footer-grid{display:grid;grid-template-columns:.78fr 2.22fr;gap:84px;padding-bottom:54px}
.footer-brand{min-width:0}
.footer-logo{display:inline-flex;margin-bottom:20px}
.footer-logo-image{display:block;width:126px;height:auto}
.footer-brand-copy{max-width:300px;margin:0;color:var(--pill-muted);font-size:15px;line-height:1.6}
.footer-links{display:grid;grid-template-columns:1.25fr .9fr 1.15fr .8fr;gap:46px}
.footer-column{min-width:0}
.footer-column-title{display:block;margin:0 0 17px;color:var(--pill-muted);font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.footer-link{display:block;margin:0 0 11px;color:var(--pill-ink);font-size:14px;line-height:1.35;text-decoration:none}
.footer-link:hover{color:var(--pill-gold-hover)}
.footer-bottom{min-height:78px;border-top:1px solid var(--pill-border);display:flex;align-items:center;gap:24px;padding:16px 0;background:#fff}
.footer-legal{flex:1;margin:0;color:var(--pill-muted);font-size:12px;line-height:1.55}
.footer-language{height:var(--pill-size-2-height);padding:0 var(--pill-size-2-padding);border:1px solid var(--pill-border);border-radius:999px;display:inline-flex;align-items:center;gap:10px;background:var(--pill-language);color:var(--pill-ink);font-size:var(--pill-size-2-font);line-height:1;font-weight:700}

@media(max-width:980px){
  :root{--public-layout-width:calc(100% - 48px)}
  .shared-container{width:var(--public-layout-width)}
  .shared-nav{display:none}
  .shared-header{gap:16px}
  .shared-mobile-menu{display:block}
  .shared-mobile-menu summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--pill-promo-border);border-radius:50%;background:var(--pill-promo);color:var(--pill-ink);cursor:pointer;transition:background-color .18s ease,border-color .18s ease}
  .shared-mobile-menu summary:hover{border-color:var(--pill-selected-border);background:var(--pill-selected)}
  .shared-mobile-menu summary .shared-icon{width:22px;height:22px}
  .shared-mobile-menu-panel{position:fixed;z-index:100;top:82px;right:24px;display:grid;gap:3px;min-width:min(300px,calc(100vw - 32px));max-height:calc(100dvh - 104px);overflow:auto;padding:12px;border:1px solid var(--public-line);border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(40,31,21,.16)}
  .shared-mobile-menu-top{display:none}
  .shared-mobile-menu-group{display:grid;gap:3px}
  .shared-mobile-menu-label{padding:12px 14px 4px;color:#9e5d13;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .shared-mobile-menu-panel a{min-height:42px;padding:12px 14px;border-radius:10px;color:var(--public-ink);font-size:14px;font-weight:700;line-height:1.3;text-decoration:none}
  .shared-mobile-menu-business{margin-top:8px;padding-top:10px;border-top:1px solid var(--public-line)}
  .shared-mobile-menu-business a{display:flex;align-items:center;justify-content:space-between;font-weight:800}
  .shared-mobile-menu-panel a:hover{background:#f9f1e5}
  .footer-grid{grid-template-columns:1fr;gap:38px}
  .footer-brand-copy{max-width:460px}
  .footer-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
}
@media(max-width:680px){
  .shared-header{height:76px;gap:10px}
  .shared-logo-image{width:94px}
  .shared-actions{gap:7px}
  .shared-pill-promo{display:none}
  .shared-pill-login{display:none}
  .shared-pill-login,.shared-pill-language{height:var(--pill-size-2-height);padding:0 13px;font-size:var(--pill-size-2-font)}
  .shared-mobile-menu-panel{top:68px;right:16px}
  .shared-mobile-menu[open] .shared-mobile-menu-panel{position:fixed;inset:0;z-index:120;display:grid;grid-auto-rows:max-content;gap:18px;width:100vw;min-width:0;max-height:100dvh;padding:16px 20px 28px;border:0;border-radius:0;background:#f7f6f4;box-shadow:none}
  .shared-mobile-menu-top{display:flex;align-items:center;justify-content:flex-end;min-height:40px}
  .shared-mobile-menu[open] .shared-mobile-menu-panel .shared-mobile-menu-top>.shared-mobile-menu-close{border-color:var(--pill-selected-border);background:var(--pill-selected);color:var(--pill-gold)}
  .shared-mobile-menu-group{gap:0;padding:8px 0 10px;border:1px solid var(--public-line);border-radius:16px;background:#fff}
  .shared-mobile-menu-label{padding:14px 18px 12px;color:var(--public-ink);font-size:23px;font-weight:750;letter-spacing:-.03em;text-transform:none}
  .shared-mobile-menu-panel .shared-mobile-menu-group a{position:relative;min-height:52px;padding:15px 42px 15px 18px;border-radius:0;font-size:15px;font-weight:500}
  .shared-mobile-menu-panel .shared-mobile-menu-group a::after{content:"›";position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#94682e;font-size:24px;font-weight:400}
  .shared-mobile-menu-panel .shared-mobile-menu-group .shared-mobile-menu-primary{color:#94682e}
  .shared-mobile-menu-business{margin:0;padding:0;border:1px solid var(--public-line);border-radius:14px;background:#fff}
  .shared-mobile-menu-panel .shared-mobile-menu-business a{min-height:68px;padding:0 18px;font-size:15px}
  .shared-mobile-menu-panel .shared-mobile-menu-business a span{color:#94682e;font-size:23px;font-weight:400}
  .shared-mobile-menu--business .shared-mobile-menu-heading{margin:0 0 2px;color:var(--public-ink);font-size:27px;line-height:1.15;font-weight:750;letter-spacing:-.035em}
  .shared-mobile-menu--business .shared-mobile-menu-group{padding:8px 0;border:1px solid var(--public-line);border-radius:16px;background:#fff}
  .shared-mobile-menu--business .shared-mobile-menu-group-secondary{margin-top:0}
  .shared-mobile-menu--business .shared-mobile-menu-business{margin-top:0}
  .shared-mobile-menu--business .shared-mobile-menu-group> a[href="/pricing"],.shared-mobile-menu--business .shared-mobile-menu-submenu>summary{text-decoration:underline;text-decoration-color:rgba(23,22,19,.42);text-decoration-thickness:1px;text-underline-offset:5px}
  .shared-mobile-menu--business .shared-mobile-menu-submenu{display:block}
  .shared-mobile-menu--business .shared-mobile-menu-submenu>summary{position:relative;min-height:52px;padding:15px 42px 15px 18px;display:flex;align-items:center;color:var(--public-ink);font-size:15px;font-weight:500;cursor:pointer}
  .shared-mobile-menu--business .shared-mobile-menu-submenu>summary::-webkit-details-marker{display:none}
  .shared-mobile-menu--business .shared-mobile-menu-submenu>summary::after{content:"›";position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#94682e;font-size:24px;line-height:1;transition:transform .16s ease}
  .shared-mobile-menu--business .shared-mobile-menu-submenu[open]>summary::after{transform:translateY(-50%) rotate(90deg)}
  .shared-mobile-menu--business .shared-mobile-menu-submenu-links{display:grid;gap:0;padding:0 12px 10px 24px}
  .shared-mobile-menu--business .shared-mobile-menu-submenu-links a{min-height:42px;padding:10px 12px;color:#5f574d;font-size:14px;font-weight:500;text-decoration:none}
  .shared-mobile-menu--business .shared-mobile-menu-group .shared-mobile-menu-submenu-links a::after{content:none}
  .ui-primary,.ui-secondary{width:100%}
  .footer-shell{padding-top:46px}
  .footer-grid{padding-bottom:38px;gap:32px}
  .footer-links{grid-template-columns:1fr 1fr;gap:30px 20px}
  .footer-column-title{font-size:11px}
  .footer-link{font-size:13px}
  .footer-bottom{align-items:flex-start;flex-wrap:wrap;padding:20px 0}
  .footer-legal{flex:1 1 100%}
}
/* Business navigation dropdowns */
.shared-nav-menu{position:relative;display:flex;align-items:center}
.shared-nav-trigger{padding:0;border:0;background:transparent;cursor:pointer;}
.shared-nav-trigger.is-active{color:#9e5d13}
.shared-nav-trigger.is-active .shared-chevron{transform:rotate(180deg)}
.shared-nav-trigger .shared-chevron{transition:transform .18s ease}
.shared-dropdown{position:absolute;top:calc(100% + 14px);left:-16px;z-index:50;width:320px;padding:10px;border:1px solid #eee3d3;border-radius:18px;background:#fffdf9;box-shadow:0 18px 46px rgba(52,39,23,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.shared-dropdown.is-open{opacity:1;visibility:visible;transform:translateY(0)}
.shared-dropdown-wide{width:420px}
.shared-dropdown-list{display:grid;gap:2px}
.shared-dropdown-wide .shared-dropdown-list{grid-template-columns:1fr 1fr;column-gap:6px}
.shared-dropdown-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:0 12px;border-radius:11px;color:var(--public-navy);font-size:14px;line-height:1.2;font-weight:700;text-decoration:none}
.shared-dropdown-link:hover,.shared-dropdown-link.is-current{background:#fbf0df;color:#9e5d13}
.shared-dropdown-link-note{color:#8b94a5;font-size:11px;font-weight:600}
.shared-dropdown-footer{margin-top:6px;padding-top:8px;border-top:1px solid #eee3d3}
.shared-dropdown-all{display:flex;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border-radius:11px;background:#f8f1e6;color:var(--public-navy);font-size:13px;font-weight:800;text-decoration:none}
.shared-dropdown-all:hover{background:#f2e6d4;color:#815725}
@media(max-width:980px){.shared-nav-menu{display:none}.shared-dropdown{display:none}}

/* The same search header is used by catalogue, salon and specialist pages. */
.shared-header--search{display:grid;height:92px;grid-template-columns:minmax(112px,1fr) minmax(0,980px) minmax(112px,1fr);gap:24px}
.shared-header--search .shared-nav{display:none}
.shared-header--search .shared-actions{display:flex;grid-column:3;justify-self:end;gap:0;margin:0}
.shared-header--search .shared-actions>:not(.shared-mobile-menu){display:none}
.shared-header--search .shared-mobile-menu{position:relative;display:block;margin:0}
.shared-header--search .shared-mobile-menu summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--pill-promo-border);border-radius:50%;background:var(--pill-promo);color:var(--pill-ink);cursor:pointer;transition:background-color .18s ease,border-color .18s ease}
.shared-header--search .shared-mobile-menu summary:hover{border-color:var(--pill-selected-border);background:var(--pill-selected)}
.shared-header--search .shared-mobile-menu summary .shared-icon{width:22px;height:22px}
.shared-header--search .shared-mobile-menu-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:100;display:none;grid-auto-flow:row;gap:3px;min-width:min(280px,calc(100vw - 32px));max-height:calc(100dvh - 104px);overflow:auto;padding:12px;border:1px solid #e7e0d6;border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(40,31,21,.16)}
.shared-header--search .shared-mobile-menu-group{display:grid;gap:3px}
.shared-header--search .shared-mobile-menu[open] .shared-mobile-menu-panel{display:grid}
.shared-header--search .shared-mobile-menu-panel a{display:block;min-height:42px;padding:12px 14px;border-radius:10px;color:#171613;font-size:14px;font-weight:700;line-height:1.3;text-decoration:none}
.shared-header--search .shared-mobile-menu-business{margin-top:8px;padding-top:10px;border-top:1px solid #e7e0d6}
.shared-header--search .shared-mobile-menu-business a{display:flex;align-items:center;justify-content:space-between;font-weight:800}
.shared-header--search .shared-mobile-menu-panel a:hover{background:#f9f1e5}
@media(min-width:801px) and (max-width:1000px){
  .shared-header--search{grid-template-columns:112px minmax(0,1fr) 44px;gap:12px}
}
@media(max-width:800px){
  .shared-header--search{grid-template-columns:minmax(0,1fr) 44px;grid-template-rows:auto;height:auto;gap:8px;padding-block:8px}
  .shared-header--search>.shared-logo{display:none}
  .shared-header--search>.shared-actions{display:flex;grid-column:2;grid-row:1;align-self:center}
  .shared-header--search>.find-mobile-searchbar{grid-column:1;grid-row:1}
  .shared-header--search .shared-mobile-menu-panel{position:fixed;top:76px;right:16px;width:min(560px,calc(100vw - 32px));min-width:0;max-height:calc(100dvh - 92px);padding:12px;border:1px solid #e7e0d6;border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(40,31,21,.16)}
  .shared-header--search .shared-mobile-menu-top{display:flex;align-items:center;justify-content:flex-end;min-height:40px}
  .shared-header--search .shared-mobile-menu-panel .shared-mobile-menu-top>.shared-mobile-menu-close{border-color:var(--pill-selected-border);background:var(--pill-selected);color:var(--pill-gold)}
  .shared-header--search .shared-mobile-menu-group{gap:0;padding:8px 0 10px;border:1px solid #e7e0d6;border-radius:16px;background:#fff}
  .shared-header--search .shared-mobile-menu-label{padding:14px 18px 10px;color:#171613;font-size:20px;font-weight:700;letter-spacing:-.02em;text-transform:none}
  .shared-header--search .shared-mobile-menu-panel .shared-mobile-menu-group a{position:relative;min-height:50px;padding:14px 42px 14px 18px;border-radius:0;font-size:15px;font-weight:600}
  .shared-header--search .shared-mobile-menu-panel .shared-mobile-menu-group a::after{content:"›";position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#94682e;font-size:22px;font-weight:400}
  .shared-header--search .shared-mobile-menu-business{margin:0;padding:0;border:1px solid #e7e0d6;border-radius:14px;background:#fff}
  .shared-header--search .shared-mobile-menu-panel .shared-mobile-menu-business a{min-height:58px;padding:0 18px;font-size:15px}
  .shared-header--profile.shared-header--search{display:none}
  .shared-header--search .shared-mobile-menu[open] .shared-mobile-menu-panel{position:fixed;inset:0;top:0;right:0;z-index:120;display:grid;grid-auto-rows:max-content;gap:18px;width:100vw;min-width:0;max-height:100dvh;padding:16px 20px 28px;border:0;border-radius:0;background:#f7f6f4;box-shadow:none}
  .shared-header--search .shared-mobile-menu-top{display:flex;align-items:center;justify-content:flex-end;min-height:40px}
  .shared-header--search .shared-mobile-menu-close{width:38px;height:38px;padding:0;border:1px solid var(--pill-selected-border);border-radius:50%;background:var(--pill-selected);color:var(--pill-gold);font-size:0;line-height:1;cursor:pointer}
  .shared-header--search .shared-mobile-menu-close:hover{border-color:var(--pill-gold-hover);background:var(--pill-promo);color:var(--pill-gold-hover)}
  .shared-header--search .shared-mobile-menu-close .shared-icon{width:18px;height:18px;stroke-width:2.2}
}
