/* weijilanecom.lol — Dounan Flower Auction Hall theme — light HALL IVORY */
:root{
  --ivory:#F2ECE4;
  --ink:#34302A;
  --sun:#DFA713;
  --slate:#2F4A50;
  --zinc:#8A8F94;
  --kraft:#D9C6A2;
  --cellar:#26343A;
}

*{margin:0;padding:0;box-sizing:border-box;}

html{scroll-behavior:smooth;}
body{
  font-size:16px;
  background:var(--ivory);
  color:var(--ink);
  font-family:Georgia,"Times New Roman",serif;
  line-height:1.7;
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none;}
ul{list-style:none;}
img{max-width:100%;display:block;}

/* ---------- BID-PADDLE FAN NAV ---------- */
.paddlefan{
  position:sticky;top:0;z-index:40;
  background:var(--ivory);
  border-bottom:1px solid var(--ink);
}
.paddlebar{
  max-width:1200px;margin:0 auto;padding:14px 24px 4px;
  display:flex;align-items:flex-end;gap:22px;position:relative;
}
.brandplate{
  background:var(--sun);color:var(--ink);
  border-radius:10px 10px 4px 4px;
  padding:8px 18px 14px;font-weight:bold;font-size:20px;
  letter-spacing:1px;position:relative;flex:none;
  box-shadow:0 3px 0 var(--cellar);
}
.brandplate::after{
  content:"";position:absolute;left:50%;bottom:-14px;
  width:10px;height:18px;border-radius:0 0 10px 10px;
  background:linear-gradient(to bottom,var(--ink) 0 5px,var(--ivory) 5px 18px);
  transform:translateX(-50%);
}
.paddlelinks{display:flex;align-items:flex-end;gap:4px;}
.paddler{
  position:relative;
  background:var(--kraft);color:var(--ink);
  border:1px solid var(--ink);
  padding:6px 16px 10px;font-size:15px;
  border-radius:12px 12px 3px 3px;
  display:block;
}
.paddler:hover{background:var(--sun);}
.p1{transform:rotate(-3deg);margin-bottom:2px;}
.p2{transform:rotate(0deg);}
.p3{transform:rotate(3deg);margin-bottom:2px;}
.paddler b{
  position:absolute;right:4px;top:2px;
  font-size:9px;color:var(--slate);letter-spacing:1px;
}
.navcta{
  margin-left:auto;
  background:var(--slate);color:var(--ivory);
  padding:10px 20px;border-radius:6px;font-weight:bold;font-size:15px;
}
.navcta:hover{background:var(--cellar);}
.lotticker{
  border-top:2px solid var(--sun);
  padding:6px 24px;display:flex;gap:22px;justify-content:center;
  color:var(--ink);font-size:12px;letter-spacing:3px;font-weight:bold;
  overflow-x:auto;white-space:nowrap;
}
.lotticker span{display:flex;align-items:center;gap:22px;}
.lotticker i{font-style:normal;width:4px;height:4px;border-radius:50%;background:var(--sun);display:inline-block;}
.navtoggle{display:none;}

/* ---------- HERO: COLD-ROOM BUCKET WALL ---------- */
.bucketwall{background:var(--ivory);}
.coldwall{
  position:relative;
  background:var(--slate);
  height:360px;overflow:hidden;
}
.rail{
  position:absolute;left:0;border-bottom:6px solid var(--zinc);
  width:100%;
}
.railbot{position:absolute;width:3px;background:var(--zinc);bottom:-6px;}
.r1{top:130px;transform:rotate(-2deg);}
.r2{top:250px;transform:rotate(1deg);}
.r3{top:120px;left:46%;width:54%;}
.colddoor{
  position:absolute;right:60px;top:26px;bottom:0;width:190px;
  background:var(--cellar);border:6px solid var(--zinc);
  border-bottom:none;border-radius:6px 6px 0 0;
}
.colddoor::after{
  content:"";position:absolute;left:0;right:0;top:70px;bottom:0;
  background:var(--slate);opacity:.2;
}
.thermo{
  position:absolute;left:-10px;top:22px;width:52px;height:52px;
  background:var(--kraft);border:3px solid var(--ink);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-weight:bold;color:var(--cellar);font-size:13px;
}
.labelfrost{
  position:absolute;right:90px;top:120px;color:var(--ivory);
  font-size:11px;letter-spacing:3px;
}
.bucket{z-index:3;position:absolute;text-align:center;}
.bucket span{
  display:block;width:44px;height:44px;margin:0 auto;
  background:var(--zinc);
  border-radius:8px 8px 14px 14px;
  border-bottom:3px solid var(--ink);
}
.flowers{display:flex;gap:3px;justify-content:center;transform:translateY(-2px);}
.flowers i{width:16px;height:16px;border-radius:50%;display:inline-block;}
.f-sun{background:var(--sun);}
.f-slate{background:var(--slate);}
.f-kraft{background:var(--kraft);border:1px solid var(--ink);}
.b1{top:80px;left:60px;}
.b2{top:200px;left:170px;}
.b3{top:105px;left:300px;transform:scale(1.1);}
.b4{top:222px;left:400px;}
.b5{top:170px;left:60%;}
.b6{top:120px;left:38%;}

