/* Layout: hala wedding brand — warm cream ground, white cards, pink→orange brand gradient, cream + marigold accents, heart mark; app shell with sidebar (desktop) / bottom tabs (mobile) */
:root{
  color-scheme:light;
  --bg:#f9f7f5; --bg2:#f3efec; --surface:#ffffff; --surface2:#f4f0ed; --line:#e7e0dc; --line2:#d6ccc7;
  --fg:#241820; --muted:#685a62; --dim:#978a91;
  --gold:#d42a4a; --gold-hi:#a81d38; --gold-lo:#e8b3bd; --rose:#ff6a1a; --henna:#ff2d7e; --yellow:#ffd23f; --cream:#fff4e6;
  --brand-grad:linear-gradient(120deg,#c41a48 0%,#d9303f 45%,#ee5a2a 100%);
  --ok:#17946a; --warn:#c27c00; --bad:#d4403a;
  --f-display:'Poppins','Manrope',system-ui,sans-serif;
  --f-serif:'Lora',Georgia,serif;
  --f-body:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --r:16px; --r-sm:10px;
}
*{box-sizing:border-box}
html,body{background:var(--bg)}
body{color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:80;background:var(--bg)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}
input,select,textarea{font:inherit;color:var(--fg)}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px}
h1,h2,h3,h4{margin:0;text-wrap:balance}
p{margin:0}
.ic{flex:none;display:block}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* type */
.display{font-family:var(--f-display);font-weight:700;font-size:clamp(2.5rem,7vw,5.2rem);line-height:1;letter-spacing:-.035em}
.display em{font-family:var(--f-serif);font-style:italic;color:var(--yellow);font-weight:500;letter-spacing:-.01em}
.h1{font-family:var(--f-display);font-weight:700;font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.08;letter-spacing:-.025em}
.h2{font-family:var(--f-display);font-weight:700;letter-spacing:-.015em;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.15}
.h3{font-size:1.02rem;font-weight:700;letter-spacing:-.005em}
.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.muted{color:var(--muted)} .dim{color:var(--dim)}
.muted-h{color:var(--muted);font-weight:500;letter-spacing:-.01em}
.lede{font-size:1.08rem;color:var(--muted);max-width:60ch}
.num{font-variant-numeric:tabular-nums}
.small{font-size:.84rem}

/* controls */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;font-weight:700;font-size:.92rem;white-space:nowrap;transition:transform .15s,background .2s,border-color .2s}
.btn:active{transform:scale(.98)}
.btn-gold{background:var(--gold);color:#fff;box-shadow:0 8px 20px -12px rgba(180,30,60,.6)}
.btn-gold:hover{background:var(--gold-hi)}
.btn-gold:hover{filter:brightness(1.06)}
.btn-ghost{border:1px solid var(--line2);background:color-mix(in srgb,var(--surface) 70%,transparent)}
.btn-ghost:hover{border-color:var(--gold-lo)}
.btn-sm{height:36px;padding:0 14px;font-size:.84rem}
.btn-xs{height:30px;padding:0 12px;font-size:.78rem}
.btn-ok{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 40%,transparent)}
.btn-bad{background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad);border:1px solid color-mix(in srgb,var(--bad) 35%,transparent)}
.btn-block{width:100%}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.iconbtn{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);position:relative}
.iconbtn:hover{border-color:var(--gold-lo)}
.dot-badge{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;border-radius:9px;background:var(--henna);color:#fff;font-size:.68rem;font-weight:800;display:grid;place-items:center;padding:0 5px}
.field{display:flex;align-items:center;gap:8px;height:46px;padding:0 14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);color:var(--muted);min-width:0}
.field:focus-within{border-color:var(--gold-lo)}
.field input,.field select{flex:1;min-width:0;background:none;border:0;outline:0;height:100%}
.field select option{background:var(--surface)}
.inp,.sel,.ta{width:100%;height:46px;padding:0 14px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);outline:0}
.ta{height:auto;padding:12px 14px;resize:vertical;min-height:96px}
.inp:focus,.sel:focus,.ta:focus{border-color:var(--gold-lo)}
.sel option{background:var(--surface)}
label.lbl{display:grid;gap:6px;font-size:.8rem;font-weight:600;color:var(--muted)}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chips.scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;margin:0 -2px}
.chips.scroll::-webkit-scrollbar{display:none}
.chip{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:.84rem;font-weight:600;white-space:nowrap}
.chip:hover{color:var(--fg)}
.chip.on{background:color-mix(in srgb,var(--gold) 16%,var(--surface));border-color:var(--gold-lo);color:var(--gold-hi)}
.seg{display:inline-flex;padding:4px;border-radius:999px;background:var(--surface);border:1px solid var(--line);gap:2px;max-width:100%;overflow-x:auto}
.seg button{height:34px;padding:0 14px;border-radius:999px;font-size:.84rem;font-weight:700;color:var(--muted);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.seg button.on{background:var(--surface2);color:var(--gold-hi);box-shadow:inset 0 0 0 1px var(--line2)}
.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.p-ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent)}
.p-warn{color:var(--warn);background:color-mix(in srgb,var(--warn) 13%,transparent)}
.p-bad{color:var(--bad);background:color-mix(in srgb,var(--bad) 13%,transparent)}
.p-dim{color:var(--muted);background:var(--surface2)}
.tag{display:inline-flex;height:22px;align-items:center;padding:0 8px;border-radius:6px;background:var(--surface2);color:var(--muted);font-size:.72rem;font-weight:600;white-space:nowrap}
.ad-label{font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:3px 7px;border-radius:5px;background:rgba(15,8,14,.55);color:var(--gold-hi);border:1px solid rgba(243,220,168,.25);backdrop-filter:blur(6px)}
.badge-prem{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;background:var(--yellow);color:#3a0a22;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.pad{padding:20px}
.stack{display:grid;gap:16px}
.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.between{justify-content:space-between}
.grow{flex:1;min-width:0}
.hr{height:1px;background:var(--line);margin:4px 0}

/* gradient "photo" tiles */
.art{position:relative;overflow:hidden;aspect-ratio:4/3;max-width:100%;background:
  radial-gradient(110% 85% at 18% 12%,hsl(var(--h1) 78% 64% / .9),transparent 56%),
  radial-gradient(90% 80% at 88% 92%,hsl(var(--h2) 72% 52% / .85),transparent 60%),
  linear-gradient(140deg,hsl(var(--h1) 42% 22%),hsl(var(--h2) 46% 12%))}
.art::before{content:"";position:absolute;inset:0;background-image:var(--pat);background-size:56px;opacity:.16;mix-blend-mode:overlay}
.art::after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 72% 28%,rgba(255,240,215,.4) 0 5px,transparent 7px),
  radial-gradient(circle at 64% 40%,rgba(255,240,215,.22) 0 11px,transparent 13px),
  radial-gradient(circle at 30% 76%,rgba(255,240,215,.2) 0 16px,transparent 18px),
  linear-gradient(180deg,transparent 55%,rgba(10,5,10,.55))}
