@charset "UTF-8";
:root{--ink:#203d35;--muted:#64716a;--paper:#faf9f5;--green:#244f40;--line:#dedfd5;--lime:#d7e6a7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #aa681e;outline-offset:6px}img{max-width:100%;display:block}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.top{max-width:1440px;margin:auto;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:9px;font-size:31px;font-weight:700;letter-spacing:-1.5px;line-height:1}.brand .dot{color:#9c713e}.top nav{display:flex;gap:30px;font-size:13px}.top-actions{display:flex;align-items:center;gap:25px;font-size:13px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;padding:15px 23px;border-radius:6px;font-size:13px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{text-decoration:none;transform:translateY(-2px)}.primary{background:var(--green);color:white}.primary:hover{background:#173c30}.ghost{border:1px solid var(--line)}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:1.02fr 1fr;gap:60px;align-items:center;padding-block:70px 76px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.9px;margin:0 0 26px;line-height:1.6}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin:0 8px 1px 0}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.5px;line-height:1.04}h1{font-size:clamp(66px,6.7vw,96px);margin-bottom:26px}h1 em{font-weight:400;color:#56745b}h2{font-size:clamp(38px,4vw,54px);margin-bottom:25px}h3{line-height:1.3;font-size:19px;font-weight:500;margin-bottom:15px;letter-spacing:-.4px}.lead{font-size:17px;line-height:1.75;color:var(--muted);max-width:415px;margin-bottom:28px}.cta{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.fine{font-size:11px;color:var(--muted);margin:17px 0 0;line-height:1.7}.text-link{font-size:12px;font-weight:600;display:inline-flex;gap:20px;align-items:center}.hero-visual{position:relative;padding-bottom:28px}.architecture{width:100%;height:510px;object-fit:cover;border-radius:110px 6px 6px 6px;object-position:56% center}.photo-label{position:absolute;bottom:52px;left:24px;right:20px;color:white;font-size:10px;text-shadow:0 1px 4px #000}.floating-card{position:absolute;bottom:0;left:-28px;background:white;padding:19px 24px;border:1px solid #efeee9;box-shadow:0 14px 40px #203d3512;border-radius:8px;display:flex;align-items:center;gap:14px}.floating-card strong,.floating-card span{display:block}.floating-card strong{font-size:14px;font-weight:600}.floating-card div>span{font-size:10px;color:var(--muted)}.status-icon{width:36px;height:36px;display:grid!important;place-items:center;background:#edf1df;border-radius:50%;color:var(--green)}.promise{display:flex;justify-content:space-between;gap:20px;align-items:center;border-block:1px solid var(--line);padding-block:23px}.promise>span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.promise p{margin:0;font-size:12px}.promise b{font-weight:400;color:#929b87}.section{padding-block:100px}.overview{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:center}.section-intro>p:not(.eyebrow){color:var(--muted);max-width:330px;font-size:14px}.sample-note{font-size:10px!important;margin-top:30px}.dashboard{background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 55px #223e3509;overflow:hidden}.dashboard-top{padding:17px 23px;border-bottom:1px solid #edf0e9;display:flex;align-items:center;gap:20px}.mini-brand{font-size:20px;font-weight:700;letter-spacing:-1px}.dashboard-top>span:nth-child(2){font-size:8px;letter-spacing:1.5px;color:var(--muted);flex:1}.avatar{font-size:9px;background:#edf0e5;border-radius:50%;padding:7px}.dashboard-body{padding:25px}.dashboard-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dashboard-title h3{font-size:18px;margin:0}.dashboard-title>span{font-size:9px;border:1px solid var(--line);padding:4px 9px;border-radius:4px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metrics>div{padding:14px 10px;background:#f7f8f3;border-radius:5px}.metrics span{display:block;font-size:9px;color:var(--muted)}.metrics strong{font-size:22px;font-weight:500;letter-spacing:-.7px}.green{color:#347549}.collection{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin:17px 0 7px}.progress{height:5px;background:#edf0e8;border-radius:8px;margin-bottom:22px}.progress>span{display:block;width:61.98%;height:100%;background:#749269;border-radius:8px}.rent-row{display:grid;grid-template-columns:1fr 85px 66px;gap:10px;align-items:center;border-bottom:1px solid #eceee8;padding:13px 0;font-size:11px}.rent-row:last-child{border:0}.rent-row strong{font-size:11px;font-weight:500}.rent-row small{display:block;font-size:9px;color:var(--muted)}.rent-row b{font-size:11px;font-weight:500}.table-label{font-size:8px;color:var(--muted);padding-top:0}.badge{font-size:8px;text-align:center;padding:3px 7px;border-radius:4px}.paid{background:#edf4e9;color:#3d6949}.partial{background:#f8efd9;color:#805e1c}.due{background:#f9eae2;color:#974d2e}.features-band{background:#eef0e7}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;font-size:14px;color:var(--muted);margin-bottom:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.feature-grid article{border-top:1px solid #c9cfbf;padding-top:28px}.feature-number{font-size:9px;letter-spacing:1.5px;color:#61735c}.feature-grid h3{font-family:Georgia,serif;font-size:31px;margin-top:32px;line-height:1.15;letter-spacing:-.7px}.feature-grid p,.feature-extras p{font-size:13px;color:var(--muted);line-height:1.8}.feature-extras{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;border-top:1px solid #c9cfbf;margin-top:25px;padding-top:25px}.feature-extras p{margin:0}.feature-extras strong{color:var(--ink);display:block;font-weight:500}.how{display:grid;grid-template-columns:1fr 1fr;gap:70px}.muted{color:var(--muted);font-size:14px}.steps{padding:0;margin:0;list-style:none}.steps li{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:0 0 23px;margin-bottom:23px}.steps li:last-child{margin:0}.steps li>span{color:#7d8c6a;font-family:Georgia,serif;font-size:26px}.steps h3{font-size:17px;margin-bottom:7px}.steps p{font-size:13px;color:var(--muted);margin:0}.roles{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px;border-block:1px solid var(--line);padding-block:40px}.roles h2{font-size:31px;letter-spacing:-1px;margin:0}.roles .eyebrow{font-size:8px;margin-bottom:13px}.roles article{padding-top:25px}.roles h3{font-size:15px}.roles p{font-size:12px;color:var(--muted);margin-bottom:0}.pricing{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.plan{background:white;border:1px solid var(--line);border-radius:8px;padding:35px}.plan-top{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1px}.trial{background:#edf2da;padding:5px 10px;border-radius:3px;letter-spacing:0}.price{font-size:72px;line-height:1.2;letter-spacing:-3px;margin:28px 0 4px}.price span{font-size:14px;letter-spacing:0;color:var(--muted);margin-left:10px}.annual{font-size:12px;color:var(--muted)}.plan ul{list-style:none;padding:23px 0;margin:22px 0;border-top:1px solid var(--line)}.plan li{font-size:13px;margin-bottom:11px}.plan li:before{content:'✓';color:#6b8552;margin-right:12px}.plan .button{width:100%}.plan .fine{font-size:10px}.faq-band{background:#f0f0e9}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.faq details{border-bottom:1px solid #d2d7cb;padding:18px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:14px;cursor:pointer;list-style:none;position:relative;padding-right:25px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:0;font-size:20px;top:-5px;color:var(--muted)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:var(--muted);margin:13px 0 0}.faq p a{text-decoration:underline}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.contact h3{font-size:18px}.contact p,.contact-list{font-size:13px;color:var(--muted)}.contact-list{margin:0}.contact-list>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;gap:20px}.contact-list dd{margin:0;color:var(--ink)}.closing{text-align:center;background:var(--green);color:#fff;padding:65px 25px;border-radius:8px;margin-bottom:60px}.closing .eyebrow{color:#d7e6a7}.closing h2{font-size:53px}.closing .button{background:var(--lime);color:var(--ink)}.closing>p:last-child{font-size:11px;color:#d2ddd5;margin:18px 0 0}.foot{display:flex;justify-content:space-between;gap:30px;padding-bottom:35px;font-size:11px;color:var(--muted)}.foot .brand{color:var(--ink);font-size:25px}.foot .brand img{width:26px;height:26px}.foot p{margin:15px 0 0}.foot>div:last-child{text-align:right}.error-page{min-height:70vh}.error-page h1{font-size:70px}
@media(min-width:1500px){.hero{gap:95px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.top{padding:23px 28px}.top nav{gap:18px}.top-actions{gap:16px}.hero{gap:35px}h1{font-size:72px}.architecture{height:470px}.hero .cta{gap:18px}.overview{gap:45px}.pricing,.faq-layout{gap:50px}.metrics strong{font-size:19px}.feature-grid,.feature-extras{gap:30px}.roles{gap:20px}.contact{gap:40px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.top{padding:20px;gap:15px}.top nav{display:none}.top .button{padding:11px 14px;font-size:11px;gap:10px}.top .signin{font-size:12px}.brand{font-size:27px}.brand img{width:27px;height:27px}.hero{grid-template-columns:1fr;padding:44px 0 40px;gap:35px}h1{font-size:78px}.hero-copy .lead{max-width:440px}.architecture{height:390px;border-radius:75px 5px 5px 5px}.floating-card{left:15px;right:15px;width:max-content;max-width:calc(100% - 30px);padding:16px 19px}.photo-label{bottom:65px;font-size:9px}.promise{flex-wrap:wrap;justify-content:center;gap:8px 16px;padding:22px 0}.promise>span{width:100%;text-align:center;margin-bottom:7px}.promise p{font-size:10px}.section{padding-block:65px}.overview,.how,.pricing,.faq-layout{grid-template-columns:1fr;gap:35px}.section-intro>p:not(.eyebrow){max-width:460px}.section-intro h2 br{display:none}h2{font-size:43px;letter-spacing:-1.7px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:20px;max-width:440px}.feature-grid{grid-template-columns:1fr;gap:25px}.feature-grid article{padding-top:20px}.feature-grid h3{margin-top:14px;font-size:29px}.feature-grid h3 br{display:none}.feature-grid p{max-width:500px}.feature-extras{grid-template-columns:1fr;gap:18px}.roles{grid-template-columns:1fr 1fr;gap:25px}.roles article{padding-top:0}.roles h2{font-size:27px}.roles .eyebrow{letter-spacing:1px}.pricing .lead{margin-bottom:18px}.contact{grid-template-columns:1fr;gap:32px}.closing{padding:50px 20px;margin-bottom:40px}.closing h2{font-size:38px}.foot{display:block}.foot>div:last-child{text-align:left;margin-top:25px}.plan{padding:25px}.dashboard-body{padding:20px}.eyebrow{margin-bottom:19px}.sample-note{margin-bottom:0}}
@media(max-width:390px){.top .signin{display:none}.top .button{font-size:10px}.hero h1{font-size:67px}.hero .cta{gap:18px}.metrics{gap:6px}.metrics strong{font-size:17px}.metrics>div{padding:10px 7px}.dashboard-body{padding:15px}.dashboard-title h3{font-size:16px}.rent-row{grid-template-columns:1fr 65px 59px;gap:5px}.contact-list>div{display:block}.contact-list dd{margin-top:3px}.promise b{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
.foot .by{margin-top:6px;font-size:13px}.foot .by a{color:var(--green,#116655);font-weight:600;text-decoration:none}.foot .by a:hover{text-decoration:underline}
.plan .intl{margin:6px 0 0;font-size:14px;color:var(--muted,#5b6e52)}
/* Phone menu: hidden on wide screens, where the header shows the links. */
.top{position:relative}
.menu{display:none;position:relative}
.menu summary{list-style:none;display:flex;flex-direction:column;justify-content:center;gap:4px;width:42px;height:42px;padding:0 11px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}
.menu summary::-webkit-details-marker{display:none}
.menu summary span{display:block;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.menu[open] summary span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu[open] summary span:nth-child(2){opacity:0}
.menu[open] summary span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.menu-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:20;min-width:220px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 40px #203d3522;padding:8px}
.menu-panel a{padding:12px 14px;border-radius:6px;font-size:15px;color:var(--ink);text-decoration:none}
.menu-panel a:hover,.menu-panel a:focus-visible{background:#f1f3ea}
.menu-panel .menu-signin{margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 6px 6px;font-weight:600;color:var(--green)}
@media(max-width:760px){.menu{display:block}.top{gap:10px}.top-actions{margin-left:auto}.top .signin{display:none}.top .button{white-space:nowrap;gap:8px}.cta-long{display:none}}

/* Phones: every tap target at least 44px, and 8px between neighbours (Pixel 8 audit, tests/tap_targets.py). */
@media(max-width:760px){
  .top .brand,.foot .brand{min-height:44px;display:inline-flex;align-items:center}
  .top .button{min-height:44px}
  .menu summary{width:44px;height:44px}
  .menu-panel{gap:8px}
  .menu-panel a{min-height:44px;display:flex;align-items:center}
  .menu-panel .menu-signin{margin-top:0}
  .text-link{min-height:44px}
  .faq summary{min-height:44px;display:flex;align-items:center}
  .faq summary:after{top:50%;transform:translateY(-50%)}
  .faq details{padding:10px 0}
  .foot div>a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
  .foot div>span{margin:0 4px}
}
/* Free tools pages */
.tool-page{padding-block:34px 80px}.crumbs{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:30px}.crumbs a{color:var(--green);text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}.crumbs span[aria-current]{display:inline-flex;align-items:center;min-height:44px}
.tool-head{max-width:760px;margin-bottom:30px}.tool-head h1{font-size:clamp(34px,6vw,58px);line-height:1.05;margin:0 0 16px}.tool-head .lead{max-width:640px}
.tool-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin-bottom:22px;max-width:860px}.tool-card h2{font-size:22px;margin:0 0 14px}
.tool-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 18px;align-items:end}.tool-form .field{display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--ink)}.tool-form input,.tool-form select{min-height:46px;border:1px solid #cfd5c8;border-radius:8px;padding:10px 12px;font:inherit;font-size:16px;background:#fff;color:var(--ink);width:100%}.tool-form .button{min-height:46px;justify-content:center}
.tool-result{margin-top:20px}.tool-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:14px}.tool-summary>div{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.tool-summary span{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.tool-summary strong{font-size:24px;color:var(--green);font-variant-numeric:tabular-nums}
.tool-table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}.tool-table th,.tool-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}.tool-table th{font-size:12px;color:var(--muted);font-weight:600}.tool-note{font-size:14px;color:var(--muted);margin-top:10px}.tool-error{color:#a74932;font-size:14px}
.tool-text{max-width:760px;margin:40px 0}.tool-text h2{font-size:26px;margin:30px 0 12px}.tool-text p,.tool-text li{font-size:16px;line-height:1.75;color:#3f4f47}.tool-text ul{padding-left:20px}
.tool-faq{max-width:860px;margin:30px 0}.tool-faq h2{font-size:26px;margin-bottom:10px}.tool-cta{background:var(--green);color:#fff;border-radius:16px;padding:34px;max-width:860px;margin-top:40px}.tool-cta h2{color:#fff;margin:0 0 10px;font-size:26px}.tool-cta p{color:#dfe8dc;line-height:1.7;margin-bottom:20px}
.tool-list{display:grid;gap:16px;max-width:860px}.tool-link{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px;color:var(--ink);text-decoration:none}.tool-link:hover{border-color:var(--green)}.tool-link strong{font-size:20px;color:var(--green)}.tool-link span{color:var(--muted);line-height:1.6}
.home-tools{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
@media(max-width:760px){.tool-card{padding:20px}.tool-cta{padding:24px}.tool-summary strong{font-size:21px}}
.hero .fine a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:3px}
/* Install the app: a strip above the hero */
.install-strip{display:block;background:var(--green);color:#fff;text-decoration:none}.install-strip:hover{background:#1c4336}.install-strip-inner{display:flex;align-items:center;gap:12px;min-height:52px;padding-block:8px;font-size:14px;line-height:1.45}.install-strip-text{flex:1;min-width:0}.install-strip strong{color:var(--lime)}.install-strip-cta{flex-shrink:0;background:#fff;color:var(--green);font-weight:700;border-radius:999px;padding:9px 16px;min-height:40px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
@media(max-width:760px){.install-strip-inner{font-size:13px;gap:10px}.install-strip-cta{min-height:44px;padding:0 14px}}
/* Privacy and terms */
.legal-page{padding-block:34px 80px}.legal-toc{max-width:760px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 22px;margin-bottom:34px}.legal-toc ol{margin:0;padding-left:20px;columns:2;column-gap:28px}.legal-toc li{line-height:1.6;break-inside:avoid}.legal-toc a{color:var(--green);display:inline-flex;min-height:36px;align-items:center}
.legal-body{max-width:760px}.legal-body section{scroll-margin-top:20px}.legal-body h2{font-size:24px;margin:34px 0 12px}.legal-body p,.legal-body li{font-size:16px;line-height:1.75;color:#3f4f47}.legal-body ul{padding-left:20px}.legal-body li{margin-bottom:8px}.legal-body a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.legal-toc ol{columns:1}.legal-toc a{min-height:44px}}
@media(max-width:760px){.legal-toc li{margin-bottom:8px}.legal-toc li:last-child{margin-bottom:0}.foot a{min-width:44px;justify-content:center}}
.legal-body h2,.tool-text h2,.tool-faq h2,.tool-cta h2,.tool-card h2{letter-spacing:-.2px;word-spacing:normal}
