:root{--p:#2a0b46;--p2:#4d1973;--g:#d7a52a;--cream:#fbf6ea;--soft:#f7f4f9;--ink:#241d28;--muted:#6d6670;--line:#e8e0eb;--white:#fff;--shell:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.55 Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#fff}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}[hidden]{display:none!important}.shell{width:min(calc(100% - 36px),var(--shell));margin:auto}.skip{position:fixed;top:-60px;left:16px;background:#fff;padding:10px;z-index:100}.skip:focus{top:16px}header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}.navrow{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;text-decoration:none;font-weight:900;letter-spacing:.12em;color:var(--p)}.brand img{width:190px;max-height:54px;object-fit:contain}.menu{display:none;border:0;background:transparent;font-size:1.5rem;color:var(--p)}nav{display:flex;align-items:center;gap:24px}nav a{color:var(--p);text-decoration:none;font-weight:800;font-size:.88rem}.btn{border:0;border-radius:9px;min-height:46px;padding:12px 20px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.purple{background:var(--p2);color:#fff}.gold{background:var(--g);color:#24152d}.ghost{border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.08);color:#fff}.outline{border:2px solid var(--p2);background:#fff;color:var(--p2)}.full{width:100%;min-height:56px}.hero{min-height:520px;position:relative;display:grid;align-items:center;background:var(--p);overflow:hidden}.heroimg{position:absolute;inset:0}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,6,52,.94),rgba(32,6,52,.72) 52%,rgba(32,6,52,.25))}.herocopy{position:relative;z-index:2;padding:64px 0;color:#fff}.eyebrow{color:var(--g);font-size:.75rem;font-weight:900;letter-spacing:.18em;margin:0 0 10px}.dark{color:var(--p2)}h1,h2,h3{font-family:Georgia,serif;color:var(--p);line-height:1.05}h1{font-size:clamp(2.8rem,6vw,5.4rem);max-width:790px;color:#fff;margin:0}h1 em{font-style:normal;color:var(--g)}h2{font-size:clamp(2rem,4vw,3.15rem);margin:0}.herocopy>p:not(.eyebrow){font-size:1.2rem;color:rgba(255,255,255,.85)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.placeholder{min-height:220px;border-radius:14px;background:linear-gradient(135deg,#4f1b73,#2b0c46);color:rgba(255,255,255,.85);display:grid;place-items:center;align-content:center;text-align:center;padding:20px;font-size:.8rem;font-weight:900;letter-spacing:.08em}.placeholder small{opacity:.7;font-weight:500;letter-spacing:0}.heroimg{border-radius:0;min-height:100%}.section{padding:84px 0}.soft{background:var(--cream)}.heading{max-width:660px;margin-bottom:36px}.heading p:last-child{color:var(--muted)}.center{text-align:center;margin-left:auto;margin-right:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 26px rgba(40,8,62,.06)}.media{border-radius:0;aspect-ratio:4/3;min-height:0}.body{padding:22px;display:grid;gap:16px}.body h3{font-size:1.35rem;margin:0}.body b{color:var(--p2);font-size:1.15rem}.note{color:var(--muted);font-size:.9rem}.twophotos{display:grid;grid-template-columns:1fr 1fr;gap:20px}.twophotos .placeholder{aspect-ratio:16/9;min-height:0}.pricing{max-width:900px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden}.pricing>div{min-height:180px;display:grid;place-items:center;align-content:center;padding:25px}.pricing>div+div{border-left:1px solid var(--line)}.pricing span{font-size:.72rem;letter-spacing:.14em;font-weight:900;color:var(--p2)}.pricing strong{font:700 2.35rem Georgia,serif;color:var(--p)}.pricing small{color:var(--muted)}.builder{padding:88px 0;background:linear-gradient(135deg,#220636,#4a176d);color:#fff}.builderintro{max-width:760px;margin-bottom:30px}.builderintro h2{color:#fff}.builderintro>p:last-child{color:rgba(255,255,255,.75)}.buildgrid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.flow{display:grid;gap:12px}.step{background:#fff;color:var(--ink);border-radius:14px;overflow:hidden}.stephead{width:100%;min-height:78px;border:0;background:#fff;display:flex;align-items:center;gap:14px;text-align:left;padding:16px 20px}.stephead>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f1e9f7;color:var(--p2);font-weight:900}.stephead div{display:grid;min-width:0}.stephead b{color:var(--p)}.stephead small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content{padding:0 20px 22px}.qty{min-height:76px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.qty>div:first-child{display:grid}.qty small{color:var(--muted)}.stepper{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.stepper button{width:44px;height:44px;border:0;background:var(--soft);color:var(--p);font-size:1.35rem}.stepper input{width:76px;min-width:76px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font-weight:900}.packagebar{width:100%;border:1px solid rgba(215,165,42,.55);background:var(--cream);border-radius:10px;min-height:66px;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;text-align:left}.packagebar span{display:grid}.packagebar small{color:var(--muted)}.next{display:flex;justify-content:flex-end;margin-top:18px}.split{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.back{border:0;background:transparent;color:var(--p2);font-weight:800;min-height:44px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid var(--line);padding-top:18px}.address{grid-template-columns:2fr .7fr 1fr}.wide{grid-column:1/-1}label{display:grid;gap:6px;color:var(--p);font-weight:800;font-size:.87rem}label i{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #d9cfde;border-radius:8px;padding:11px 12px;min-height:46px}input:focus,textarea:focus,select:focus{outline:3px solid rgba(77,25,115,.13);border-color:var(--p2)}.error{padding:10px 12px;background:#fff0f0;color:#9d1d1d;border-radius:8px;font-size:.88rem;font-weight:700}.light{background:rgba(255,255,255,.1);color:#ffe7e7}.estimate{position:sticky;top:95px;background:#fff;color:var(--ink);border-radius:15px;padding:22px;box-shadow:0 16px 40px rgba(20,0,30,.2)}.estimate>div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--line)}.estimate b{color:var(--p)}.estimate .total{font-size:1.08rem;padding-top:18px}.estimate .total b{font-size:1.3rem}.review{border:1px solid rgba(215,165,42,.45);border-radius:15px;padding:24px;background:rgba(255,255,255,.08)}.review h3{color:#fff;font-size:2rem;margin:.2rem 0}.review>p:not(.eyebrow){color:rgba(255,255,255,.75)}#reviewDetails{border-top:1px solid rgba(255,255,255,.15);margin:18px 0}.reviewline{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12)}.reviewline b{text-align:right;color:#fff}.success{background:#fff;color:var(--ink);border-radius:16px;padding:55px;text-align:center;max-width:760px;margin:auto}.success h2{margin:8px 0}.check{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#e5f4e8;color:#156b3a;font-size:2rem}.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.trust article{border:1px solid var(--line);border-radius:13px;padding:23px}.trust b{color:var(--p)}.trust p{color:var(--muted)}.service{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px}.service p{color:var(--muted)}.servicebox{min-height:300px;border-radius:16px;background:linear-gradient(135deg,#f0e7f6,#e8d9f1);display:grid;place-items:center;align-content:center;text-align:center;color:var(--p);font-weight:900;letter-spacing:.14em}.servicebox small{font-weight:500;letter-spacing:0;color:var(--muted);max-width:280px}.narrow{max-width:900px}.narrow details{border:1px solid var(--line);border-radius:11px;margin:10px 0}.narrow summary{padding:17px 19px;font-weight:850;color:var(--p);cursor:pointer}.narrow details p{padding:0 19px 18px;color:var(--muted)}footer{background:#fbf6ea;color:var(--muted);padding:55px 0;border-top:1px solid var(--line)}.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footerbrand{display:inline-flex;text-decoration:none;color:var(--p);font-weight:900}.footerbrand img{max-width:150px;max-height:95px;object-fit:contain}.foot b{color:var(--p);display:block;margin-bottom:10px}.foot a,.foot button{display:block;border:0;background:transparent;color:var(--p2);text-decoration:none;padding:0;margin:7px 0;text-align:left}
@media(max-width:900px){.cards,.trust{grid-template-columns:1fr 1fr}.cards article:last-child{grid-column:1/-1}.buildgrid{grid-template-columns:1fr}.estimate{position:static;order:-1}.service{grid-template-columns:1fr}}
@media(max-width:760px){.menu{display:block}.brand img{width:145px;max-height:44px}nav{display:none;position:absolute;left:18px;right:18px;top:68px;background:#fff;padding:16px;border-radius:12px;box-shadow:0 12px 30px rgba(20,0,30,.15);flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{min-height:500px;align-items:end}.shade{background:linear-gradient(0deg,rgba(32,6,52,.95),rgba(32,6,52,.52))}.herocopy{padding:74px 0 42px}.section{padding:65px 0}.cards,.trust,.twophotos,.pricing,.foot{grid-template-columns:1fr}.cards article:last-child{grid-column:auto}.pricing>div+div{border-left:0;border-top:1px solid var(--line)}.fields,.address{grid-template-columns:1fr}.wide{grid-column:auto}.builder{padding:65px 0}.success{padding:35px 22px}.reviewline{display:grid;gap:4px}.reviewline b{text-align:left}}
@media(max-width:480px){.shell{width:min(calc(100% - 24px),var(--shell))}.actions{display:grid}.actions .btn{width:100%}.stephead{padding:14px}.content{padding:0 14px 18px}}

/* EWO-BWR-004R — storefront cards are Stage 1 of the builder */
.rental-card .body { align-content: start; }
.card-select {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.card-select > span {
  color: var(--muted);
  font-size: .88rem;
  font-weight: 800;
}
.package-status {
  margin: 0;
  color: var(--p2);
  font-size: .86rem;
  font-weight: 800;
  text-align: center;
}
.catalog-continue {
  max-width: 540px;
  margin: 28px auto 0;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: var(--soft);
}
.catalog-continue > div {
  display: grid;
}
.catalog-continue span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 800;
}
.catalog-continue strong {
  color: var(--p);
  font-size: 1.4rem;
}
.catalog-error {
  max-width: 540px;
  margin: 12px auto 0;
}
@media(max-width:560px){
  .catalog-continue {
    align-items: stretch;
    flex-direction: column;
  }
  .catalog-continue .btn { width: 100%; }
}


/* EWO-BWR-004R2 — three-digit-safe storefront quantity controls */
.rental-card .stepper input,
.card-select .stepper input {
  width: 76px;
  min-width: 76px;
  padding-inline: 8px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

@media(max-width:480px){
  .rental-card .stepper input,
  .card-select .stepper input {
    width: 72px;
    min-width: 72px;
  }
}


/* EWO-BWR-005 — production photography publication */
.production-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.heroimg.production-photo {
  min-height: 100%;
  object-position: center 58%;
}
.product-photo {
  overflow: hidden;
  background: #fff;
  display: grid;
  place-items: center;
}
.product-photo img {
  width: 100%;
  height: 100%;
}
.product-photo.contain img {
  object-fit: contain;
  padding: 12px;
}
.product-photo.cover img {
  object-fit: cover;
  object-position: center;
}
.transformation {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  gap: 18px;
  align-items: center;
}
.transform-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 26px rgba(40,8,62,.06);
}
.photo-frame {
  aspect-ratio: 16/10;
  overflow: hidden;
  background: #eee;
}
.photo-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.transform-card:first-child .photo-frame img {
  object-position: center 54%;
}
.transform-card:last-child .photo-frame img {
  object-position: center 60%;
}
.transform-card figcaption {
  padding: 16px 18px 18px;
  display: grid;
  gap: 4px;
}
.transform-card figcaption span {
  color: var(--g);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
}
.transform-card figcaption strong {
  color: var(--p);
  font-family: Georgia, serif;
  font-size: 1.15rem;
}
.transform-arrow {
  color: var(--g);
  font-size: 2rem;
  font-weight: 900;
}
.photo-disclosure {
  max-width: 850px;
  margin: 18px auto 0;
  color: var(--muted);
  font-size: .82rem;
}
@media(max-width:760px){
  .heroimg.production-photo { object-position: 61% center; }
  .transformation { grid-template-columns: 1fr; }
  .transform-arrow { transform: rotate(90deg); text-align: center; line-height: 1; }
  .photo-frame { aspect-ratio: 4/3; }
}

/* EWO-BWR-007 — rental time selectors */
select[name="startTime"],
select[name="endTime"]{
  appearance:auto;
  background:#fff;
  color:var(--ink);
  cursor:pointer;
}