.art-ic{position:absolute;right:14px;bottom:12px;color:rgba(255,246,232,.6);z-index:1}
.art.tall{aspect-ratio:3/4}
.art.wide{aspect-ratio:16/9}
.art.sq{aspect-ratio:1}

/* public header + landing */
.wrap{max-width:1240px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.pubhead{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.pubhead .wrap{display:flex;align-items:center;gap:20px;height:68px}
.pubnav{display:flex;gap:4px;margin-left:12px}
.pubnav button{height:38px;padding:0 14px;border-radius:999px;color:var(--muted);font-weight:600;font-size:.9rem}
.pubnav button:hover,.pubnav button.on{color:var(--fg);background:var(--surface)}
.brand{display:inline-flex;align-items:center;gap:10px;flex:none}
.brand-mark{width:30px;height:30px}
.brand-word{font-family:var(--f-display);font-size:1.5rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--fg)}
.brand-word b{font-family:var(--f-serif);font-style:italic;font-weight:600;font-size:1.02rem;letter-spacing:0;color:var(--gold);margin-left:5px}
.hero{position:relative;overflow:hidden;padding-block:72px 64px;background:var(--brand-grad);color:#fff4e6}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 50% 50%,rgba(255,255,255,.12),transparent 70%)}
.hero .lede,.hero .hero-facts{color:rgba(255,244,230,.9)}
.hero .hero-facts .ic{color:var(--yellow)}
.hero .eyebrow{color:var(--yellow)}
.bigad-in,.adcard-in,.slide-in,.catcell span{color:var(--cream)}
.bigad-in .eyebrow,.adcard-in .eyebrow,.slide-in .eyebrow{color:var(--yellow)}
.bigad-in .muted,.adcard-in .muted{color:rgba(255,244,230,.85)}
.hero-mark{width:clamp(64px,9vw,96px);height:auto}
.hero-orn{position:absolute;right:-160px;top:50%;width:min(720px,90vw);aspect-ratio:1;transform:translateY(-50%);opacity:.45;pointer-events:none}
.hero-orn svg{width:100%;height:100%}
.ros-a{transform-origin:250px 250px;animation:spin 140s linear infinite}
.ros-b{transform-origin:250px 250px;animation:spin 90s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-in{position:relative;display:grid;gap:22px}
.hero-search{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:8px;padding:8px;border-radius:22px;background:color-mix(in srgb,var(--bg) 82%,transparent);border:1px solid var(--line2);backdrop-filter:blur(10px);max-width:880px;box-shadow:0 30px 60px -30px rgba(43,10,30,.5)}
.hero-search .field{background:transparent;border-color:transparent}
.hero-search .btn{height:50px;border-radius:16px}
.hero-cats{display:flex;flex-wrap:wrap;gap:8px;max-width:880px}
.hcat{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border-radius:999px;background:rgba(255,244,230,.16);border:1px solid rgba(255,244,230,.35);color:var(--cream);font-size:.85rem;font-weight:600;backdrop-filter:blur(6px)}
.hcat:hover{background:rgba(255,244,230,.28)}
.hcat .ic{color:var(--yellow)}
.hero-facts{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:.86rem}
.hero-facts span{display:inline-flex;align-items:center;gap:8px}
.hero-facts .ic{color:var(--gold)}
.sec{padding-block:64px}
.sec-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.catgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.catcell{position:relative;border-radius:var(--r);overflow:hidden;text-align:left;border:1px solid var(--line)}
.catcell .art{aspect-ratio:5/4}
.catcell span{position:absolute;left:14px;bottom:12px;right:50px;z-index:2;font-weight:700;font-size:.92rem;line-height:1.2}
.catcell:hover .art{transform:scale(1.04)}
.catcell .art{transition:transform .5s}
.bigad{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(--line2);min-height:340px;display:grid;align-items:end}
.bigad .art{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.bigad-in{position:relative;z-index:2;padding:32px;display:grid;gap:12px;max-width:620px}
.bigad .ad-label{position:absolute;top:16px;right:16px;z-index:3}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.step{padding:24px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);display:grid;gap:10px;align-content:start}
.step-n{font-family:var(--f-display);font-weight:700;font-size:2.6rem;line-height:1;color:var(--gold)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.plan{padding:24px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);display:grid;gap:14px;align-content:start}
.plan.feat{border-color:var(--gold-lo);background:linear-gradient(180deg,color-mix(in srgb,var(--gold) 9%,var(--surface)),var(--surface))}
.plan-price{font-family:var(--f-display);font-size:2.4rem;line-height:1}
.plan ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;color:var(--muted);font-size:.9rem}
.plan li{display:flex;gap:8px}
.plan li .ic{color:var(--gold);margin-top:2px}
.foot{border-top:1px solid var(--line);padding-block:40px 120px;color:var(--dim);font-size:.84rem}

/* app shell */
.side{position:fixed;top:0;bottom:0;left:0;width:252px;background:var(--bg2);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:22px;padding:calc(22px + env(safe-area-inset-top,0px)) 14px calc(16px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));z-index:30;overflow-y:auto}
.side .brand{padding:0 8px}
.snav{display:grid;gap:2px}
.snav button{display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;border-radius:12px;color:var(--muted);font-weight:600;font-size:.92rem;text-align:left}
.snav button:hover{color:var(--fg);background:var(--surface)}
.snav button.on{color:var(--fg);background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 28%,transparent),transparent);box-shadow:inset 3px 0 0 var(--gold)}
.snav .cnt{margin-left:auto;font-size:.72rem;font-weight:800;background:var(--henna);color:#fff;border-radius:9px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 6px}
.ucard{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}
.av{width:38px;height:38px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:800;font-size:.8rem;color:#24160d;background:linear-gradient(135deg,#f6c64a,#ee8a4a)}
.ucard .t{min-width:0;flex:1}
.ucard .t b{display:block;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ucard .t span{display:block;font-size:.74rem;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mainwrap{margin-left:252px;min-width:0}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:25;height:64px;display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.top .brand{display:none}
.top-title{font-weight:700;color:var(--muted);font-size:.9rem}
.main{max-width:1280px;margin:0 auto;padding-block:28px 140px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:grid;gap:24px}
.main > *{min-width:0}
.bnav{display:none}
.page-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.page-head > div:not(.seg){display:grid;gap:6px;min-width:0}
@media (max-width:960px){
  .side{display:none}
  .mainwrap{margin-left:0}
  .top .brand{display:inline-flex}
  .top-title{display:none}
  .bnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:color-mix(in srgb,var(--bg2) 94%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}
  .bnav button{flex:1;display:grid;justify-items:center;gap:3px;padding:6px 0;font-size:.66rem;font-weight:700;color:var(--dim);min-width:0}
  .bnav button.on{color:var(--gold-hi)}
  .pubnav{display:none}
}

/* demo switcher */
.demo{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;display:grid;justify-items:end;gap:8px}
@media (max-width:960px){.demo.in{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
.demo-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:999px;background:var(--fg);color:var(--cream);font-weight:800;font-size:.8rem;box-shadow:0 12px 30px -8px rgba(43,10,30,.45)}
.demo-pop{width:260px;padding:10px;border-radius:18px;background:var(--surface2);border:1px solid var(--line2);box-shadow:0 30px 60px -20px rgba(43,10,30,.4);display:grid;gap:4px}
.demo-h{font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding:6px 8px}
.demo-opt{display:grid;text-align:left;padding:10px 12px;border-radius:12px}
.demo-opt:hover{background:var(--surface)}
.demo-opt.on{background:color-mix(in srgb,var(--gold) 14%,transparent)}
.demo-opt b{font-size:.9rem}
.demo-opt span{font-size:.76rem;color:var(--muted)}

/* listing cards */
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.lcard{border-radius:var(--r);overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:0 10px 30px -22px rgba(43,10,30,.35);cursor:pointer;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.lcard:hover{border-color:var(--line2);transform:translateY(-2px)}
.lcard.is-prem{border-color:color-mix(in srgb,var(--gold) 45%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 18%,transparent),0 20px 40px -24px rgba(217,180,107,.35)}
.lc-media{position:relative}
.fav{position:absolute;right:10px;top:10px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(15,8,14,.5);backdrop-filter:blur(6px);color:#fff;z-index:2}
.fav.on{color:var(--rose)}
.fav.on .ic{fill:currentColor}
.lc-body{padding:14px 16px 16px;display:grid;gap:6px;flex:1}
.lc-top{display:flex;justify-content:space-between;gap:8px;font-size:.74rem}
.lc-cat{color:var(--gold);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}
.rating{display:inline-flex;align-items:center;gap:4px;font-weight:700}
.rating .ic{color:var(--gold);fill:var(--gold)}
.rating i{font-style:normal;color:var(--dim);font-weight:500}
.lcard h3{font-size:1.04rem;font-weight:700}
.lc-meta{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.8rem}
.lc-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:6px}
.price{font-weight:800;font-size:.95rem}
.price small{font-weight:500;color:var(--muted);font-size:.76rem}
.tags{display:flex;gap:4px;overflow:hidden}
.hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,300px);gap:16px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}

/* explore */
.filters{padding:14px;display:grid;gap:12px}
.frow{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:20px;align-items:start}
.split .list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.mapcol{position:sticky;top:calc(84px + env(safe-area-inset-top,0px))}
.mapcard{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#f3e9ee}
.mapctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--line);background:var(--surface)}
.mapctl .rng{display:flex;align-items:center;gap:10px;flex:1;min-width:180px}
.rng input{flex:1;accent-color:var(--gold)}
#mapbox{position:relative;height:min(68vh,620px)}
.map{width:100%;height:100%;display:block;touch-action:manipulation;cursor:crosshair}
.map.drawing{touch-action:none}
.m-grid{stroke:color-mix(in srgb,var(--line) 55%,transparent);stroke-width:.5}
.m-land{fill:#ffffff;stroke:var(--line2);stroke-width:1.2}
.m-river{fill:none;stroke:#9cc4e4;stroke-width:1.6;opacity:.7}
.m-city{fill:var(--dim)}
.m-cityt{fill:var(--dim);font-family:var(--f-body);font-weight:600}
.m-radius{fill:color-mix(in srgb,var(--gold) 12%,transparent);stroke:var(--gold);stroke-width:1.4;stroke-dasharray:5 5}
.m-center{fill:var(--gold);stroke:#fff;stroke-width:2}
.m-poly{fill:color-mix(in srgb,var(--rose) 16%,transparent);stroke:var(--rose);stroke-width:1.8}
.m-draw{fill:none;stroke:var(--rose);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.m-dim{fill:var(--line2)}
.pin{cursor:pointer}
.pin rect{fill:#fff;stroke:var(--fg);stroke-width:1}
.pin path{fill:var(--fg)}
.pin text{fill:var(--fg);font:800 11px var(--f-body)}
.pin.prem rect{fill:var(--yellow)}
.pin.hl rect,.pin.hl path,.pin:hover rect,.pin:hover path{fill:var(--gold)}
.pin.hl text,.pin:hover text{fill:#fff}
.maplegend{display:flex;gap:14px;flex-wrap:wrap;padding:10px 12px;font-size:.76rem;color:var(--muted);border-top:1px solid var(--line);background:var(--surface)}
.maplegend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.maphint{position:absolute;left:12px;top:12px;right:12px;padding:8px 12px;border-radius:10px;background:rgba(255,255,255,.94);box-shadow:0 6px 18px -8px rgba(43,10,30,.3);border:1px solid var(--line2);font-size:.8rem;color:var(--fg);pointer-events:none}
.fab-map{display:none}
.adcard{grid-column:1/-1;position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--gold-lo);min-height:150px;display:grid;align-items:end;cursor:pointer}
.adcard .art{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.adcard-in{position:relative;z-index:2;padding:18px;display:grid;gap:6px}
.adcard .ad-label{position:absolute;right:12px;top:12px;z-index:3}
.offers{display:grid;gap:10px}
.offer{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:16px;align-items:center;padding:10px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);cursor:pointer}
.offer:hover{border-color:var(--line2)}
.offer .art{border-radius:10px;aspect-ratio:4/3}
.offer h4{font-size:1rem;font-weight:700;margin:2px 0 4px}
.offer-p{text-align:right;display:grid;gap:2px;padding-right:8px}
.offer-p b{font-size:1.2rem;font-family:var(--f-display);color:var(--gold-hi)}
.offer-p s{color:var(--dim);font-size:.82rem}
@media (max-width:1100px){.frow{grid-template-columns:1fr 1fr}.frow .field.grow{grid-column:1/-1}}
@media (max-width:960px){
  .split{grid-template-columns:1fr}
  .mapcol{display:none;position:static}
  .split.show-map .mapcol{display:block}
  .split.show-map .list{display:none}
  .fab-map{display:inline-flex;position:fixed;left:50%;transform:translateX(-50%);bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:35}
  .offer{grid-template-columns:96px minmax(0,1fr)}
  .offer-p{grid-column:2;text-align:left;display:flex;gap:10px;align-items:baseline;padding:0}
}

/* detail */
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;border-radius:20px;overflow:hidden;height:min(56vw,440px)}
.gallery .art{aspect-ratio:auto;height:100%}
.gallery .g0{grid-row:1/3}
.detail{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.bookbox{position:sticky;top:calc(84px + env(safe-area-inset-top,0px));padding:22px;display:grid;gap:14px;border-color:var(--gold-lo);background:linear-gradient(180deg,color-mix(in srgb,var(--gold) 7%,var(--surface)),var(--surface))}
.sumrow{display:flex;justify-content:space-between;gap:12px;font-size:.9rem}
.sumrow b{font-variant-numeric:tabular-nums}
.sumrow.big{font-size:1.05rem;font-weight:800}
.avail{display:flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700}
.avail.ok{color:var(--ok)} .avail.no{color:var(--bad)}
.incl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.incl li{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.92rem}
.incl .ic{color:var(--gold);margin-top:2px}
.polbar{display:flex;border-radius:10px;overflow:hidden;height:38px;font-size:.74rem;font-weight:800}
.polbar div{display:grid;place-items:center;padding:0 6px;text-align:center;line-height:1.1}
.pb-ok{background:color-mix(in srgb,var(--ok) 22%,transparent);color:var(--ok)}
.pb-warn{background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}
.pb-bad{background:color-mix(in srgb,var(--bad) 20%,transparent);color:var(--bad)}
.minigrid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.minigrid .art{border-radius:10px}
.review{padding:16px;border-radius:14px;background:var(--surface2);display:grid;gap:8px}
@media (max-width:960px){
  .detail{grid-template-columns:1fr}
  .bookbox{position:static}
  .gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;height:auto}
  .gallery .g0{grid-column:1/-1;grid-row:auto;aspect-ratio:16/10}
  .gallery .art:not(.g0){aspect-ratio:4/3}
  .gallery .g3,.gallery .g4{display:none}
  .incl{grid-template-columns:1fr}
}

/* dashboard pieces */
.couplehero{position:relative;overflow:hidden;border-radius:24px;padding:28px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;background:var(--brand-grad);color:#fff4e6}
.couplehero .eyebrow{color:var(--yellow)}
.couplehero .ev b{color:var(--cream)}
.couplehero .ev{background:rgba(40,6,24,.28);border-color:rgba(255,244,230,.28);color:rgba(255,244,230,.85)}
.couplehero .orn{position:absolute;right:-120px;top:-120px;width:380px;opacity:.5;pointer-events:none}
.countdown{font-family:var(--f-display);font-size:clamp(3.6rem,9vw,6.4rem);line-height:.85;color:#fff4e6;font-weight:800;letter-spacing:-.05em}
.countdown small{display:block;font-family:var(--f-body);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);margin-top:10px;font-weight:700}
.evstrip{display:flex;gap:8px;flex-wrap:wrap}
.ev{padding:8px 12px;border-radius:12px;background:rgba(18,13,20,.45);border:1px solid var(--line2);display:grid;font-size:.78rem;color:var(--muted)}
.ev b{color:var(--fg);font-size:.86rem}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tile{padding:18px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);display:grid;gap:8px;text-align:left}
.tile:hover{border-color:var(--line2)}
.tile .k{font-size:.78rem;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:8px}
.tile .k .ic{color:var(--gold)}
.tile .v{font-family:var(--f-display);font-size:2rem;line-height:1}
.tile .v small{font-family:var(--f-body);font-size:.82rem;color:var(--muted)}
.bar{height:6px;border-radius:3px;background:var(--surface2);overflow:hidden}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-hi));border-radius:3px}
.bar.over i{background:var(--bad)}
.carousel{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line2);height:260px}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .8s;display:grid;align-items:end;cursor:pointer}
.slide.on{opacity:1;z-index:1}
.slide .art{position:absolute;inset:0;aspect-ratio:auto;height:100%}
.slide-in{position:relative;z-index:2;padding:26px;display:grid;gap:8px;max-width:560px}
.carousel .ad-label{position:absolute;top:14px;right:14px;z-index:3}
.cdots{position:absolute;right:18px;bottom:18px;display:flex;gap:6px;z-index:3}
.cdots button{width:22px;height:4px;border-radius:2px;background:rgba(255,255,255,.3)}
.cdots button.on{background:var(--yellow)}
.two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;align-items:start}
.task{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line)}
.task:last-child{border-bottom:0}
.cbx{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line2);display:grid;place-items:center;flex:none;color:transparent}
.cbx.on{background:var(--gold);border-color:var(--gold);color:#fff4e6}
.task.done .tt{color:var(--dim);text-decoration:line-through}
.tt{flex:1;min-width:0;font-size:.92rem}
@media (max-width:960px){
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .two{grid-template-columns:1fr}
  .couplehero{grid-template-columns:1fr;gap:18px;padding:22px}
  .catgrid{grid-template-columns:repeat(2,1fr)}
  .steps,.plans{grid-template-columns:1fr}
  .hero-search{grid-template-columns:1fr}
  .carousel{height:300px}
}

/* tables */
.tblwrap{overflow-x:auto;border-radius:var(--r);border:1px solid var(--line);background:var(--surface)}
table.tbl{width:100%;border-collapse:collapse;font-size:.88rem;min-width:720px}
.tbl th{text-align:left;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);font-weight:800;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl td.r,.tbl th.r{text-align:right;font-variant-numeric:tabular-nums}
.tbl .sel{height:34px;padding:0 10px;font-size:.82rem;width:auto}
.kpi{padding:18px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);display:grid;gap:6px}
.kpi .k{font-size:.78rem;color:var(--muted);font-weight:600}
.kpi .v{font-family:var(--f-display);font-size:2rem;line-height:1.05;font-variant-numeric:tabular-nums}
.kpi .d{font-size:.78rem;font-weight:700}
.up{color:var(--ok)} .down{color:var(--bad)}
.chart{width:100%;height:auto;display:block}
.chart .gl{stroke:var(--line);stroke-width:1}
.chart .ax{fill:var(--dim);font:600 11px var(--f-body)}
.chart .b1{fill:var(--gold)}
.chart .b2{fill:var(--rose)}
.spark .ln{fill:none;stroke:var(--gold);stroke-width:2}
.spark .ar{fill:color-mix(in srgb,var(--gold) 16%,transparent)}
.spark .pt{fill:var(--gold-hi)}