.pledgeslash{
  position:absolute;left:14px;bottom:10px;
  color:var(--ivory);background:var(--cellar);
  padding:3px 10px;font-size:10px;letter-spacing:2px;
  visibility:hidden;
}

/* bidding desk */
.desk{
  position:relative;max-width:1200px;margin:0 auto;padding:44px 24px 30px;
}
.deskfold{display:flex;align-items:flex-start;gap:40px;}
.desktext{flex:1;}
.eyebrow{
  color:var(--slate);letter-spacing:3px;font-weight:bold;font-size:13px;
  text-transform:uppercase;margin-bottom:16px;
}
.desktext h1{
  font-size:56px;line-height:1.05;color:var(--ink);
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
}
.lotstamp{
  width:74px;height:74px;border-radius:50%;
  background:var(--sun);color:var(--ink);
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:bold;font-size:17px;
  border:3px dashed var(--ink);
  flex:none;
}
.lede{
  margin-top:20px;color:var(--ink);font-size:19px;
  max-width:640px;
}
.herocta{margin-top:26px;display:flex;gap:16px;flex-wrap:wrap;}
.btn{
  display:inline-block;padding:13px 26px;font-weight:bold;font-size:16px;
  border:none;cursor:pointer;border-radius:6px;
}
.btn-sun{background:var(--sun);color:var(--ink);}
.btn-sun:hover{background:#c08f0e;}
.btn-text{background:transparent;color:var(--ink);border:2px solid var(--slate);}
.btn-text:hover{background:var(--slate);color:var(--ivory);}
.btn-slate{background:var(--slate);color:var(--ivory);}
.btn-slate:hover{background:var(--cellar);}
.lotsheetsfan{
  flex:none;position:relative;width:220px;height:180px;
  margin-left:auto;margin-top:20px;
}
.sheetfan{
  position:absolute;width:150px;height:92px;
  background:var(--kraft);border:1px solid var(--ink);
  border-radius:4px;
  transform-origin:left bottom;
}
.sf1{left:0;top:30px;transform:rotate(-14deg);}
.sf2{left:26px;top:16px;transform:rotate(-4deg);}
.sf3{left:54px;top:0;transform:rotate(8deg);}
.kickstrip{
  background:var(--cellar);color:var(--kraft);
  display:flex;gap:30px;flex-wrap:wrap;
  align-items:center;justify-content:center;
  padding:18px 24px;text-align:center;position:relative;z-index:1;
}
.kick{font-size:15px;}
.kick b{color:var(--sun);font-size:22px;display:block;}
.kicksep{width:6px;height:6px;background:var(--sun);border-radius:50%;}

/* ---------- STATEMENT ROW ---------- */
.statementrow{
  background:var(--cellar);color:var(--kraft);text-align:center;
  padding:64px 24px;position:relative;z-index:1;
}
.statementrow h2{
  font-size:64px;color:var(--sun);line-height:1;
}
.statementrow p{
  max-width:760px;margin:18px auto 0;font-size:18px;
}

/* ---------- LOT SHEET ROWS ---------- */
.lotsheet{position:relative;z-index:1;}
.lotsheetwrap{max-width:1200px;margin:0 auto;padding:70px 24px 10px;}
.lotsheetwrap h2{
  text-align:center;font-size:40px;color:var(--ink);margin-bottom:8px;
}
.lotsub{text-align:center;color:var(--slate);font-weight:bold;letter-spacing:2px;font-size:14px;margin-bottom:44px;}
.sheetrow{
  background:var(--kraft);
  border:1px solid var(--ink);
  border-radius:6px;
  padding:36px 46px 34px;
  position:relative;
  margin-bottom:0;
  display:grid;grid-template-columns:auto 1fr auto;gap:34px;align-items:center;
}
.sheetrow + .sheetrow{margin-top:44px;}
.sheetrow:nth-child(even){transform:translateX(40px);}
.sheetrow:nth-child(odd){transform:translateX(-14px);}
.sheetperf{position:absolute;left:0;right:0;top:-9px;display:flex;gap:14px;justify-content:center;}
.sheetperf i{width:6px;height:6px;border-radius:50%;background:var(--zinc);}
.sheetstamp{
  width:82px;height:82px;border-radius:50%;
  background:var(--sun);color:var(--ink);
  display:flex;align-items:center;justify-content:center;
  font-weight:bold;font-size:20px;border:3px dashed var(--ink);flex:none;
  transform:rotate(-6deg);
}
.sheetstamp small{font-size:11px;text-align:center;line-height:1.1;}
.sheettext h3{font-size:26px;color:var(--ink);margin-bottom:10px;}
.sheettext p{
  color:var(--ink);font-size:17px;max-width:820px;
}
.sheetflower{align-self:center;flex:none;display:flex;gap:4px;}
.sheetflower i{width:12px;height:12px;border-radius:50%;display:inline-block;}
.detail{
  grid-column:1/-1;font-weight:bold;color:var(--cellar);
  letter-spacing:2px;text-transform:uppercase;font-size:13px;
  border-top:1px dashed var(--zinc);padding-top:16px;
}
.detail a:hover{color:var(--sun);}

/* ---------- CLOCK DROP FLOW ---------- */
.clockflow{
  background:var(--slate);color:var(--ivory);
  padding:70px 24px;position:relative;z-index:1;overflow:hidden;margin-top:54px;
}
.clockflowwrap{max-width:1120px;margin:0 auto;}
.clockflow h2{
  font-size:40px;text-align:center;color:var(--ivory);margin-bottom:6px;
}
.clockflow .sub{text-align:center;color:var(--kraft);letter-spacing:2px;font-weight:bold;margin-bottom:30px;}
.priceline{position:relative;height:200px;margin-bottom:24px;}
.dropline{position:absolute;left:0;right:0;height:5px;top:60px;}
.droplet{position:absolute;left:60px;right:8%;height:5px;}
.droplet i{position:absolute;}
.disc{
  position:absolute;top:60px;transform:translate(-50%,-50%);
  width:74px;height:74px;border-radius:50%;
  background:var(--sun);color:var(--ink);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-weight:bold;text-align:center;line-height:1.15;font-size:14px;
  border:4px solid var(--cellar);z-index:2;box-shadow:0 0 0 3px var(--ivory);
}
.disc.slate{background:var(--slate);color:var(--ivory);border-color:var(--cellar);}
.disc.kraft{background:var(--kraft);color:var(--ink);border-color:var(--cellar);}
.disc.final{background:var(--cellar);border-color:var(--cellar);color:var(--sun);}
.disc small{font-size:10px;letter-spacing:1px;display:block;}
.dstep{
  position:absolute;top:-6px;transform:translateX(-50%);
  color:var(--kraft);font-size:12px;font-weight:bold;letter-spacing:2px;
  white-space:nowrap;
}
.dcap{
  position:absolute;transform:translateX(-50%);
  width:160px;top:96px;color:var(--ivory);font-size:13px;line-height:1.45;text-align:center;
}
.dstep1{left:2%;}.dcap1{left:2%;}
.dstep2{left:22%;}.dcap2{left:22%;}
.dstep3{left:42%;}.dcap3{left:42%;}
.dstep4{left:62%;}.dcap4{left:62%;}
.dstep5{left:82%;}.dcap5{left:82%;}
.disc1{left:4%;}
.disc2{left:24%;}
.disc3{left:44%;}
.disc4{left:64%;}
.disc5{left:86%;}

/* ---------- ACCENT STRIP / LISTING ---------- */
.listingband{
  background:var(--sun);color:var(--ink);
  padding:46px 24px;text-align:center;position:relative;z-index:1;
}
.listingband .mark{
  display:inline-block;border:3px solid var(--ink);
  padding:3px 14px;font-weight:bold;letter-spacing:3px;font-size:13px;
  margin-bottom:12px;text-transform:uppercase;
}
.listingband h2{font-size:34px;margin-bottom:10px;}
.listingband p{max-width:720px;margin:0 auto 18px;font-size:17px;color:var(--ink);}

/* ---------- PAGE HERO (secondary) ---------- */
.pagehero{
  background:var(--cellar);color:var(--ivory);
  padding:56px 24px;text-align:center;position:static;z-index:1;
}
.pagehero h1{font-size:46px;color:var(--ivory);}
.pagehero p{color:var(--kraft);max-width:640px;margin:10px auto 0;}
.crumb{color:var(--sun);font-weight:bold;letter-spacing:2px;font-size:13px;text-transform:uppercase;margin-bottom:10px;}

/* ---------- FOOTER: TROLLEY DOCK ---------- */
.trolleydock{
  background:var(--cellar);
  margin-top:0;position:relative;
  color:var(--ivory);
}
.docktop{
  border-top:10px solid var(--slate);
  padding:22px 24px 0;
  position:relative;
}
.railbar{position:relative;max-width:1200px;margin:0 auto;}
.railbar .railline{position:absolute;left:0;right:0;top:14px;height:5px;background:var(--zinc);}
.wheel{width:46px;height:46px;border-radius:50%;background:var(--zinc);border:5px solid var(--cellar);position:absolute;z-index:2;}
.wheel.wl{left:0;}
.wheel.wr{right:200px;}
.dockmotto{margin-top:26px;text-align:right;color:var(--sun);letter-spacing:4px;font-weight:bold;font-size:15px;}
.mottobkt{position:absolute;left:120px;top:-8px;}.mottobkt .flowers{transform:none;}
.footwrap{
  max-width:1200px;margin:0 auto;padding:40px 24px 20px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:40px;
}
.footcol h4{color:var(--sun);letter-spacing:2px;margin-bottom:14px;font-size:15px;text-transform:uppercase;}
.footcol ul li{margin-bottom:8px;position:relative;padding-left:18px;}
.footcol ul li::before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;border-radius:50%;background:var(--zinc);}
.footcol ul a:hover{color:var(--sun);}
.baseplate{
  background:var(--ivory);color:var(--ink);
  border-radius:8px 8px 0 0;padding:20px 24px;margin:0 24px;
  text-align:center;font-size:15px;line-height:1.7;position:relative;z-index:1;
}
.baseplate .biz{font-weight:bold;letter-spacing:1px;color:var(--cellar);}
.copyright{
  text-align:center;padding:16px;color:var(--sun);font-size:13px;letter-spacing:2px;
  position:relative;z-index:1;background:var(--cellar);
}

