@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--wine:#561c36;--wine-dark:#341020;--gold:#bd914d;--cream:#faf8f5;--ink:#292326;--muted:#756d71;--line:#e8e2e3;--green:#317762;--radius:18px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:transparent;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}label{display:block;font-size:14px;font-weight:600}textarea{resize:vertical;min-height:100px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-1.2px}h1{font-size:clamp(38px,4.6vw,62px);line-height:1.08;margin:16px 0}h1 em{font-weight:400;color:var(--wine)}h2{font-size:34px;line-height:1.2;margin:8px 0}h3{font-size:19px;line-height:1.3;margin:0 0 6px}p{color:var(--muted)}.demo{background:var(--wine);color:white;font-size:11px;letter-spacing:1.5px;padding:8px 5%;display:flex;align-items:center;gap:20px}.demo span{font-size:12px;letter-spacing:0;opacity:.8}.demo button{margin-left:auto;text-decoration:underline;font-size:12px;letter-spacing:0}header{height:92px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.wordmark{font-family:'Manrope',sans-serif;font-weight:800;font-size:26px;letter-spacing:1px;color:var(--wine);white-space:nowrap}.brand-flower{font-size:38px;vertical-align:middle;color:var(--gold)}.tz{font-size:12px;font-weight:500;letter-spacing:0}nav{display:flex;gap:32px;font-size:14px;font-weight:600}nav a:hover,nav a.current{color:var(--wine);text-decoration:underline;text-underline-offset:8px}.header-actions{display:flex;align-items:center;gap:20px}.avatar{border-radius:50%;background:#efe4e7;color:var(--wine);width:38px;height:38px;font-weight:700}.icon-btn{font-size:26px;position:relative}.icon-btn span{font-size:11px}.vendor-link{font-size:14px;font-weight:600}main{max-width:1440px;margin:auto;padding:38px 5% 70px;min-height:70vh}.intro{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;color:var(--wine)}.intro p{font-size:17px}.intro-note{font-family:Georgia,serif;font-size:21px;color:var(--wine);padding-right:50px;position:relative}.intro-note span{display:block;font-size:48px;color:var(--gold);margin-top:10px}.searchbar{padding:12px;background:white;border:1px solid var(--line);box-shadow:0 10px 28px #41152908;border-radius:16px;display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:10px;margin:16px 0 24px}.searchbar label{font-size:10px;letter-spacing:1.5px;padding:3px 15px;border-right:1px solid var(--line);color:var(--muted)}.searchbar select,.searchbar input{border:0;font-size:15px;font-weight:600;letter-spacing:0;padding:8px 0 0;color:var(--ink);min-height:34px}.primary,.secondary,.danger{padding:13px 23px;border-radius:10px;font-weight:600;font-size:14px;display:inline-flex;justify-content:center;align-items:center;gap:8px}.primary{background:var(--wine);color:white}.primary:hover{background:var(--wine-dark)}.secondary{background:white;border:1px solid var(--line)}.secondary:hover{border-color:var(--wine)}.danger{background:#f9e8e8;color:#a13030}.category-strip{display:flex;gap:16px;padding:8px 0 20px;overflow-x:auto;border-bottom:1px solid var(--line)}.category{flex:1;min-width:97px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:12px 10px;border-radius:12px;font-size:26px;gap:7px}.category span{font-size:13px;white-space:nowrap}.category.active{background:#eee2e7;color:var(--wine)}.category:hover{background:#f2ecee}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin:30px 0 22px;gap:18px}.section-head>span{font-size:14px;color:var(--muted)}.preview-cards,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.placeholder-card{background:white;border-radius:16px;overflow:hidden;padding-bottom:20px}.placeholder-card h3,.placeholder-card p,.placeholder-card strong{margin-left:18px}.color-photo{height:190px;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:3px;margin-bottom:16px}.c1{background:#dbd3c1}.c2{background:#d4c1bc}.c3{background:#d9bfce}footer{padding:35px 5%;border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;flex-wrap:wrap;background:white}footer>span{font-family:Georgia,serif;font-style:italic;color:var(--muted)}footer>div{display:flex;gap:25px;margin-left:auto;font-size:14px}footer small{width:100%;font-size:12px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--wine-dark);color:white;padding:13px 22px;border-radius:12px;z-index:100;display:none;box-shadow:0 4px 24px #0002;max-width:90%;font-size:14px}dialog{border:0;border-radius:22px;max-width:650px;width:calc(100% - 32px);padding:34px;box-shadow:0 20px 100px #0003;max-height:90vh}dialog::backdrop{background:#21121bbb;backdrop-filter:blur(5px)}.close{position:absolute;right:16px;top:10px;font-size:28px;z-index:2}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{margin:8px 0}.full{grid-column:1/-1}.stack{display:flex;flex-direction:column;gap:14px}.muted{color:var(--muted)}.small{font-size:13px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.page-title{margin-bottom:28px}.panel{padding:26px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.pill{font-size:12px;border-radius:20px;padding:5px 10px;display:inline-flex;background:#f0e6eb;color:var(--wine);font-weight:600}.pill.green{background:#e9f4ed;color:var(--green)}.pill.gold{background:#fbf1db;color:#856523}.empty{padding:60px 20px;text-align:center;background:white;border:1px dashed var(--line);border-radius:18px}.empty p{max-width:480px;margin:15px auto 22px}.row{display:flex;gap:14px;align-items:center;justify-content:space-between}.divider{height:1px;background:var(--line);margin:20px 0}.notice{padding:14px 18px;border-radius:12px;background:#faf3e6;color:#775726;font-size:14px;margin:15px 0}button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:850px){header{height:78px;padding:0 5%}nav{gap:16px}nav a{font-size:12px}.header-actions{gap:10px}.vendor-link{display:none}.intro-note{display:none}.cards,.preview-cards{grid-template-columns:repeat(2,1fr)}.searchbar{grid-template-columns:1fr 1fr}.searchbar label{border:0}.demo span{display:none}.section-head{align-items:center}.wordmark{font-size:21px}.brand-flower{font-size:30px}}@media(max-width:560px){header{flex-wrap:wrap;height:115px;padding-top:9px;padding-bottom:9px}nav{order:3;width:100%;justify-content:space-between}.header-actions{margin-left:auto}main{padding:25px 5% 45px}h1{font-size:39px}h2{font-size:29px}.intro p{font-size:15px}.searchbar{margin-top:22px;padding:9px;gap:8px}.searchbar label{padding:5px 8px}.searchbar .primary{padding:10px}.category-strip{gap:5px}.category{min-width:86px;padding:9px 5px}.cards,.preview-cards{grid-template-columns:1fr;gap:22px}.section-head{align-items:flex-start}.section-head>span{display:none}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}dialog{padding:28px 22px}.panel{padding:20px}footer{gap:16px}footer>div{margin:0;flex-wrap:wrap;gap:16px}.row{flex-wrap:wrap}}
.cat-icon{font-size:26px!important;line-height:1.1}.filter-actions{display:flex;gap:10px;align-items:center}.filter-actions select{font-size:13px;width:auto;padding:12px}.catalog-search{position:relative;max-width:440px;margin-bottom:22px}.catalog-search input{padding-left:39px;background:transparent;border-radius:30px;font-size:14px}.catalog-search>span{position:absolute;left:15px;top:7px;font-size:22px}.vendor-card{position:relative;border-radius:16px;background:white;border:1px solid var(--line);overflow:hidden;transition:transform .2s,box-shadow .2s}.vendor-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #32102112}.vendor-photo{height:232px;position:relative;overflow:hidden;background:#d8c9cb}.vendor-photo img{width:100%;height:100%;object-fit:cover}.photo-link{display:block}.photo-pills{position:absolute;top:15px;left:15px;display:flex;gap:5px}.photo-pills span{font-size:11px;background:#ffffffed;padding:5px 10px;border-radius:5px;color:var(--wine);font-weight:700;letter-spacing:.2px}.heart{position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:50%;background:#ffffffed;font-size:24px;display:grid;place-items:center;line-height:1;box-shadow:0 2px 8px #0001}.heart.selected{color:var(--wine)}.card-body{padding:19px}.service-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;max-width:68%}.rating{font-size:13px;color:var(--wine);white-space:nowrap}.rating small{font-size:11px;color:var(--muted)}.card-body h3{margin:9px 0 5px;font-family:Manrope,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.5px}.verified{font:700 12px 'DM Sans',sans-serif;border:1px solid #4e876f;border-radius:50%;color:#3a725b;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;vertical-align:middle}.card-body p{margin-bottom:18px}.card-bottom{display:flex;justify-content:space-between;align-items:end;padding-top:13px;border-top:1px solid var(--line);gap:8px}.card-bottom strong{display:block;font-size:15px}.card-bottom small{font-size:11px;color:var(--muted)}.instant{font-size:11px;color:var(--green);white-space:nowrap}.service-art{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:20px}.service-art>span{font:italic 70px Georgia,serif;letter-spacing:-6px}.service-art small{font-size:10px;text-transform:uppercase;letter-spacing:2px}.olive{background:#d9ded1;color:#425842}.clay{background:#dfc6b8;color:#653d2d}.rose{background:#e4d2d9;color:#693c51}.night{background:#33313f;color:#e2bc7c}.slate{background:#d4dde0;color:#344b53}.planner-banner{margin:55px 0 32px;border-radius:22px;background:#eee5e4;display:grid;grid-template-columns:1.2fr 1fr;padding:40px 6%;gap:50px}.planner-banner h2{font-size:40px;margin-top:18px}.planner-banner p{font-size:14px}.budget-preview{background:#fffdf9;padding:26px;border:1px solid #e3d4d2;border-radius:15px;transform:rotate(2deg);box-shadow:0 10px 20px #5a26330a}.budget-preview>span{font-size:9px;letter-spacing:1.5px;color:var(--wine)}.budget-preview>.row{margin:19px 0;font-size:14px}.budget-preview .row span{font-size:11px;color:var(--muted)}.budget-line{padding:12px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px}.budget-line b{color:var(--green)}.budget-preview>a{display:block;color:var(--wine);text-decoration:underline;margin-top:18px;font-size:12px}.trust-row{display:flex;justify-content:space-around;gap:30px;padding:15px 0}.trust-row>div{display:flex;align-items:center;gap:16px}.trust-row b{font-size:26px;color:var(--gold);font-weight:400}.trust-row span{font-weight:600;font-size:14px}.trust-row small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:3px}.back{font-size:14px;color:var(--muted);display:block;margin-bottom:28px}.profile-top h1{font-size:48px;margin:10px 0}.profile-meta{display:flex;gap:24px;font-size:14px;flex-wrap:wrap}.profile-meta button{margin-left:auto;text-decoration:underline}.profile-image{height:400px;border-radius:22px;margin:28px 0}.profile-image .service-art>span{font-size:130px}.profile-image .service-art small{font-size:15px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:30px;align-items:start}.detail-layout>div>.panel{margin-bottom:24px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips span{background:var(--cream);padding:7px 10px;border-radius:7px;font-size:12px}.inclusions{padding:0;list-style:none;margin:20px 0}.inclusions li{padding:9px 0;font-size:14px}.inclusions li small{display:block;color:var(--muted);padding-left:20px}.booking-sidebar{position:sticky;top:20px}.booking-sidebar h2{font-size:32px;margin-top:14px}.booking-sidebar p{font-size:13px}.package-choice{border:1px solid var(--line);padding:13px 15px;margin:10px 0;border-radius:10px;font-size:14px}.package-choice span{display:block;font-size:12px;color:var(--muted)}.full-width{width:100%;margin-top:12px}.text-btn{color:var(--wine);text-decoration:underline;text-underline-offset:4px;padding:10px 0;font-size:14px}.booking-sidebar .text-btn{width:100%;margin:10px 0}.underlined{text-decoration:underline}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px}.calendar-head button{font-size:26px;width:36px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}.calendar small{color:var(--muted);padding:10px;font-size:12px}.calendar button{position:relative;border-radius:8px;padding:12px 3px;background:#f6f1f3;font-size:14px}.calendar button:hover{background:var(--wine);color:white}.calendar button:disabled{background:#f1f1f1}.calendar i{position:absolute;bottom:0;right:5px;font-size:10px}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:16px}.review{padding:20px 0;border-top:1px solid var(--line);font-size:14px}.review>span{float:right;color:var(--gold)}.review p{margin:10px 0 0}.check{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:13px;margin:16px 0}.check input{width:17px;height:17px;flex:none;margin:2px 0;accent-color:var(--wine)}.check a{text-decoration:underline}.subnav{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:0 0 28px;overflow-x:auto}.subnav a,.subnav button{font-size:14px;padding:15px 0;white-space:nowrap;border-bottom:2px solid transparent}.subnav .active{color:var(--wine);border-bottom-color:var(--wine);font-weight:700}.booking-item{margin:18px 0}.booking-item>.row p{margin:6px 0}.money-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:20px 0;border-top:1px solid var(--line);margin-top:18px}.money-grid small{display:block;color:var(--muted);font-size:12px}.money-grid b{font-size:16px}.empty-icon{font-size:45px;color:var(--gold);margin-bottom:15px}.payment-amount{font-size:34px;color:var(--wine);font-family:Georgia,serif;padding:20px;background:#f6eef2;border-radius:14px;margin:15px 0 22px}.payment-amount span{display:block;font:13px 'DM Sans',sans-serif;margin-top:10px;color:var(--muted)}#modal form>label{margin-top:15px}.detail-copy{margin-top:25px}.payment-history{display:flex;flex-direction:column;gap:5px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.payment-history span{font-size:13px;color:var(--muted)}.payment-history.row{flex-direction:row}.chat-log{max-height:290px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;margin:20px 0}.chat{background:#f1e6ec;border-radius:12px 12px 0 12px;padding:12px 15px;margin-left:15%;font-size:14px}.chat.incoming{margin-left:0;margin-right:15%;background:#f1f1ed;border-radius:12px 12px 12px 0}.chat small{font-size:11px;color:var(--wine)}.chat p{margin:4px 0;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.conversation{display:flex;width:100%;gap:20px;text-align:left;align-items:center;margin:15px 0}.conversation>div:nth-child(2){flex:1;min-width:0}.conversation p{margin:5px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation>span{font-size:12px;color:var(--muted)}.mini-avatar{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-family:Georgia,serif;font-size:20px;background:#efe4e8;color:var(--wine);flex:none}.planner-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:30px}.plan-item{display:flex;align-items:center;gap:15px;padding:18px;margin:14px 0}.plan-item>div:nth-child(2){flex:1}.plan-item p{font-size:12px;margin:4px 0 0}.plan-item h3{font-size:16px}.plan-item strong{font-size:14px}.budget-card{position:sticky;top:24px}.budget-card h3{margin-top:16px}.budget-total{font-size:34px;font-family:Georgia,serif;color:var(--wine);margin-top:24px}.budget-card p{font-size:13px}.progress{background:#eee8eb;height:8px;border-radius:8px;overflow:hidden;margin:18px 0}.progress i{display:block;height:100%;border-radius:8px}.budget-card .row{font-size:13px;margin:14px 0}.budget-card .row b{font-size:12px}.planner-tip{margin:30px 15px;color:var(--wine)}.planner-tip>span{font-size:40px;color:var(--gold)}.planner-tip p{font-size:14px}.checklist .check{font-size:14px}.bundle{display:flex;flex-direction:column}.bundle-number{font:56px Georgia,serif;color:var(--wine);display:flex;justify-content:space-between;margin-bottom:30px}.bundle-number span{color:var(--gold)}.bundle h2{font-size:30px;margin-top:15px;min-height:72px}.bundle .inclusions{flex:1}.bundle>strong{font-size:22px;color:var(--wine)}.bundle>small{font-size:11px;color:var(--muted);margin:8px 0}.bundle h2 small{font:12px 'DM Sans',sans-serif;display:block;margin-top:8px}.workspace-bar{display:flex;align-items:center;justify-content:space-between;margin:15px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:25px 0}.stat span{font-size:13px;color:var(--muted)}.stat strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:29px;color:var(--wine);margin:10px 0}.stat small{font-size:11px;color:var(--muted)}.two-col,.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.quote-form{display:grid;grid-template-columns:1fr 2fr auto;gap:15px;align-items:end;margin-top:20px}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{background:#eee6e9;font-size:12px;color:var(--wine)}td,th{padding:16px 20px;border-bottom:1px solid var(--line)}td small{display:block;font-size:12px;color:var(--muted)}td input{width:18px;height:18px;accent-color:var(--wine)}.bar-chart{margin-top:24px}.bar-chart>div{display:grid;grid-template-columns:145px 1fr 20px;gap:12px;align-items:center;font-size:12px;margin:18px 0}.bar-chart>div>div{background:#f2ecef;height:13px;border-radius:3px;overflow:hidden}.bar-chart i{display:block;height:100%;background:var(--wine)}.activity{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.activity>span{color:var(--gold);font-size:9px;margin-top:5px}.activity small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.proof-image{max-width:100%;max-height:55vh;display:block;margin:20px auto;object-fit:contain}.workspace-option{display:flex;align-items:center;gap:22px;border:1px solid var(--line);border-radius:12px;padding:20px;text-align:left}.workspace-option:hover{background:var(--cream);border-color:var(--wine)}.workspace-option>span{font:26px Georgia,serif;color:var(--gold)}.workspace-option small{display:block;font-size:13px;color:var(--muted);margin-top:4px}.brand-lockup{display:grid;place-items:center;background:#faf8f5}.brand-lockup img{width:min(100%,650px)}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin:20px 0 40px}.swatches>div>div{height:110px;border-radius:14px;border:1px solid #0001;margin-bottom:12px}.swatches b,.swatches span{display:block;font-size:14px}.swatches span{color:var(--muted);font-size:12px}.policy-grid h2{font-size:27px}.policy-grid p{font-size:15px}.brand-header-image{width:190px;height:68px;object-fit:contain}.demo button:hover{opacity:.8}@media(max-width:1100px){.vendor-photo{height:200px}.card-body{padding:15px}.card-body .row{gap:5px;flex-wrap:wrap}.detail-layout{grid-template-columns:minmax(0,1fr) 310px}.stats{grid-template-columns:repeat(2,1fr)}.stat strong{font-size:28px}.planner-layout{grid-template-columns:minmax(0,1fr) 310px}}@media(max-width:850px){.detail-layout,.planner-layout{grid-template-columns:1fr}.booking-sidebar{position:static}.profile-image{height:310px}.two-col{grid-template-columns:1fr}.planner-layout>aside{order:-1}.planner-tip{display:none}.planner-banner{padding:30px;gap:30px}.planner-banner h2{font-size:32px}.trust-row{gap:20px;flex-wrap:wrap;justify-content:flex-start}.quote-form{grid-template-columns:1fr}.filter-actions{gap:7px}.filter-actions .secondary{padding:10px 13px}.policy-grid{grid-template-columns:1fr}}@media(max-width:560px){.vendor-photo{height:240px}.card-body{padding:19px}.card-body .row{flex-wrap:nowrap}.service-label{font-size:10px}.planner-banner{grid-template-columns:1fr;padding:28px;gap:25px;margin-top:35px}.budget-preview{transform:rotate(1deg)}.trust-row>div{width:100%;padding:5px 0}.section-head .filter-actions{flex-direction:column;align-items:end}.filter-actions select{max-width:136px;font-size:11px;padding:8px}.filter-actions button{font-size:12px}.section-head h2{font-size:28px}.section-head .eyebrow{font-size:9px;letter-spacing:1px}.profile-top h1{font-size:38px}.profile-meta{gap:12px;font-size:12px}.profile-image{height:260px}.money-grid{gap:9px}.money-grid b{font-size:13px}.money-grid small{font-size:10px}.booking-item .actions .primary,.booking-item .actions .secondary{padding:10px 14px;font-size:12px}.plan-item{flex-wrap:wrap}.plan-item>strong{margin-left:67px}.plan-item>.icon-btn{margin-left:auto}.stats{gap:12px}.stat{padding:16px}.stat strong{font-size:23px;overflow-wrap:anywhere}.stat span{font-size:11px}.stat small{font-size:10px}.subnav{gap:22px}.workspace-bar .secondary{font-size:12px;padding:10px}.workspace-bar .pill{font-size:10px}.swatches{grid-template-columns:repeat(3,1fr);gap:12px}.bar-chart>div{grid-template-columns:125px 1fr 16px;font-size:11px}.conversation{gap:12px;padding:16px}.conversation>span{display:none}.brand-header-image{width:163px;height:60px}}
/* Compact discovery masthead keeps the marketplace within the first screen. */
@media(min-width:851px){.intro h1{font-size:52px}.intro p{margin-bottom:12px}main{padding-top:30px}.category-strip{padding-bottom:14px}.category{padding-top:9px;padding-bottom:9px}.section-head{margin-top:25px;margin-bottom:18px}.brand-header-image{width:235px;height:82px}}
.searchbar label{font-size:12px;letter-spacing:1px}.category span{font-size:14px}.service-label{font-size:12px}.eyebrow{font-size:12px}.demo{font-size:12px}.demo span{font-size:12px}.catalog-search input{font-size:14px}.pill{font-size:13px}
.brand-header-image{object-fit:cover;width:230px;height:68px}@media(max-width:560px){.brand-header-image{width:195px;height:58px}}
.production-ribbon a{margin-left:auto;font-size:12px;text-decoration:underline;letter-spacing:0}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.production-chat{max-height:480px;min-height:150px}.centered{justify-content:center}.panel details summary,details summary{cursor:pointer;font-weight:600}input[type=file]{font-size:14px}.vendor-photo img{object-fit:cover}.notice a{text-decoration:underline}.chat p{overflow-wrap:anywhere}.empty+.actions{margin-top:20px}.progress i{background:var(--wine)}.stack label>input,.stack label>select,.stack label>textarea{margin-top:6px}.stat strong{overflow-wrap:anywhere}main>form.panel{max-width:760px;margin:auto}@media(max-width:560px){.production-ribbon{font-size:10px;letter-spacing:1px}.production-ribbon a{font-size:10px}.plan-item>strong{margin-left:0}.planner-layout>aside{order:0}}

