:root{color-scheme:light;--ink:#173d38;--muted:#62716b;--paper:#f5f5ef;--line:#dbe1d7;--accent:#dcebba}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}.site-header{max-width:1200px;margin:auto;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-weight:750;letter-spacing:-.6px;font-size:21px}.brand-mark{display:grid;place-items:center;width:33px;height:33px;border:1px solid var(--ink);border-radius:10px;font-weight:500}.header-note{font-size:12px;color:var(--muted)}main{max-width:1120px;margin:0 auto;padding:65px 24px 60px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.eyebrow,.step-tag{font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:750}.eyebrow{margin:0 0 22px}h1{font-size:clamp(42px,5.5vw,70px);letter-spacing:-3px;line-height:1.06;font-weight:550;margin:0 0 25px}.lede{font-size:18px;color:var(--muted);max-width:410px}.steps{padding:0;list-style:none;margin:36px 0 20px}.steps li{display:flex;gap:17px;margin:22px 0;font-size:14px}.steps span{font-size:11px;color:var(--muted);padding-top:3px}.card-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.workspace{min-width:0}form,.result{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 8px 28px #243c3010}.card-heading h2{margin:7px 0 20px;font-size:23px;font-weight:600;letter-spacing:-.6px}.step-tag{color:var(--muted)}.preview-box{position:relative;height:245px;border:1px dashed #b7c6b8;border-radius:12px;background:#f6f8f2;display:grid;place-items:center;overflow:hidden;text-align:center}#preview{position:absolute;inset:0;display:block;min-width:0;min-height:0;max-height:100%;height:100%;width:100%;object-fit:contain}#empty-preview{padding:20px}.photo-icon{display:block;font-size:36px;line-height:1.2;color:#698864}#empty-preview p{font-size:14px;margin:12px 0 3px}small{font-size:11px;color:var(--muted)}.photo-actions{display:flex;gap:10px}.button{cursor:pointer;border:0;border-radius:9px;display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:47px;font:600 14px/1.2 inherit;text-align:center;text-decoration:none;padding:13px 18px}.secondary{color:var(--ink);background:#f3f5ed;border:1px solid var(--line)}.photo-actions .button{flex:1}.primary{background:var(--ink);color:white;width:100%;font:600 15px system-ui}.button:hover{filter:brightness(.96)}button:disabled{opacity:.45;cursor:not-allowed}.file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.photo-actions:has(input:focus-visible) .button{outline:2px solid #659469;outline-offset:3px}:focus-visible{outline:3px solid #659469;outline-offset:4px}.file-help,.file-caption{font-size:11px;color:var(--muted)}.file-caption{overflow-wrap:anywhere;margin:8px 0 13px}.file-help{text-align:center;margin:14px 0 20px}.progress{font-size:13px;color:var(--muted);margin:10px 0 0;text-align:center}.progress:empty{margin:0}.error{background:#fff0ed;color:#852f21;padding:12px;border-radius:8px;font-size:14px}.privacy{display:flex;gap:10px;font-size:11px;color:var(--muted);padding:14px 8px}.privacy p{margin:0}.privacy strong{color:var(--ink)}.result{margin-top:20px}.result h2{font-size:24px;margin:10px 0}.size-result{border-radius:12px;background:var(--accent);padding:20px;display:flex;flex-direction:column}.size-result span{font-size:12px}.size-result strong{font-size:52px;line-height:1.3;letter-spacing:-2px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px}.metrics dt{font-size:12px;color:var(--muted)}.metrics dd{margin:0;font-size:23px;font-weight:600}.estimate{font-size:13px;border-top:1px solid var(--line);padding-top:16px}.estimate strong{float:right}.fine-print{font-size:11px;color:var(--muted)}.feedback{padding-left:20px;font-size:14px}.feedback:empty{display:none}.feedback li{margin:8px 0}.warnings{color:#785918}.reset{width:100%;margin-top:10px}footer{max-width:1144px;margin:0 auto;padding:22px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;justify-content:space-between}.spinner{width:17px;height:17px;border:2px solid #ffffff50;border-top-color:white;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[hidden]{display:none!important}@media(max-width:760px){.site-header{padding:18px 20px}.header-note{font-size:10px}main{grid-template-columns:1fr;gap:25px;padding:30px 20px}.eyebrow{margin-bottom:14px}h1{font-size:44px;letter-spacing:-2px;margin-bottom:16px}.lede{font-size:16px}.steps{margin:22px 0 12px}.steps li{margin:12px 0}.card-note{margin-bottom:0}form,.result{padding:20px}.preview-box{height:220px}footer{margin:0 20px;padding:20px 0;font-size:10px}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}
/* Shared site system: warm paper, cocoa ink and soft aqua. */
:root{--ink:#493c34;--muted:#76675c;--paper:#fcf5ee;--line:#e5d9ce;--accent:#c6e5e1;--teal:#285f5e}html{scroll-behavior:smooth}body{font-size:16px}main{display:block;max-width:1180px;padding:0 30px 65px}.site-header{max-width:1240px;padding:23px 30px;border-bottom:1px solid var(--line);gap:30px}.brand{font-size:21px;letter-spacing:-.7px;white-space:nowrap}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:1px;margin-top:2px}.brand-mark{background:var(--accent);border:0;border-radius:50%;font-size:30px;width:43px;height:43px;color:var(--teal)}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none;padding:9px 0;border-bottom:2px solid transparent}nav a[aria-current=page]{border-color:var(--teal);color:var(--teal);font-weight:700}.button{font:600 14px/1.3 system-ui;min-height:48px;border-radius:8px;padding:14px 23px}.primary{background:var(--teal);width:auto}.header-cta{font-size:13px}.secondary{background:#f5f5ee}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:60px;padding:70px 0 65px}.hero h1{font-size:clamp(52px,6.3vw,80px);line-height:1.08;letter-spacing:-4px;font-weight:560}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--teal)}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--teal);margin-bottom:24px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-right:8px}.lede{font-size:17px;max-width:450px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:26px;margin:29px 0 20px}.text-link{font-size:13px;font-weight:650;text-underline-offset:5px}.quiet{font-size:11px;color:var(--muted)}.quiet span{padding:0 7px}.hero-art{position:relative;background:#e6ece0;border-radius:48% 48% 20px 20px;min-height:442px;display:flex;flex-direction:column;align-items:center;justify-content:center}.art-note{font:italic 17px Georgia,serif;position:absolute;top:27px}.mascot{width:95%;max-height:430px;padding-top:23px}.floating-note{display:flex;gap:13px;align-items:center;background:#fffaf5;border:1px solid #e4ddd0;border-radius:12px;padding:17px 21px;box-shadow:0 9px 22px #47372a0b;position:absolute;bottom:-14px;left:22px;right:22px;font-size:13px;font-weight:600}.floating-note small{display:block;font-size:10px;font-weight:400;margin-top:4px}.check{background:var(--accent);border-radius:50%;display:grid;place-items:center;width:31px;height:31px;color:var(--teal)}.spark{position:absolute;color:var(--teal);font-size:43px}.spark-one{top:64px;right:18px}.spark-two{left:21px;top:178px;font-size:34px}.audience-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;border-block:1px solid var(--line);padding:19px 0;font-size:12px}.audience-strip>span:first-child{color:var(--muted);font-size:11px}.audience-strip p{margin:0}.audience-strip>span:not(:first-child){color:#8eaaa0}.section{padding:64px 0}.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:27px}.section-heading p{font-size:13px;color:var(--muted)}h2{font-size:33px;line-height:1.2;letter-spacing:-1px;font-weight:550;margin:0 0 20px}h3{font-size:19px;letter-spacing:-.5px;font-weight:600}.section .eyebrow,.mission-panel .eyebrow,.cta-panel .eyebrow{margin:0 0 14px}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step-card{position:relative;padding:27px 28px;background:#fffaf6;border:1px solid var(--line);border-radius:14px}.step-card p,.mission-panel p,.two-grid p,.reading p{font-size:14px;line-height:1.8;color:var(--muted)}.step-number{font-size:11px;color:var(--muted);letter-spacing:2px}.step-symbol{display:grid;place-items:center;margin:25px 0;width:48px;height:48px;border-radius:12px;background:var(--accent);font-size:28px;color:var(--teal)}.step-card h3{margin-bottom:8px}.mission-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;background:#efe6db;border-radius:18px;padding:46px 48px}.mission-aside{border-left:1px solid #d4cbbf;padding:10px 0 10px 50px;align-content:center}.mission-aside>span{font-size:50px;color:var(--teal);line-height:1}.mission-aside a{font-size:12px;text-underline-offset:4px}.faq-section{display:grid;grid-template-columns:1fr 1.3fr;gap:50px}.faq-section>div>p{font-size:13px;color:var(--muted);line-height:1.8}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq summary{font-size:14px;font-weight:600;cursor:pointer}.faq details p{font-size:13px;color:var(--muted);line-height:1.8}.cta-panel{background:var(--accent);border-radius:16px;padding:34px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta-panel h2{margin:0;font-size:28px}footer{max-width:1180px;padding:35px 30px;gap:30px;align-items:start}footer p{font-size:11px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px 35px;font-size:12px}.footer-links a{text-decoration:none}.footer-note{font:italic 16px/1.7 Georgia,serif;color:var(--teal)}.page-intro{padding:66px 0 10px}.page-intro h1,.contact-layout h1,.intro h1{font-size:60px;letter-spacing:-2.8px}.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.info-card{padding:30px;background:#e4eeea;border-radius:16px}.workflow{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;gap:12px}.workflow li{background:#fffaf6;border:1px solid var(--line);border-radius:12px;padding:25px 20px}.workflow strong{display:block;color:var(--teal);font-size:14px}.workflow span{display:block;margin-top:12px;font-size:13px;color:var(--muted)}.reading{max-width:720px;padding:40px 0}.reading h2{font-size:26px;margin-top:30px}.sizing-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:60px 0 0}.photo-guide{border-radius:15px;overflow:hidden;background:#f5e7d8;max-width:390px;margin:25px 0}.photo-guide svg{display:block;width:100%;max-height:235px}.photo-guide span{display:block;text-align:center;font-size:11px;padding:0 12px 16px}.intro .lede{font-size:16px}.steps{margin:25px 0}.steps li{font-size:13px}.preview-box{background:#f3f7f4;border-color:#acc8c0}.photo-icon{color:var(--teal)}#analyse,.contact-form>.primary{width:100%}.privacy{font-size:12px}.fine-print{font-size:12px;line-height:1.6}#result-actions{display:flex;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding:65px 0 15px}.contact-note{margin:35px 0;border-block:1px solid var(--line);padding:15px 0;font-size:14px;color:var(--muted)}.contact-form h2{font-size:27px;margin:12px 0 24px}.field{margin:17px 0}.field label{font-size:13px;display:block;margin-bottom:7px;font-weight:600}.field input,.field textarea,.field select{font:inherit;color:var(--ink);border:1px solid #cfc6bb;border-radius:7px;background:#fffdfa;padding:11px 12px;width:100%;min-height:46px}.field textarea{resize:vertical}.field small{font-size:11px}.errorlist{color:#852f21;font-size:13px;padding-left:20px}.notice{background:#f8ecd2;padding:14px;border-radius:8px;font-size:13px}.success{background:var(--accent);padding:22px;border-radius:12px}.honeypot{display:none}.skip-link{position:absolute;top:-100px;left:15px;background:white;padding:12px;z-index:10}.skip-link:focus{top:10px}:focus-visible{outline-color:var(--teal)}
@media(max-width:900px){.site-header{gap:15px}nav{gap:16px}.hero{gap:30px}.hero-art{min-height:350px}.hero h1{font-size:61px}.quiet{max-width:260px;line-height:1.8}.sizing-layout,.contact-layout{gap:30px}.mission-panel{gap:35px;padding:35px}.mission-aside{padding-left:30px}.workflow{grid-template-columns:1fr 1fr}}
@media(max-width:640px){main{padding:0 20px 35px}.site-header{padding:17px 20px;flex-wrap:wrap;gap:15px}.brand{font-size:19px}.brand small{font-size:9px}.header-cta{margin-left:auto;padding:12px 15px;min-height:43px}nav{order:3;width:100%;justify-content:space-between;gap:10px;font-size:13px}.hero{grid-template-columns:1fr;padding:38px 0 45px;gap:28px}.hero h1{font-size:59px;letter-spacing:-3px}.hero .eyebrow{margin-bottom:22px}.hero .lede{font-size:16px}.hero-art{min-height:330px;max-width:420px;width:100%;justify-self:center}.mascot{height:340px}.hero-actions{gap:22px}.quiet{max-width:none;font-size:10px}.floating-note{bottom:0;left:15px;right:15px;padding:13px}.audience-strip{flex-wrap:wrap;justify-content:center;font-size:11px;gap:10px 15px;padding:20px 0}.audience-strip>span:first-child{width:100%;text-align:center}.audience-strip>span:not(:first-child){display:none}.section{padding:40px 0}.section-heading{display:block}.section-heading br{display:none}h2{font-size:29px}.three-grid{grid-template-columns:1fr;gap:12px}.step-card{padding:23px}.step-symbol{position:absolute;right:23px;top:0;width:38px;height:38px;font-size:23px}.step-card h3{margin-top:24px}.mission-panel,.two-grid,.faq-section,.sizing-layout,.contact-layout{grid-template-columns:1fr;gap:25px}.mission-panel{padding:29px 25px}.mission-aside{border-left:0;border-top:1px solid #d4cbbf;padding:24px 0 0}.faq-section{gap:8px}.cta-panel{align-items:start;flex-direction:column;padding:27px}.cta-panel h2{font-size:26px}footer{margin:0 20px;padding:28px 0;flex-wrap:wrap;gap:20px}.footer-note{display:none}.footer-links{gap:12px 25px}.page-intro,.contact-layout,.sizing-layout{padding-top:35px}.page-intro h1,.contact-layout h1,.intro h1{font-size:45px;letter-spacing:-2px}.workflow{gap:10px}.workflow li{padding:18px 15px}.contact-note{margin:24px 0}.photo-guide{max-width:none}.photo-guide svg{max-height:220px}.file-help{font-size:11px}.metrics dd{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,footer,.intro,#analysis-form,.privacy,#reset,#result-actions{display:none!important}main,.sizing-layout{display:block;padding:0}.result{border:0;box-shadow:none}}

button.photo-icon{border:0;background:transparent;font:inherit;font-size:36px;line-height:1.2;min-width:48px;min-height:48px;margin:0 auto;padding:4px;cursor:pointer;border-radius:8px}button.photo-icon:hover{background:var(--accent)}
