@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--night:#092627;--forest:#123c36;--green:#165f4a;--red:#bc3944;--gold:#eec66a;--cream:#fcf9f0;--ink:#18343a;--muted:#5c6e72;--line:#dfebe5;--shadow:0 15px 60px rgba(12,47,36,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 'DM Sans',system-ui,sans-serif}h1,h2,h3,h4,strong,.brand{font-family:Outfit,system-ui,sans-serif;line-height:1.15}h1{font-size:clamp(2.6rem,6vw,5rem);letter-spacing:-.055em;margin:.3em 0}h2{font-size:clamp(1.8rem,3.4vw,2.8rem);letter-spacing:-.04em;margin:.2em 0}h3{font-size:1.15rem}a{color:var(--green)}a:hover{color:#ba3748}p{margin:0 0 1.1em}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;padding:13px 15px;border:1px solid #c9ddd5;border-radius:12px;background:#fff;color:var(--ink)}textarea{min-height:100px}input:focus,select:focus,textarea:focus{outline:2px solid #e3c36d;outline-offset:1px}.wrap{max-width:1180px;margin:auto;padding:0 22px}.top{background:var(--night);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #ffffff16}.top-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:78px}.brand{color:white;text-decoration:none;font-size:23px;font-weight:800;letter-spacing:-1px;display:flex;gap:10px;align-items:center}.brand:hover{color:white}.brand small{font-size:8px;letter-spacing:3px;display:block;color:#ddd5ab;margin:2px 0 0}.brand-mark{font-size:35px;color:var(--gold)}.gold{color:var(--gold)}nav{display:flex;gap:20px;align-items:center}nav a{font-size:14px;font-weight:600;color:#edf5ef;text-decoration:none}nav a:hover{color:var(--gold)}nav .nav-action{background:var(--gold);color:#203b30;border-radius:30px;padding:10px 15px}.hamb{display:none;border:0;background:transparent;color:#fff;font-size:26px;cursor:pointer}.hero{background:radial-gradient(ellipse at 82% 25%,rgba(244,188,94,.28),transparent 28%),linear-gradient(130deg,#092726 8%,#205742 100%);color:#fff;position:relative;overflow:hidden;padding:85px 0 88px}.hero:before{content:'✦  ✧  ✦   ✧   ✦  ✧ ✦';position:absolute;right:0;top:38px;opacity:.25;color:var(--gold);font-size:60px;transform:rotate(-12deg);pointer-events:none}.hero .wrap{position:relative;z-index:1}.hero p{color:#d8e9df;max-width:600px;font-size:18px}.eyebrow{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:2.3px;color:#b18027}.hero .eyebrow{color:var(--gold)}.lead{font-size:18px;color:#637371}.hero h1{max-width:790px}.btn{border:0;border-radius:11px;background:var(--green);color:#fff;text-decoration:none;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;padding:12px 21px;min-height:47px}.btn:hover{background:#114334;color:white}.btn.goldbtn{background:var(--gold);color:#183d37}.btn.goldbtn:hover{background:#ffdb88}.btn.ghost{background:#fff;color:#17483e;border:1px solid #cfe1d9}.btn.sm{font-size:13px;padding:7px 12px;min-height:34px}.btn.danger{background:#9b3040}.hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-stat{display:inline-flex;gap:10px;align-items:center;background:#ffffff14;border:1px solid #ffffff28;border-radius:40px;padding:10px 16px;margin-top:22px;font-size:14px}.site-section{padding:65px 0}.site-section.alt{background:#ecf3ec}.section-head{max-width:700px;margin-bottom:30px}.section-head p{color:var(--muted);margin:9px 0 0}.tool-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.tool-card,.card{background:white;border:1px solid var(--line);border-radius:18px;padding:23px;box-shadow:0 8px 25px rgba(13,47,40,.035)}.tool-card{text-decoration:none;display:flex;flex-direction:column;color:var(--ink);transition:transform .2s,box-shadow .2s}.tool-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}.tool-icon{font-size:32px;margin-bottom:12px}.tool-card strong{font-size:17px}.tool-card p{font-size:13px;color:var(--muted);margin:9px 0 15px}.tool-link{font-size:13px;color:var(--green);font-weight:800;margin-top:auto}.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.hero-search,.searchbar{display:flex;gap:8px;background:#fff;border-radius:14px;padding:7px;max-width:610px}.hero-search input,.searchbar input{border:0;min-width:0}.hero-search button{white-space:nowrap}.site-intro{padding:38px 0 14px}.site-intro h1{font-size:clamp(2.2rem,5vw,3.8rem);color:var(--night);margin:0 0 12px}.site-intro p{color:var(--muted);max-width:760px}.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#0f5340;background:#e5f2e7;border-radius:30px;padding:5px 11px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{margin-bottom:16px}.field label{display:block;font-weight:700;font-size:13px;margin-bottom:6px}.field small{color:var(--muted);font-size:12px}.check{display:flex;align-items:flex-start;gap:9px}.check input{width:auto;flex:none;margin-top:5px}.error{border:1px solid #f2bec4;background:#fff0f0;color:#922b3b;padding:13px;border-radius:10px}.notice{background:#fff5d9;border:1px solid #e9d297;color:#5b4926;border-radius:12px;padding:15px;margin:14px 0}.success{background:#e4f4e9;border:1px solid #99d4af;color:#17583a;padding:14px;border-radius:10px}.tool-shell{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:24px;align-items:start}.preview{background:white;border:1px solid #e2e5db;border-radius:18px;padding:26px;min-height:300px}.print-paper{background:#fffdf7;padding:34px;border:5px double #c7a753;border-radius:5px;color:#183832;box-shadow:0 5px 20px #0000000a;min-height:380px}.print-paper h2{font-family:Georgia,serif;text-align:center;color:#b13f44}.print-paper .signature{font-family:Georgia,serif;font-style:italic;text-align:right;font-size:27px;color:#b23d43}.list-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line)}.list-row input[type=checkbox]{width:18px}.list-row .grow{flex:1;min-width:140px}.list-row .money{font-weight:800;color:#19583f;white-space:nowrap}.list-row .item-done{text-decoration:line-through;color:#889896}.right{text-align:right}.flex{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.muted{color:var(--muted)}.mini{font-size:13px}.map-holder{border-radius:16px;overflow:hidden;min-height:430px;background:linear-gradient(120deg,#d4e6dc,#eff4dc);position:relative;border:1px solid #d1dfd4}.map{height:440px;width:100%}.map-missing{padding:45px 25px;text-align:center}.map-layout{display:grid;grid-template-columns:minmax(280px,350px) 1fr;gap:20px}.display-list{max-height:560px;overflow:auto}.display-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:15px;margin-bottom:12px}.display-card h3{margin:5px 0}.display-card p{font-size:13px;margin:5px 0}.display-actions{display:flex;gap:5px;margin-top:12px;flex-wrap:wrap}.state-links{display:flex;gap:9px;flex-wrap:wrap}.state-links a{background:#e8f2ed;padding:8px 15px;border-radius:50px;text-decoration:none;font-weight:700}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.gallery-item img{width:100%;height:210px;object-fit:cover}.gallery-item p{padding:0 15px 15px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding-top:50px;padding-bottom:35px}footer{background:#092827;color:#c0d5cd;margin-top:50px}footer h3{color:white}footer a{display:block;color:#c0d5cd;text-decoration:none;margin:5px 0;font-size:14px}footer a:hover{color:var(--gold)}.footer-brand{font-size:22px;color:white}.footer-note{border-top:1px solid #ffffff25;padding-top:15px;padding-bottom:20px;color:#b1cbc0;font-size:12px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.sticky{position:sticky;top:98px}.total{font-weight:800;font-family:Outfit;font-size:25px;color:var(--green)}.task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.task-grid label{background:#fff;padding:12px;border:1px solid var(--line);border-radius:12px;display:flex;gap:8px;align-items:center}.task-grid input{width:auto}.smallpage{max-width:850px;margin:auto}.divider{height:1px;background:var(--line);margin:24px 0}.tag{background:#e8f4e7;border-radius:20px;font-size:12px;padding:4px 9px;display:inline-block}.empty{color:var(--muted);padding:20px;border:1px dashed #acc7b6;border-radius:12px}.hero-stars{font-size:100px;color:#e2af59;position:absolute;right:5%;bottom:-20px;opacity:.12}.ad-placeholder{display:none}table{border-collapse:collapse;width:100%}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:13px}main{min-height:58vh}@media(max-width:1060px){.tool-grid{grid-template-columns:repeat(3,1fr)}nav{gap:12px}nav a{font-size:12px}}@media(max-width:780px){.hamb{display:block}nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--night);padding:17px 24px;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{font-size:15px;padding:8px}.map-layout,.two,.tool-shell{grid-template-columns:1fr}.sticky{position:static}.three,.gallery-grid{grid-template-columns:1fr 1fr}.hero{padding:65px 0}.hero h1{font-size:clamp(2.5rem,10vw,4rem)}.footer-grid{grid-template-columns:1fr 1fr}.tool-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.wrap{padding:0 15px}.tool-grid,.gallery-grid,.three,.form-grid,.task-grid{grid-template-columns:1fr}.tool-card{padding:18px}.hero-search,.searchbar{flex-wrap:wrap}.hero-search input{flex:1 0 100%}.hero-search button{width:100%}.footer-grid{grid-template-columns:1fr}.map{height:370px}.print-paper{padding:22px}}
@media print{header,footer,.no-print,.actions,.tools-nav,.sticky-controls{display:none!important}body{background:#fff;color:#111}.wrap{max-width:none;padding:0}.site-intro,.site-section{padding:0!important}.tool-shell,.two,.map-layout{display:block}.preview,.print-paper{border:0;box-shadow:none;padding:0}.card{border:0;box-shadow:none}.print-only{display:block!important}h1{font-size:28px}@page{size:A4;margin:12mm}}
