:root{font-family:Arial,Helvetica,sans-serif;color:#172a25;background:#f5f7f5;font-synthesis:none;--green:#113d32;--accent:#d9f56b;--muted:#53685f}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #587926;outline-offset:4px}header{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid #d8e1db;gap:12px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;letter-spacing:-.4px}.brand b{font-size:12px;background:var(--accent);padding:5px 7px;margin-left:5px;letter-spacing:1px}.brandmark{display:grid;place-items:center;width:36px;height:40px;background:var(--green);color:var(--accent);border-radius:9px;font-size:26px}.quiet{border:1px solid #cdd8d0;color:var(--green);background:transparent;border-radius:7px;padding:11px 16px;font-size:14px;font-weight:600;min-height:44px}main{max-width:1240px;margin:auto;padding:0 32px}.intro{display:flex;gap:50px;align-items:center;justify-content:space-between;padding:36px 0 30px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;color:var(--muted);margin:0 0 16px}h1{font-size:clamp(2rem,4.2vw,3.6rem);line-height:1.03;letter-spacing:-2px;margin:0 0 18px;color:var(--green)}.introcopy{font-size:18px;line-height:1.55;max-width:540px;margin:0 0 20px}.edition{font-size:14px;color:var(--muted)}figure{margin:0;position:relative;flex:0 0 255px;height:235px;overflow:hidden;border-radius:95px 95px 12px 12px;background:var(--green)}figure img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}figcaption{position:absolute;bottom:0;left:0;width:100%;padding:20px 12px 10px;background:linear-gradient(transparent,#113d32d9);color:white;font-size:12px;text-align:center}.finder{background:var(--green);border-radius:12px;padding:22px;color:white}.search{background:white;display:flex;align-items:center;gap:12px;padding:0 16px;border-radius:7px;color:var(--green)}.search span{font-size:30px}.search input{width:100%;padding:15px 0;border:0;background:transparent;font-size:16px;color:var(--green);outline:none}.search:focus-within{outline:3px solid var(--accent);outline-offset:3px}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:17px}.controls label{font-size:14px;color:#d0e2d9}.controls select{display:block;width:100%;margin-top:7px;padding:11px 12px;border-radius:5px;border:1px solid #567267;color:white;background:#214e41;min-height:44px;font-size:16px}.controls select option{color:white;background:var(--green)}.resultsbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:32px}h2{font-size:25px;letter-spacing:-.6px;margin:0}.resultsbar h2 span{display:inline-block;background:#e2ebe5;font-size:14px;padding:5px 9px;border-radius:5px;vertical-align:middle;margin-left:8px}.pricehint{color:var(--muted);font-size:14px;line-height:1.6;margin:12px 0 20px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid #dae3dc;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.card:hover{border-color:#8ba48d;transform:translateY(-2px)}.cardtop{padding:22px 22px 0;display:flex;justify-content:space-between;gap:10px;align-items:center}.category{font-size:12px;font-weight:700;letter-spacing:.6px;color:var(--green);background:#edf3ef;border-radius:4px;padding:6px 8px}.regiontext{font-size:12px;color:var(--muted)}.cardbody{padding:18px 22px 20px;flex:1}.card h3{font-size:21px;letter-spacing:-.6px;line-height:1.2;margin:0 0 6px;color:var(--green)}.city{font-size:14px;color:var(--muted);margin:0 0 18px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-size:14px;line-height:1.3;color:#405c4b}.tags span+span:before{content:'·';margin-right:7px;color:#849a88}.pricebox{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid #e0e7e2;margin-top:20px;padding-top:16px}.pricebox small{font-size:12px;color:var(--muted);display:block;margin-bottom:7px}.pricebox strong{font-size:24px;color:var(--green);letter-spacing:-.7px}.pricebox .free{font-size:22px}.tariff{font-size:12px;line-height:1.5;color:var(--muted);margin:10px 0 0}.cardactions{display:flex;border-top:1px solid #e0e7e2}.cardactions button,.cardactions a{padding:14px 10px;background:transparent;border:0;flex:1;text-decoration:none;color:var(--green);font-size:14px;text-align:center;font-weight:700;min-height:48px}.cardactions a{border-left:1px solid #e0e7e2}.cardactions button:hover,.cardactions a:hover{background:#edf4ee}.empty{grid-column:1/-1;padding:40px;text-align:center;background:white;border-radius:10px}.guide{margin:50px 0 35px;background:#e8eee9;padding:28px;border-radius:10px}.guidegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:24px}.guide article b{font-size:16px}.guide article p{font-size:15px;line-height:1.65;color:#486050;margin-bottom:0}footer{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:24px 0 40px;border-top:1px solid #d4ded6;font-size:14px;color:var(--muted);line-height:1.6}footer p{margin:8px 0}summary{cursor:pointer;font-weight:700;min-height:44px}dialog{border:0;border-radius:15px;padding:30px;color:#172a25;max-width:760px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-shadow:0 20px 80px #0004}dialog::backdrop{background:#07251ddd;backdrop-filter:blur(3px)}body.modal{overflow:hidden}.dialoghead{display:flex;align-items:center;justify-content:space-between;gap:10px}.close{border:0;background:#edf2ee;border-radius:50%;font-size:30px;line-height:1;width:44px;height:44px;color:var(--green);flex-shrink:0}.dialoghead .eyebrow{margin:0}dialog h2{font-size:32px;color:var(--green);margin:18px 0 10px}dialog h3{font-size:18px;margin:24px 0 10px}dialog p{line-height:1.65}dialog .place{margin:0;color:var(--muted)}.detailprices{background:#eff4ed;border-radius:8px;padding:18px;margin:20px 0}.detailprices .pricebox{margin:0;border:0;padding:0}.detailprices p{font-size:14px;margin:12px 0 0}.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.detailgrid p{font-size:15px;margin-top:0}.links{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.links a{padding:12px 15px;background:var(--green);color:white;text-decoration:none;border-radius:6px;min-height:44px;font-size:14px;font-weight:700}.links a:first-child{background:var(--accent);color:var(--green)}.callout{padding:15px;background:#f1f5e7;border-left:3px solid #98b651;font-size:14px}.sourcefoot{font-size:12px;color:var(--muted);margin-top:20px}.sourcefoot a{margin-right:12px}#nativeInstall{background:var(--green);color:white;border:0;border-radius:6px;padding:14px}.offline{background:#ffeac5;color:#573f0d;text-align:center;padding:10px;font-size:14px}
@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guidegrid{grid-template-columns:1fr 1fr}.intro{gap:20px}figure{flex-basis:210px;height:210px}}
@media(max-width:600px){header{padding:16px}.brand{font-size:14px;gap:8px}.brand b{display:none}header .quiet{padding:9px 11px}main{padding:0 16px}.intro{padding:25px 0;gap:12px;align-items:flex-start}h1{font-size:33px;letter-spacing:-1.2px}.introcopy{font-size:16px;line-height:1.45}.eyebrow{font-size:12px;letter-spacing:1.2px}.edition{font-size:12px}figure{flex-basis:90px;height:135px;border-radius:45px 45px 8px 8px;margin-top:22px}figcaption{display:none}.finder{padding:16px}.controls{grid-template-columns:1fr 1fr;gap:12px}.controls label:last-child{grid-column:1/-1}.search input{font-size:16px}.resultsbar h2{font-size:22px}.resultsbar .quiet{font-size:12px;padding:9px}.grid{grid-template-columns:1fr;gap:14px}.card h3{font-size:23px}.cardtop{padding-top:18px}.cardbody{padding-top:14px}.guide{padding:22px;margin-top:32px}.guidegrid{grid-template-columns:1fr;gap:22px}.guide h2{font-size:24px}footer{grid-template-columns:1fr;gap:16px}dialog{padding:22px;max-height:94dvh}.detailgrid{grid-template-columns:1fr}dialog h2{font-size:27px}.links a{flex:1;text-align:center}.pricehint{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.support{margin:30px 0;padding:28px;background:#113d32;color:white;border-radius:10px;max-width:100%}.support .eyebrow{color:#d9f56b}.support p{line-height:1.65;max-width:740px}.support h2{color:white}.signature{color:#d9f56b;font-weight:700;font-size:14px}

.supportbutton{display:inline-block;background:#d9f56b;color:#113d32;font-weight:700;text-decoration:none;padding:14px 18px;border-radius:7px;min-height:48px}.paypalsmall{font-size:12px;color:#d0e2d9}

.borderheading{grid-column:1/-1;border-top:3px solid #113d32;padding:1.5rem 0 .5rem}.borderheading h2{margin:0}.borderheading p{margin:.5rem 0}

.cardphoto{width:100%;height:180px;object-fit:cover;display:block}.photogallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.photogallery figure{margin:0}.photogallery img{width:100%;height:180px;object-fit:cover;border-radius:12px}.photogallery figcaption{font-size:14px;line-height:1.5;padding:.4rem 0}.photogallery figure:first-child{grid-column:1/-1}.photogallery figure:first-child img{height:280px}.backlist{margin:1rem 0;width:100%}@media(max-width:480px){.photogallery img{height:130px}.photogallery figure:first-child img{height:220px}}

.photogallery figure{height:auto;flex-basis:auto;overflow:visible;border-radius:0}.photogallery figcaption{display:block}.card{overflow:hidden}.intro figure figcaption{display:block}

.photofallback{display:flex;align-items:center;justify-content:center;min-height:90px;background:#eef3ea;padding:20px;border-radius:10px}

.companionhint{position:fixed;right:20px;bottom:20px;z-index:30;width:min(360px,calc(100vw - 32px));box-sizing:border-box;padding:20px 44px 20px 20px;background:#fff;border:1px solid #cbd8d0;border-radius:16px;box-shadow:0 8px 32px #123d3226;font-size:1rem;color:#153e32;animation:companion-in .2s ease-out}.companionhint p{margin:0 0 12px;line-height:1.5}.companionhint a{display:inline-block;font-weight:700;color:#16513f;line-height:1.4;text-underline-offset:3px}.companionclose{position:absolute;right:6px;top:6px;width:36px;height:36px;padding:0;background:transparent;border:0;color:#476156;font-size:26px;cursor:pointer}.companionclose:focus-visible,.companionhint a:focus-visible{outline:3px solid #b87927;outline-offset:3px}.modal .companionhint{display:none}@keyframes companion-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.companionhint{animation:none}}@media(max-width:550px){.companionhint{right:16px;bottom:16px}}

/* Preserve the complete photo in detail galleries. */
.photogallery figure{background:transparent}.photogallery img,.photogallery figure:first-child img{height:auto;aspect-ratio:auto;object-fit:contain;display:block}.photogallery figcaption{position:static;width:auto;background:none;color:var(--muted);text-align:left;padding:.6rem 0;font-size:14px}.cardphoto{object-position:50% 45%}

.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.home-return{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#edf3ef;line-height:1.35}.home-return:hover{background:#d9f56b}@media(max-width:700px){header{flex-wrap:wrap}.header-actions{width:100%}.header-actions .home-return{flex:1}.header-actions button{flex-shrink:0}}