/* ---------- CONTACT PAGE ---------- */
.contactsplit{max-width:1200px;margin:0 auto;padding:54px 24px 80px;}
.contactgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;}
.formcard{
  background:var(--kraft);border:1px solid var(--ink);border-radius:8px;padding:34px;
  position:relative;
}
.formcard h2{font-size:28px;color:var(--cellar);margin-bottom:6px;}
.formcard>p{color:var(--ink);margin-bottom:22px;}
.formcard label{display:block;font-weight:bold;color:var(--cellar);margin:14px 0 6px;font-size:14px;}
.formcard input,.formcard select,.formcard textarea{
  width:100%;padding:12px;font-family:inherit;font-size:15px;
  background:var(--ivory);border:2px solid var(--ink);color:var(--ink);
}
.formcard input:focus,.formcard textarea:focus{outline:none;border-color:var(--sun);}
.contactinfo{display:flex;flex-direction:column;gap:20px;}
.infocard{background:var(--ivory);border:1px solid var(--ink);border-radius:8px;padding:22px;}
.infocard h3{color:var(--sun);font-size:18px;margin-bottom:6px;}
.infocard p{color:var(--ink);font-size:15px;}
.infocard a:hover{color:var(--sun);}
.hours{display:flex;justify-content:space-between;border-bottom:1px dashed var(--zinc);padding:4px 0;font-size:14px;color:var(--ink);}
.statusmsg{
  display:none;background:var(--ivory);color:var(--cellar);
  border:2px solid var(--cellar);padding:14px;border-radius:6px;margin-top:16px;font-weight:bold;
}
.statusmsg.show{display:block;}