/* calendar */
.mgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.mgrid b{font-size:.7rem;color:var(--dim);text-align:center;font-weight:800;letter-spacing:.08em;padding-bottom:4px}
.day{aspect-ratio:1;border-radius:10px;border:1px solid var(--line);background:var(--surface);display:grid;align-content:space-between;padding:6px;font-size:.8rem;font-weight:700;text-align:left;min-width:0}
.day span{font-size:.62rem;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.day.we{background:var(--surface2)}
.day.bk{background:color-mix(in srgb,var(--ok) 18%,var(--surface));border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok)}
.day.rq{background:color-mix(in srgb,var(--warn) 16%,var(--surface));border-color:color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn)}
.day.bl{background:repeating-linear-gradient(135deg,var(--surface2) 0 6px,var(--surface) 6px 12px);color:var(--dim)}
.day.past{opacity:.35}

/* feed */
.masonry{columns:4 240px;column-gap:14px}
.post{break-inside:avoid;margin-bottom:14px;border-radius:var(--r);overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.post .media{position:relative}
.post .src{position:absolute;left:10px;top:10px;z-index:2;display:inline-flex;gap:6px;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:rgba(15,8,14,.6);backdrop-filter:blur(6px);font-size:.72rem;font-weight:800;color:#fff}
.post .play{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(15,8,14,.45);backdrop-filter:blur(4px);color:#fff;z-index:2}
.post .cap{position:absolute;left:14px;right:14px;bottom:12px;z-index:2;font-family:var(--f-display);font-weight:600;font-size:1.02rem;line-height:1.15;color:#fff}
.post-b{padding:12px 14px;display:grid;gap:10px}
.post-acts{display:flex;align-items:center;gap:6px}
.post-acts button{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 10px;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--muted);border:1px solid var(--line)}
.post-acts button.on{color:var(--rose);border-color:color-mix(in srgb,var(--rose) 40%,transparent)}
.post-acts button.on .ic{fill:currentColor}
.post-v{display:flex;align-items:center;gap:10px;cursor:pointer}
.post-v .av{width:32px;height:32px;font-size:.7rem}
.post-v b{font-size:.86rem;display:block}
.post-v span{font-size:.74rem;color:var(--dim)}
.socialband{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:18px 20px;border-radius:var(--r);border:1px dashed var(--line2);background:var(--bg2)}
@media (max-width:760px){.socialband{grid-template-columns:1fr}}

/* messages */
.msgs{display:grid;grid-template-columns:320px minmax(0,1fr);height:min(72vh,680px);border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.threads{border-right:1px solid var(--line);overflow-y:auto}
.thread{display:flex;gap:12px;padding:14px;border-bottom:1px solid var(--line);text-align:left;width:100%;align-items:center}
.thread.on{background:var(--surface2)}
.thread .t{min-width:0;flex:1}
.thread .t b{display:block;font-size:.9rem}
.thread .t span{display:block;font-size:.78rem;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.convo{display:grid;grid-template-rows:auto 1fr auto;min-height:0}
.convo-h{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}
.bubbles{overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:10px}
.bub{max-width:78%;padding:10px 14px;border-radius:16px;font-size:.9rem;background:var(--surface2);align-self:flex-start;border-bottom-left-radius:4px}
.bub.me{align-self:flex-end;background:color-mix(in srgb,var(--gold) 22%,var(--surface2));border-bottom-left-radius:16px;border-bottom-right-radius:4px}
.bub small{display:block;font-size:.68rem;color:var(--dim);margin-top:4px}
.composer{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}
.composer .inp{height:44px}
.backlink{display:none}
@media (max-width:760px){
  .msgs{grid-template-columns:1fr;height:auto;min-height:60vh}
  .msgs.has-t .threads{display:none}
  .msgs:not(.has-t) .convo{display:none}
  .backlink{display:grid}
  .bubbles{max-height:52vh}
}

/* modal + toast */
.scrim{position:fixed;inset:0;z-index:90;background:rgba(43,10,30,.45);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px max(16px,env(safe-area-inset-right,0px)) 20px max(16px,env(safe-area-inset-left,0px))}
.modal{width:min(520px,100%);max-height:86vh;overflow-y:auto;border-radius:22px;background:var(--surface);border:1px solid var(--line2);padding:24px;display:grid;gap:16px;box-shadow:0 40px 80px -30px rgba(43,10,30,.5)}
.modal-h{display:flex;justify-content:space-between;align-items:start;gap:12px}
.toast{position:fixed;left:50%;transform:translateX(-50%);top:calc(16px + env(safe-area-inset-top,0px));z-index:95;display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:14px;background:var(--fg);color:var(--cream);font-weight:700;font-size:.88rem;box-shadow:0 20px 40px -12px rgba(43,10,30,.5);animation:tin .35s ease;max-width:calc(100vw - 32px)}
@keyframes tin{from{opacity:0;transform:translate(-50%,-10px)}}

/* auth */
.auth{min-height:100%;display:grid;grid-template-columns:1fr 1fr}
.auth-art{position:relative;overflow:hidden;background:var(--brand-grad);display:grid;place-items:center;padding:40px;border-right:1px solid var(--line)}
.auth-art svg{width:min(300px,60%);height:auto;opacity:.95}
.auth-art .q{position:absolute;left:40px;right:40px;bottom:40px;font-family:var(--f-serif);font-style:italic;font-size:1.5rem;line-height:1.3;color:#fff4e6}
.auth-f{display:grid;align-content:center;justify-items:center;padding:48px max(16px,env(safe-area-inset-right,0px)) 120px max(16px,env(safe-area-inset-left,0px))}
.auth-in{width:min(440px,100%);display:grid;gap:18px}
.rolecards{display:grid;gap:10px}
.rolecard{display:flex;gap:14px;align-items:center;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--surface);text-align:left}
.rolecard:hover{border-color:var(--gold-lo)}
.rolecard .ri{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--surface2);color:var(--gold)}
.rolecard b{display:block}
.rolecard span{font-size:.8rem;color:var(--muted)}
.divider{display:flex;align-items:center;gap:12px;color:var(--dim);font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line)}
.obsteps{display:flex;gap:6px}
.obsteps i{flex:1;height:4px;border-radius:2px;background:var(--surface2)}
.obsteps i.on{background:var(--gold)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:860px){.auth{grid-template-columns:1fr}.auth-art{display:none}}
@media (max-width:520px){.grid2{grid-template-columns:1fr}}

/* seating */
.tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.tablec{padding:16px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);display:grid;gap:10px;justify-items:center;text-align:center}
.tablec svg{width:120px;height:120px}
.tablec .seat{fill:var(--surface2);stroke:var(--line2)}
.tablec .seat.on{fill:var(--gold)}
.tablec .tb{fill:var(--bg2);stroke:var(--gold-lo)}
.tablec .tn{fill:var(--gold);font:700 22px var(--f-display)}
.toggle{width:44px;height:26px;border-radius:13px;background:var(--surface2);border:1px solid var(--line2);position:relative;flex:none}
.toggle::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--dim);transition:left .2s,background .2s}
.toggle.on{background:color-mix(in srgb,var(--gold) 30%,var(--surface2));border-color:var(--gold-lo)}
.toggle.on::after{left:21px;background:var(--gold-hi)}
.settingrow{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.settingrow:last-child{border-bottom:0}
.frow.f3{grid-template-columns:2fr 1fr 1fr}
.tiles.t3{grid-template-columns:repeat(3,minmax(0,1fr))}
.bkcard{display:grid;grid-template-columns:180px minmax(0,1fr);overflow:hidden}
@media (max-width:1100px){.frow.f3{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.tiles.t3{grid-template-columns:1fr}.bkcard{grid-template-columns:96px minmax(0,1fr)}.bkcard .art{height:100%;aspect-ratio:auto}}
.calc{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}
.calc > section:first-child{position:sticky;top:calc(84px + env(safe-area-inset-top,0px))}
.bignum{font-family:var(--f-display);font-weight:700;font-size:clamp(2rem,5vw,2.8rem);letter-spacing:-.03em;line-height:1.1}
.calcbar{display:flex;height:14px;border-radius:7px;overflow:hidden;gap:2px}
.calcbar i{display:block;min-width:2px}
.cline{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.cline.off{opacity:.45}
.cl-bar{width:90px;height:6px;border-radius:3px;background:var(--surface2);overflow:hidden;flex:none}
.cl-bar i{display:block;height:100%;background:var(--gold)}
.cl-v{min-width:84px;text-align:right}
.calcteaser{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:center;padding:32px;border-radius:24px;background:var(--surface);border:1px solid var(--line)}
.calcteaser-fig{display:grid;gap:6px;padding:24px;border-radius:18px;background:var(--surface2)}
@media (max-width:860px){.calc,.calcteaser{grid-template-columns:1fr}.calc > section:first-child{position:static}.cl-bar{display:none}.calcteaser{padding:22px}}
.locbtn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 12px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);font-size:.84rem;font-weight:700;color:var(--fg);white-space:nowrap}
.locbtn:hover{border-color:var(--gold-lo)}
.locbtn .ic{color:var(--gold)}
.locbtn i{width:1px;height:16px;background:var(--line2)}
.langs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.langopt{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);text-align:left}
.langopt b{width:34px;height:26px;border-radius:6px;display:grid;place-items:center;background:var(--surface2);font-size:.74rem}
.langopt.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 7%,var(--surface))}
.langopt.on b{background:var(--gold);color:#fff}
@media (max-width:640px){.locbtn .loc-c,.locbtn i,.hide-s{display:none}.locbtn{padding:0 10px}}
.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line2);border-radius:var(--r)}
.lcard.is-feat{border-color:color-mix(in srgb,var(--gold) 30%,var(--line))}
.badge-feat{background:var(--surface);color:var(--gold-hi);border:1px solid color-mix(in srgb,var(--gold) 35%,transparent)}
.bub.sys{align-self:center;max-width:90%;background:transparent;border:1px dashed var(--line2);color:var(--muted);font-size:.82rem;text-align:center;border-radius:12px}
.toast.err{background:var(--bad);color:#fff}
.lc-body .pill{margin-bottom:2px}
.tbl td:first-child,.tbl td.r{white-space:nowrap}
@media (max-width:640px){.pubhead .wrap{gap:8px}.loginbtn{padding:0 10px}.pubhead .btn-gold{padding:0 12px}}
@media (max-width:640px){.top{gap:6px}.top .iconbtn,.top .av{width:36px;height:36px}.top .brand-word b{display:none}}
@media (max-width:640px){.demo-btn span{display:none}.demo-btn{width:44px;padding:0;justify-content:center}}
.rng input{min-width:0;width:100%}
