@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--ink:#173c34;--paper:#f7f7ef;--lime:#d9ed86;--muted:#6c7770}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,select{touch-action:manipulation}button{cursor:pointer}header{max-width:1400px;margin:auto;height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Manrope,sans-serif;font-size:30px;font-weight:800;letter-spacing:-2px;display:flex;align-items:center;gap:10px}.brand span{font-size:10px;letter-spacing:1px;background:var(--lime);padding:7px;border-radius:5px}nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:600}nav button{border:1px solid #d7ddd1;border-radius:30px;background:transparent;padding:11px 17px;color:var(--ink)}nav b{background:var(--ink);color:white;border-radius:50%;padding:2px 6px;margin-left:5px}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:45px;padding:38px 6% 65px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;display:flex;align-items:center;gap:8px}.eyebrow i{width:7px;height:7px;background:#78994a;border-radius:100%}h1{font-family:Manrope,sans-serif;font-size:clamp(36px,4.2vw,63px);line-height:1.12;letter-spacing:-3px;margin:24px 0}h1 em{font-style:normal;background:var(--lime);border-radius:45%;padding:0 10px}p{line-height:1.7;color:var(--muted)}.hero-copy>p{max-width:430px;font-size:15px}.primary{display:inline-flex;background:var(--ink);color:white;border-radius:8px;padding:17px 22px;gap:35px;font-size:13px;margin-top:18px}.primary span{color:var(--lime)}.hero-note{font-size:11px;color:var(--muted);margin-top:25px}.hero-note span{color:var(--ink);margin-right:7px}.hero-art{height:460px;position:relative;border-radius:12px;overflow:hidden;background:#687c55}.hero-art img{width:100%;height:100%;object-fit:cover}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#123329b8)}.art-top,.art-bottom{position:absolute;z-index:1;color:white;left:28px;right:28px}.art-top{top:25px;font-size:9px;letter-spacing:1.5px;display:flex;justify-content:space-between}.art-bottom{bottom:30px}.art-bottom>span:first-child{font-size:9px;letter-spacing:2px}.art-bottom strong{display:block;font-size:43px;line-height:1.05;letter-spacing:-2px;margin-top:12px}.round{position:absolute;right:0;bottom:0;background:var(--lime);color:var(--ink);border-radius:50%;padding:18px;font-size:28px}.ticker{background:var(--lime);padding:19px;text-align:center;font-size:11px;letter-spacing:2px;font-weight:700;white-space:nowrap;overflow:hidden}.ticker span{margin:0 35px}.catalog{max-width:1400px;margin:auto;padding:75px 6%}.section-head{display:flex;justify-content:space-between;align-items:end}h2{font:800 36px/1.2 Manrope,sans-serif;letter-spacing:-1.5px;margin:12px 0 20px}.section-head p{font-size:13px}.demo{font-size:11px;color:#68704c;background:#eeefdc;border:1px solid #e0e4c8;padding:12px 15px;border-radius:6px;margin:10px 0 22px}.searchrow{display:flex;gap:12px}.search{display:flex;align-items:center;gap:12px;border:1px solid #dce0d6;background:white;border-radius:7px;flex:1;padding:0 16px;font-size:24px}.search input{border:0;outline:none;padding:16px 0;width:100%;font-size:12px;background:transparent}.search:focus-within{outline:2px solid #719457}select{border:1px solid #dce0d6;background:white;border-radius:7px;padding:12px;color:var(--ink);font-size:12px}.categories{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.categories button{border:1px solid #dce0d6;border-radius:25px;background:transparent;padding:10px 18px;color:var(--ink);font-size:12px}.categories button.active{background:var(--ink);color:white;border-color:var(--ink)}.results{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:26px 0 18px}.results button{border:0;background:none;color:var(--muted);font-size:11px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{background:white;border:1px solid #e2e5db;border-radius:10px;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #183e3410}.photo{height:210px;position:relative}.photo img{width:100%;height:100%;object-fit:cover}.tag{position:absolute;left:14px;top:14px;background:#fffef0ef;border-radius:5px;font-size:10px;padding:6px 9px}.heart{position:absolute;right:12px;top:12px;background:#fffffff2;border:0;border-radius:50%;height:32px;width:32px;color:var(--ink);font-size:20px}.heart.on{background:var(--lime)}.card-body{padding:20px}.date{color:#71855a;font-weight:700;font-size:10px;letter-spacing:1px}.card h3{font-family:Manrope;margin:11px 0;font-size:19px;letter-spacing:-.6px}.location{font-size:11px;color:var(--muted)}.card-foot{border-top:1px solid #eef0e9;margin-top:20px;padding-top:15px;display:flex;align-items:center;justify-content:space-between}.price{font-size:15px;font-weight:700}.price small{font-size:10px;color:var(--muted);font-weight:400}.details{border:0;background:none;color:var(--ink);font-size:11px;font-weight:700}.empty{text-align:center;padding:50px}.about{background:#eaeedf;padding:65px max(6%,calc((100vw - 1232px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px}.about p{font-size:13px;max-width:350px}.steps article{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid #ccd5c5}.steps b{font-size:12px;padding-top:5px;color:#7e905c}.steps h3{margin:0;font-size:16px}.steps p{margin:5px 0}footer{padding:35px 6%;display:flex;align-items:center;justify-content:space-between}footer p,footer small{font-size:11px;color:var(--muted)}dialog{border:0;border-radius:15px;padding:0;max-width:620px;width:92%;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#102e27b8;backdrop-filter:blur(5px)}.close{position:absolute;right:14px;top:14px;border:0;background:white;border-radius:50%;width:34px;height:34px;font-size:24px;z-index:2}.modal-img{width:100%;height:230px;object-fit:cover}.modal-body{padding:28px}.modal-body h2{font-size:29px}.info{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:13px;margin:24px 0}.info small{display:block;color:var(--muted);margin-bottom:5px}.modal-actions{display:flex;gap:10px;flex-wrap:wrap}.modal-actions button,.modal-actions a{border:1px solid #d4dccd;background:var(--paper);color:var(--ink);padding:12px;border-radius:6px;font-size:12px}.disclaimer{font-size:11px;background:#f2f2e4;padding:12px;border-radius:6px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:13px 24px;border-radius:8px;font-size:12px;display:none;z-index:5}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #90ae49;outline-offset:3px}@media(max-width:800px){header{height:80px}nav{gap:10px}nav>a{display:none}nav button span{display:none}.hero{grid-template-columns:1fr;padding-top:20px;gap:30px}.hero-art{height:320px}h1{font-size:43px}.hero-copy>p{max-width:100%}.section-head{display:block}.section-head p{margin-top:0}.catalog{padding-top:45px}.searchrow{flex-wrap:wrap}.search{flex-basis:100%}select{flex:1;min-width:0}.grid{grid-template-columns:repeat(2,1fr);gap:14px}.photo{height:170px}.card-body{padding:15px}.card h3{font-size:16px}.about{grid-template-columns:1fr;gap:20px}footer{flex-wrap:wrap;gap:10px}footer small{width:100%}}@media(max-width:480px){.grid{grid-template-columns:1fr}.photo{height:220px}.categories{gap:6px}.categories button{padding:9px 12px;font-size:11px}h2{font-size:30px}.hero-art{height:290px}.art-bottom strong{font-size:38px}.info{grid-template-columns:1fr 1fr}}
.planner{background:#e9efdc;border:1px solid #d8e0c8;border-radius:12px;padding:25px;margin:24px 0}.planner h3{font:800 24px Manrope;margin:12px 0 0;letter-spacing:-.7px}.planner p{font-size:13px;margin:8px 0 20px}.budget-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.budget-fields label,.availability label{font-size:11px;font-weight:600}.budget-fields input{display:block;width:100%;padding:13px;border:1px solid #ced7c4;border-radius:6px;margin-top:8px;background:#fff;color:var(--ink)}.planner>small{display:block;margin-top:14px;font-size:11px;color:#68704c}.occasion-title{font-size:10px;font-weight:800;letter-spacing:2px;margin-top:28px}.occasions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 26px}.occasions button{background:#fff;border:1px solid #dce0d6;border-radius:7px;padding:12px 17px;color:var(--ink);font-size:12px}.occasions button.active{background:var(--lime);border-color:#aec875}.availability{display:flex;align-items:end;gap:15px;margin-top:16px}.availability select{display:block;margin-top:7px;width:100%}.availability>span{font-size:11px;color:var(--muted);max-width:260px;padding-bottom:8px}.fit{font-size:11px;margin:15px 0 10px;min-height:19px;color:#67804e}.plan-total{background:#f1f5e8;padding:11px;border-radius:6px;font-size:12px}.plan-total strong{float:right;font-size:16px}.plan-total small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.cost-detail{border:1px solid #dce5ce;border-radius:9px;background:#f3f6eb;padding:18px;margin:20px 0}.cost-detail h3{margin:0;font-size:17px}.cost-detail p{font-size:12px}@media(max-width:650px){.budget-fields{grid-template-columns:1fr}.availability{flex-wrap:wrap;align-items:start}.availability label{flex:1;min-width:130px}.availability>span{max-width:none;flex-basis:100%}.planner{padding:18px}.occasions button{padding:10px 12px}}
