/* Rounded glass sections and botanical continuity */
main{padding-bottom:18px}.hero,.section{width:auto;margin:18px 3vw;border-radius:30px;overflow:hidden}.hero{margin-top:0;padding-left:4vw;padding-right:4vw;background:linear-gradient(105deg,rgba(7,16,12,.25),rgba(7,16,12,.04))}.section{padding-left:4vw;padding-right:4vw;border:1px solid rgba(245,239,230,.08)}.work,.packages,.occasions,.directory,.finale,.process{background-color:rgba(7,16,12,.74);background-image:linear-gradient(rgba(7,16,12,.78),rgba(7,16,12,.78)),url("assets/pattern.png");background-size:auto,680px}.process,.directory{background-color:rgba(7,16,12,.42);background-image:linear-gradient(rgba(7,16,12,.58),rgba(7,16,12,.58)),url("assets/botanical-bg.png");background-size:cover;background-position:center}.pricing-grid{grid-template-columns:repeat(3,1fr);max-width:1400px;gap:18px}.price{border-radius:24px;min-height:590px}.qr-package{background:linear-gradient(145deg,rgba(25,58,38,.82),rgba(9,20,14,.9));border:1px solid rgba(212,175,55,.3)}.request-package{border:0;border-top:1px solid currentColor;background:transparent;color:inherit;padding:22px 0 0;margin-top:auto;display:flex;justify-content:space-between;font:12px var(--sans);letter-spacing:.08em;cursor:pointer}.mini-qr{width:84px;height:84px;background-color:var(--cream);background-image:repeating-conic-gradient(var(--green) 0 25%,transparent 0 50%);background-size:14px 14px;border:9px solid var(--cream);margin:0 0 12px;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.generated-phone{position:absolute;left:50%;top:50%;width:min(350px,72%);height:680px;transform:translate(-50%,-50%) perspective(1300px) rotateX(5deg) rotateY(-8deg) rotateZ(2deg);transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .7s;outline:none}.generated-phone img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(25px 42px 45px rgba(0,0,0,.55))}.generated-phone:hover,.generated-phone:focus-visible{transform:translate(-50%,-52%) perspective(1300px) rotateX(2deg) rotateY(-3deg) rotateZ(0) scale(1.035);filter:brightness(1.08)}.phone-static{display:none}
.project-art{border-radius:24px}.occasion-track{gap:14px;border:0}.occasion-track article{border:1px solid var(--line);border-radius:20px}.vendor-card{cursor:pointer;border-radius:20px!important}.vendor-card:after{content:"OPEN DIRECTORY ↗";display:block;margin-top:18px;font-size:8px;letter-spacing:.18em;color:var(--gold);opacity:0;transform:translateY(7px);transition:.3s}.vendor-card:hover:after,.vendor-card:focus-visible:after{opacity:1;transform:none}
body.modal-open{overflow:hidden}body.modal-open main,body.modal-open header,body.modal-open footer{filter:blur(13px);transform:scale(.985);pointer-events:none}.modal-layer{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:24px}.modal-layer.active{display:flex}.modal-backdrop{position:absolute;inset:0;background:rgba(1,7,4,.75);animation:fadeIn .3s}.modal{position:relative;display:none;width:min(1080px,94vw);max-height:90vh;border-radius:28px;overflow:auto;background:rgba(15,34,23,.8);box-shadow:0 50px 140px rgba(0,0,0,.65);animation:modalIn .5s cubic-bezier(.2,.8,.2,1)}.modal.active{display:grid}.modal-close{position:absolute;z-index:5;right:18px;top:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(5,15,9,.5);color:var(--cream);font-size:25px;cursor:pointer}.vendor-modal{grid-template-columns:.9fr 1.1fr}.vendor-modal-image{min-height:650px;position:relative;overflow:hidden}.vendor-modal-image img{width:100%;height:100%;object-fit:cover}.vendor-modal-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(5,14,9,.55))}.vendor-modal-image>span{position:absolute;z-index:2;left:25px;bottom:25px;font-size:8px;letter-spacing:.25em;color:var(--gold)}.vendor-modal-content{padding:55px 45px}.vendor-modal-content h2,.package-modal h2{font:clamp(2.7rem,5vw,5.2rem)/.95 var(--serif);margin:0 0 20px}.vendor-intro{color:#aeb6b0;line-height:1.6}.vendor-list{display:grid;gap:11px;margin:30px 0}.vendor-entry{border:1px solid var(--line);border-radius:16px;padding:17px 18px;display:grid;grid-template-columns:1fr auto;gap:7px;background:rgba(255,255,255,.035);transition:.3s}.vendor-entry:hover{background:rgba(212,175,55,.1);transform:translateX(5px)}.vendor-entry h3{font:23px var(--serif);margin:0}.vendor-entry p{grid-column:1;color:#aab2ac;font-size:11px;margin:0}.vendor-entry a{grid-column:2;grid-row:1/3;align-self:center;color:var(--gold);font-size:18px}.dummy-note{display:block;color:#7f8982;line-height:1.5}.package-modal{grid-template-columns:.75fr 1.25fr}.package-modal-head{padding:58px 40px;background:linear-gradient(rgba(7,16,12,.7),rgba(7,16,12,.92)),url("assets/botanical-bg.png") center/cover}.package-modal-head h2{font-size:clamp(3rem,5vw,5.8rem)}.package-modal-head>p:last-child{color:#b2bab4;line-height:1.6}.package-modal form{padding:50px 45px}.package-modal input[type=file]{font-size:12px}.package-modal label small{display:block;margin-top:8px;color:#7f8982}.check-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:15px}.check-row input{width:auto;margin:0}.package-modal button[type=submit]{width:100%;border:0;border-radius:50px;background:var(--gold);color:var(--green);padding:17px 22px;display:flex;justify-content:space-between;font-weight:600}.package-modal .form-status{font-size:10px;color:#929c95}.modal-layer input,.modal-layer textarea,.modal-layer select{font-size:15px}@keyframes fadeIn{from{opacity:0}}@keyframes modalIn{from{opacity:0;transform:translateY(30px) scale(.96)}}
.vendor-entry{grid-template-columns:minmax(0,1fr);gap:15px}.vendor-entry p{grid-column:auto;margin-top:5px}.vendor-actions{display:flex;flex-wrap:wrap;gap:8px}.vendor-entry .vendor-actions a,.vendor-entry .vendor-actions .unavailable{grid-column:auto;grid-row:auto;align-self:auto;display:flex;flex-direction:column;gap:3px;min-width:145px;padding:10px 12px;border:1px solid rgba(245,239,230,.15);border-radius:12px;background:rgba(5,14,9,.35);color:var(--cream);font-size:11px;line-height:1.25}.vendor-entry .vendor-actions a:hover{transform:translateY(-3px);border-color:rgba(212,175,55,.55);background:rgba(212,175,55,.12)}.vendor-actions a span,.vendor-actions .unavailable span{color:var(--gold);font-size:8px;letter-spacing:.14em;text-transform:uppercase}.vendor-actions .unavailable{opacity:.48}
@media(max-width:1050px){.pricing-grid{grid-template-columns:1fr 1fr}.qr-package{grid-column:1/-1;min-height:480px}}@media(max-width:760px){.hero,.section{margin:10px;border-radius:22px}.pricing-grid{grid-template-columns:1fr}.qr-package{grid-column:auto}.generated-phone{width:260px;height:510px}.vendor-modal,.package-modal{grid-template-columns:1fr}.vendor-modal-image{min-height:270px}.vendor-modal-content,.package-modal form,.package-modal-head{padding:35px 24px}.package-modal-head{min-height:300px}.modal-layer{padding:10px}.modal{max-height:94vh;border-radius:22px}}