/* Shared control sizing and responsive alignment. */
.primary,.secondary,.danger{min-height:48px;border:1px solid transparent;line-height:1.4;text-align:center;vertical-align:middle}
.secondary{border-color:var(--line)}
button:not(.category){touch-action:manipulation}
.icon-btn,.avatar,.heart,.close,.calendar-head button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}
.icon-btn{padding:0}.icon-btn span:empty{display:none}
.demo button{min-height:44px}.demo{padding-top:0;padding-bottom:0}
nav a,.vendor-link,footer a,.text-btn{min-height:44px;display:inline-flex;align-items:center}
nav a,.vendor-link{white-space:nowrap}
header{gap:24px}.wordmark,.header-actions{flex-shrink:0}
.brand-header-image{display:block}
input,select,textarea{min-width:0;max-width:100%}
input:not([type=checkbox]):not([type=radio]),select{min-height:48px}
.form-grid>* ,.two-col>* ,.cards>* ,.stats>* ,.planner-layout>* ,.detail-layout>*{min-width:0}
.actions{align-items:stretch}.actions>.primary,.actions>.secondary,.actions>.danger{flex:0 1 auto}
.workspace-bar{gap:16px;flex-wrap:wrap}.workspace-bar .secondary{min-height:48px}
.subnav{gap:12px;padding:0 2px 4px;scroll-padding-inline:2px;scrollbar-width:thin}
.subnav a,.subnav button{padding:14px 10px;min-height:48px;flex-shrink:0}
.vendor-card{display:flex;flex-direction:column}.card-body{display:flex;flex-direction:column;flex:1}.card-bottom{margin-top:auto}
.bundle>.full-width{margin-top:auto}.bundle>small{margin-bottom:18px}
.calendar button{min-height:44px}.calendar small{padding:8px 0}
.close{right:8px;top:8px}dialog{padding-top:48px;overscroll-behavior:contain}
.panel p,.panel h3,.notice{overflow-wrap:anywhere}
@media(min-width:561px) and (max-width:1100px){
 header{gap:16px}.vendor-link{display:none}nav{gap:18px}.header-actions{gap:8px}
 .brand-header-image{width:190px;height:68px}
}
@media(max-width:560px){
 header{height:auto;min-height:116px;gap:0 8px;padding-top:4px;padding-bottom:4px}
 .brand-header-image{width:175px;height:58px}.header-actions{gap:4px}
 nav{gap:8px}nav a{font-size:12px;justify-content:center}
 .demo{gap:8px;font-size:10px;letter-spacing:1px}.demo button{font-size:11px;padding:0}
 .section-head{flex-wrap:wrap}.filter-actions{flex-wrap:wrap}
 .actions>.primary,.actions>.secondary,.actions>.danger{flex:1 1 180px}
 .workspace-bar .secondary{font-size:12px;padding:10px 14px}
 .workspace-bar .pill{font-size:10px}.workspace-bar{gap:10px}
 .form-grid{gap:12px}.searchbar>*{min-width:0}.searchbar .primary{align-self:stretch}
 .searchbar input,.searchbar select{font-size:16px}
 .plan-item{flex-wrap:wrap}.plan-item>div:nth-child(2){min-width:0;flex:1 1 150px}
 .stats .panel{padding:16px}.money-grid{gap:12px}.money-grid b{font-size:14px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:560px){.vendor-link{display:none}}

button{min-height:44px}

/* The language switch is always reachable at every breakpoint. */
.language-switch{display:flex;flex:none;border:1px solid var(--line);border-radius:10px;padding:2px;background:var(--cream);gap:2px}
.language-switch button{width:40px;min-height:40px;border-radius:7px;font-size:12px;font-weight:700;padding:0}
.language-switch button[aria-pressed="true"]{background:var(--wine);color:white}
.brand-header-image{object-fit:contain;width:205px;height:58px}
html[lang="sw"] nav{gap:18px}html[lang="sw"] .header-actions{gap:10px}
@media(max-width:1200px){.vendor-link{display:none}header{gap:14px}nav{gap:16px}.header-actions{gap:8px}.brand-header-image{width:180px}}
@media(min-width:561px) and (max-width:950px){header{height:auto;min-height:120px;flex-wrap:wrap;padding-top:8px;padding-bottom:4px}nav{order:3;width:100%;justify-content:space-between}.header-actions{margin-left:auto}.brand-header-image{width:205px}}
@media(max-width:560px){header{min-height:130px}.brand-header-image{width:130px;height:54px}.header-actions,html[lang="sw"] .header-actions{gap:2px}.header-actions>.icon-btn{display:none}.language-switch button{width:34px;min-height:40px}.language-switch{padding:2px}nav,html[lang="sw"] nav{gap:8px}nav a{white-space:normal;text-align:center;line-height:1.35;flex:1}.searchbar{grid-template-columns:1fr}.searchbar label{padding:6px 8px}.searchbar .primary{min-height:48px}.workspace-bar .pill{white-space:normal}.brand-lockup img{max-width:100%}}
html[lang="sw"] .bar-chart>div{grid-template-columns:minmax(0,145px) minmax(0,1fr) 25px}

.category{flex:0 0 132px;min-width:132px;justify-content:flex-start;min-height:108px}.category span:not(.cat-icon){white-space:normal;line-height:1.3;text-align:center;max-width:120px}.category .cat-icon{flex:none}
@media(max-width:560px){.category{flex-basis:118px;min-width:118px}.category span:not(.cat-icon){font-size:12px;max-width:108px}}

@media(max-width:560px){.stat strong{font-size:clamp(16px,4.6vw,20px);white-space:nowrap}.stat small{overflow-wrap:anywhere}}

/* Customer shortcuts remain reachable on small screens. */
.mobile-shortcut{display:none}
@media(max-width:560px){
 header{padding-bottom:10px}nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;row-gap:4px!important}nav a{min-height:44px;display:flex;align-items:center;justify-content:center}
 nav .mobile-shortcut{display:flex}.brand-header-image{width:156px}
 .category{flex-shrink:0}.package-choice+.package-choice{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
}
