/* Editorial paper-and-forest design adapted from the supplied calculator template. */
:root{--ink:#203e35;--muted:#68736a;--paper:#f3efe5;--green:#38664c;--line:#d9d8cb;--white:#fffdf7;--copper:#a65232;--sand:#edc694;--mono:Consolas,'Liberation Mono',monospace;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer;border:0;background:none}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.94)}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--copper)}h1,h2,h3,p{margin:0}h2,h3{font:400 29px/1.2 var(--serif)}h3{font-size:23px}fieldset{border:0;padding:0;margin:0;min-width:0}input{min-width:0}[hidden]{display:none!important}:focus-visible{outline:3px solid #aa6642;outline-offset:4px}::selection{background:#e7c7a4}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:15px;padding:12px;background:var(--white);z-index:20}.skip-link:focus{top:10px}
.site-header{max-width:1280px;margin:auto;padding:23px 40px;display:flex;align-items:center;gap:65px;border-bottom:1px solid #203e3538}.brand{display:flex;align-items:center;text-decoration:none;font:bold 27px var(--serif);letter-spacing:-1.2px;white-space:nowrap;gap:5px}.brand img{margin-right:6px}.brand em{font-weight:400}.brand b{color:var(--copper)}.site-header nav{display:flex;gap:28px;font-size:12px}.site-header nav a{text-decoration:none;padding:8px 0}.site-header nav .active{border-bottom:2px solid var(--copper)}.header-note{margin-left:auto;font:9px var(--mono);letter-spacing:1.3px;white-space:nowrap}main{max-width:1240px;margin:auto;padding:0 40px}.hero{padding:44px 0 35px;display:flex;justify-content:space-between;align-items:center;gap:35px}.eyebrow,.section-index{font:10px/1.5 var(--mono);letter-spacing:1.5px;color:var(--copper)}.eyebrow{margin-bottom:17px}.dot{display:inline-block;width:6px;height:6px;background:var(--copper);border-radius:50%;margin-right:8px;vertical-align:2px}.hero h1{font:bold clamp(36px,4.6vw,61px)/1.06 var(--serif);letter-spacing:-2.2px}.hero-subline{display:block;font-size:.64em;font-weight:400;letter-spacing:-1.1px;margin-top:10px}.hero-subline em{color:var(--copper)}.intro{color:var(--muted);max-width:555px;margin-top:18px;font-size:14px;line-height:1.8}.hero-trust{display:flex;gap:22px;margin-top:18px;font-size:10px;color:var(--green)}.hero-art{width:275px;flex-shrink:0;text-align:center;transform:rotate(-3deg);margin-right:20px}.hero-art svg{display:block;width:100%}.hero-art p{font:italic 20px var(--serif);margin-top:5px}.hero-art>span{font:8px var(--mono);letter-spacing:1.5px;color:var(--copper)}
.calculator-tools{background:#e9e7db;border:1px solid var(--line);border-radius:7px;padding:7px 15px;display:flex;justify-content:space-between;align-items:center}.calculator-tools>span{font:9px var(--mono);letter-spacing:1.1px}.calculator-tools button{font-size:11px;padding:9px 13px}.calculator-tools button+button{border-left:1px solid var(--line)}.action-status{font-size:12px;color:var(--copper)}.action-status:not(:empty){padding:10px 4px}.calculator-grid{display:grid;grid-template-columns:365px minmax(0,1fr);gap:22px;margin-top:19px;align-items:start}.panel{background:var(--white);border:1px solid var(--line);border-radius:10px}.input-panel{padding:25px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.text-button{font-size:11px;text-decoration:underline;text-underline-offset:4px;padding:7px 0}.input-panel h2{font-size:25px;margin-top:7px}.mode-picker{display:flex;background:#eeecdf;padding:4px;border-radius:6px;margin:23px 0}.mode-picker label{flex:1;position:relative;cursor:pointer}.mode-picker input,.size-grid input{position:absolute;opacity:0;width:1px;height:1px}.mode-picker span{display:block;text-align:center;padding:10px 6px;font-size:11px;border-radius:4px}.mode-picker :checked+span{background:var(--ink);color:var(--white)}.mode-picker :focus-visible+span,.size-grid :focus-visible+.size-card{outline:3px solid var(--copper);outline-offset:3px}.field-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:8px}.field-title>span,.size-field legend,.field>label{font-size:12px;font-weight:600}.field-title button{font-size:10px;color:var(--copper)}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.two-fields label,#date-inputs>label{font-size:11px;color:var(--muted);display:block;margin-bottom:5px}.input-wrap{display:flex;align-items:center;border:1px solid #cbd0c2;background:#fffef9;border-radius:6px;padding-right:12px}.input-wrap input{width:100%;padding:12px;border:0;background:transparent;font:18px var(--mono);outline:none}.input-wrap span{font-size:10px;color:var(--muted)}.input-wrap:focus-within{border-color:var(--copper);box-shadow:0 0 0 2px #a652321c}.field{margin-top:20px}.field>input,#birthday{display:block;width:100%;border:1px solid #cbd0c2;padding:12px;background:#fffef9;border-radius:6px;margin-top:8px;min-height:45px}.field>input{font-size:12px}.field-hint{font-size:10px;line-height:1.65;color:var(--muted);margin-top:6px}.size-field{margin-top:22px}.size-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:11px}.size-grid label{position:relative;cursor:pointer}.size-card{display:flex;flex-direction:column;align-items:center;border:1px solid var(--line);border-radius:6px;background:#fffef9;padding:10px 2px;line-height:1.5;min-height:108px}.size-card strong{font-size:10px;font-weight:600;margin:5px 0}.size-card small{font-size:8px;color:var(--muted);white-space:nowrap}.size-grid :checked+.size-card{border-color:var(--ink);background:#e8ecdf;box-shadow:inset 0 0 0 1px var(--ink)}.dog-icon{height:23px;display:block;width:35px;background:var(--ink);mask:url('/assets/brand/dog.svg') center/contain no-repeat}.small-dog{width:22px}.medium-dog{width:27px}.large-dog{width:33px}.giant-dog{width:39px}.optional{font-size:10px;color:var(--muted);font-weight:400;margin-left:5px}.calculate-button{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--white);width:100%;padding:14px 17px;border-radius:6px;font-size:12px;margin-top:22px}.calculate-button span{font-size:20px;line-height:1}.form-footnote{font-size:9px;text-align:center;color:var(--muted);margin-top:10px}.examples{border-top:1px dashed var(--line);margin-top:21px;padding-top:17px}.examples>span{font:8px var(--mono);letter-spacing:1px;color:var(--muted)}.examples>div{display:flex;gap:7px;margin-top:8px;flex-wrap:wrap}.examples button{font-size:10px;background:#f2eee3;border:1px solid var(--line);border-radius:20px;padding:7px 10px}.input-error{font-size:12px;color:#9d382b;background:#fbebe3;border-radius:5px;padding:9px;margin-top:15px}input[aria-invalid=true]{outline:1px solid #b75039}
.result-card{background:var(--ink);color:var(--white);border-radius:10px;padding:25px 28px 0;overflow:hidden;position:relative}.result-card:before{content:'';position:absolute;right:-50px;top:10px;width:240px;height:240px;border:1px solid #ffffff0b;border-radius:50%;pointer-events:none}.result-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.result-card .section-index{color:#c2d0b9;font-size:9px}.stage-badge{font-size:10px;color:var(--sand);border:1px solid #8e9b75;border-radius:30px;padding:5px 11px;white-space:nowrap}.input-summary{font-size:12px;color:#c9d4c8;margin-top:20px}.age-display{display:flex;align-items:center;gap:17px;margin:2px 0 18px}.age-display strong{font:normal 100px/1.13 var(--serif);letter-spacing:-6px;color:var(--sand)}.approx{font:25px var(--serif);color:#b7c7b3}.age-display>div{display:flex;flex-direction:column;gap:4px}.age-display>div>span{font:22px var(--serif)}.age-display small{font-size:10px;color:#c4d1c1}.life-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:22px}.life-stages span{border-top:3px solid #527062;color:#c0cebd;font-size:9px;padding-top:9px}.life-stages .current{border-color:var(--sand);color:var(--sand)}.result-bottom{border-top:1px solid #5b7261;padding:12px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.result-bottom>span{font:8px var(--mono);letter-spacing:.5px;color:#c2d0b9}.result-bottom button{color:var(--sand);font-size:10px;white-space:nowrap;padding:5px}.stage-card{display:flex;gap:16px;background:#e7e8d9;padding:20px 22px;margin-top:16px;border:1px solid #d6d9c4;border-radius:8px}.stage-symbol{font-size:30px;line-height:1.2;color:var(--copper)}.stage-card .section-index{font-size:8px;margin-bottom:7px}.stage-card h3{font-size:21px}.stage-card p:not(.section-index){font-size:12px;color:#5d6d5d;line-height:1.75;margin-top:8px}.stage-card a{font-size:10px;color:var(--green);display:inline-block;margin-top:9px}.chart-panel{padding:21px 25px 14px;margin-top:16px}.chart-panel h2{font-size:22px;margin-top:6px}.chart-panel .section-index{font-size:8px}.chart-key{font-size:10px;display:flex;align-items:center;gap:6px;white-space:nowrap}.chart-key i{width:7px;height:7px;background:var(--copper);border-radius:50%}.curve svg{display:block;width:100%;height:auto;margin-top:16px}.chart-note{font-size:9px;color:var(--muted)}.calculation-details{margin-top:12px;border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.calculation-details summary{display:flex;justify-content:space-between;padding:12px 3px;font-size:12px}.calculation-details>div{padding:0 3px 16px;font-size:12px;color:var(--muted)}.calculation-details p{margin-bottom:8px}.calculation-details a{font-size:11px}.result-note{font-size:10px;line-height:1.8;color:var(--muted);margin:12px 3px 0}.empty-result{padding:75px 28px;text-align:center}.empty-result>span{font-size:40px;color:var(--copper)}.empty-result h2{margin-top:20px}.empty-result p{color:var(--muted);margin-top:15px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-heading h2{font-size:32px}.section-heading .eyebrow{margin-bottom:10px}.age-chart-section{padding-top:53px}.section-intro{font-size:13px;color:var(--muted);margin-top:12px}.outline-button{border:1px solid #bac1b0;border-radius:5px;padding:10px 15px;font-size:11px;white-space:nowrap}.table-selection{font-size:11px;color:var(--green);margin:20px 0 10px;min-height:18px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:9px;background:var(--white)}table{border-collapse:collapse;width:100%;font-size:12px;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}th,td{padding:12px 18px;border-bottom:1px solid #e7e5da}th:first-child,td:first-child{text-align:left}thead{background:#eeeddf}th{font-weight:600;font-size:11px}th small{display:block;font-size:9px;font-weight:400;color:var(--muted)}tbody tr:last-child>*{border-bottom:0}tbody th{font-weight:400}td.selected,thead th.selected{background:#edf0e3}tr.current-row>*{background:#e6ebdb;font-weight:600}tr.current-row td.selected{background:var(--ink);color:var(--white)}.table-expand{display:block;margin:12px auto 0}.table-note{font-size:10px;color:var(--muted);margin-top:7px}.methodology{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;border-top:1px solid var(--line);margin-top:48px;padding:45px 0 30px}.method-intro h2{font-size:35px;letter-spacing:-.7px}.method-intro>p:not(.eyebrow){font-size:13px;line-height:1.85;color:var(--muted);max-width:370px;margin:20px 0 13px}.method-intro>a{font-size:11px}.method-cards article{display:flex;gap:18px;border-bottom:1px solid var(--line);padding:20px 0}.method-cards article:first-child{padding-top:0}.method-cards article>span{font:10px var(--mono);color:var(--copper);padding-top:6px}.method-cards h3{font-size:20px}.method-cards p{font-size:12px;color:var(--muted);margin-top:7px}.method-cards strong{font:28px var(--serif);color:var(--copper);margin-left:auto;min-width:63px;text-align:right;white-space:nowrap}.notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.notes-grid article{padding:25px}.notes-grid h3{margin-top:10px;font-size:23px}.notes-grid p:not(.section-index){font-size:12px;line-height:1.85;color:var(--muted);margin-top:12px}.research-details{border:1px solid var(--line);border-radius:8px;margin-top:20px;background:#ecebdd}.research-details summary{padding:19px 23px;font-size:13px}.research-details summary:after{content:'＋';float:right}.research-details[open] summary:after{content:'−'}.research-details>div{padding:0 23px 22px;font-size:12px;color:var(--muted)}.research-details p{margin-bottom:12px}.faq-section{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;padding:53px 0}.faq-section h2{font-size:33px}.faq-section>div>p:last-child{font-size:12px;color:var(--muted);margin-top:15px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:13px;padding:17px 28px 17px 0;position:relative}.faq-list summary:after{content:'+';position:absolute;right:4px;top:16px;font-size:18px;color:var(--copper)}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:12px;line-height:1.85;color:var(--muted);padding:0 20px 17px 0}.sources{padding:28px 30px;background:#eae9dc;border:1px solid var(--line);border-radius:9px;margin-bottom:48px}.sources h2{font-size:25px;margin-top:8px}.sources p:not(.section-index),.sources li{font-size:12px;color:var(--muted);margin-top:12px}.sources li{margin-top:5px}.sources ol{padding-left:17px}.sources .editorial-date{font:9px var(--mono);margin-top:20px}footer{max-width:1160px;margin:auto;border-top:1px solid var(--line);display:flex;gap:20px;align-items:center;padding:28px 0 24px;flex-wrap:wrap}footer .brand{font-size:23px}footer p{font-size:11px;color:var(--muted)}footer nav{display:flex;gap:22px;margin-left:auto;font-size:11px}footer small{flex-basis:100%;font-size:9px;color:var(--muted)}#copy-fallback{padding:12px;font-size:12px}textarea{display:block;width:100%;padding:8px;background:var(--white);border:1px solid var(--line);margin-top:5px}.legal-page{max-width:780px;padding-top:55px;padding-bottom:70px;min-height:65vh}.legal-page h1{font:42px var(--serif);margin-bottom:20px}.legal-page h2{font-size:24px;margin:28px 0 10px}.legal-page p{margin-top:14px;color:var(--muted)}

.field:has(#breed){position:relative}.breed-options{position:absolute;top:76px;left:0;right:0;z-index:5;max-height:230px;overflow-y:auto;padding:5px;background:var(--white);border:1px solid var(--line);border-radius:7px;box-shadow:0 8px 25px #203e351f}.breed-options button{display:block;text-align:left;width:100%;padding:11px 10px;font-size:12px;border-radius:4px}.breed-options button:hover,.breed-options button[aria-selected="true"]{background:#e7e8d9}.breed-options button small{display:block;color:var(--muted);font-size:10px;margin-top:3px}@media print{.breed-options{display:none!important}}