/* ---------- SERVICE TABS / FAQ ---------- */
.faqlist{max-width:820px;margin:40px auto 0;}
.faqitem{border:1px solid var(--ink);border-radius:8px;margin-bottom:0;background:var(--kraft);}
.faqitem+.faqitem{margin-top:16px;}
.faqq{
  width:100%;background:none;border:none;text-align:left;
  padding:18px 22px;font-size:17px;font-weight:bold;color:var(--cellar);
  font-family:inherit;cursor:pointer;display:flex;justify-content:space-between;align-items:center;
}
.faqq .arrow{font-size:20px;font-weight:bold;color:var(--sun);}
.faqa{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faqa-in{padding:0 22px 18px;color:var(--ink);}
.accordion-open .faqa{max-height:400px;}
.accodion{
  max-width:820px;margin:0 auto 70px;
}
.acc-item{border:1px solid var(--ink);border-radius:8px;background:var(--kraft);}
.acc-item+.acc-item{margin-top:14px;}
.acc-h{
  cursor:pointer;padding:16px 22px;font-weight:bold;color:var(--cellar);
  font-size:18px;display:flex;justify-content:space-between;align-items:center;
}
.acc-h .plus{color:var(--sun);font-size:24px;}
.acc-c{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.acc-open .acc-c{max-height:600px;}
.acc-body{padding:0 22px 18px;color:var(--ink);}
.acc-item li{margin-bottom:6px;position:relative;padding-left:20px;}
.acc-item li::before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;background:var(--sun);border-radius:50%;}

/* process rows (services) */
.procband{max-width:1200px;margin:0 auto;padding:30px 24px 10px;}
.proctable{border-top:4px solid var(--slate);width:100%;}
.procstep{display:grid;grid-template-columns:110px 1fr;gap:30px;padding:22px 10px;border-bottom:1px solid var(--zinc);align-items:center;}
.procnum{background:var(--sun);color:var(--ink);font-weight:bold;font-size:22px;height:74px;width:74px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px dashed var(--ink);}
.procstep h3{font-size:22px;color:var(--cellar);}
.procval{max-width:820px;margin:0 auto 90px;}

.ctaband{
  background:var(--sun);color:var(--ink);
  padding:56px 24px;text-align:center;position:relative;z-index:1;
}
.ctaband h2{font-size:38px;}
.ctaband p{max-width:680px;margin:12px auto 20px;font-size:17px;}

.watermark{
  position:absolute;font-size:200px;font-weight:bold;line-height:1;
  color:var(--cellar);white-space:nowrap;z-index:0;pointer-events:none;
  top:50%;left:50%;transform:translate(-50%,-50%);
}
.watermark-vis{visibility:hidden;}

/* legal body distinct styles live in legal.css */

/* ---------- REVEAL ----------
   Hidden only when JavaScript is confirmed active; otherwise elements
   stay fully visible so the animations are always safe without JS. */
body.js-on .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
body.js-on .reveal.is-visible{opacity:1;transform:none;}
body.no-js .reveal, .reveal, noscript .reveal{opacity:1;}

/* responsiveness */
@media(max-width:900px){
  .deskfold{flex-direction:column;}
  .lotsheetsfan{margin:0 auto;}
  .contactgrid{grid-template-columns:1fr;}
  .footwrap{grid-template-columns:1fr;gap:26px;}
  .contactgrid{grid-template-columns:1fr;gap:44px;}
  .sheetrow{grid-template-columns:1fr;padding:30px;}
  .sheetrow:nth-child(even){transform:none;}
  .sheetrow:nth-child(odd){transform:none;}
  .brandtext{display:none;}
  .detail{grid-column:1;}
}
@media(max-width:680px){
  .paddlelinks{display:none;}
  .paddlelinks.drawer-open{display:flex;flex-direction:column;align-items:stretch;position:absolute;left:0;right:0;top:58px;background:var(--ivory);border:1px solid var(--ink);z-index:50;gap:0;}
  .paddlelinks.drawer-open .paddler{transform:none;border-radius:0;border:none;border-bottom:1px solid var(--ink);margin:0;padding:14px 18px;}
  .navtoggle{display:block;background:none;border:2px solid var(--ink);color:var(--ink);font-weight:bold;border-radius:6px;padding:8px 12px;margin-left:auto;cursor:pointer;}
  .navcta{margin-left:0;}
  .paddlebar{flex-wrap:wrap;}
  .desktext h1{font-size:34px;}
  .statementrow h2{font-size:40px;}
  .disc{width:58px;height:58px;font-size:11px;}
  .dispatchcap{display:none;}
}
.visbl{visibility:visible !important;}
