@font-face{font-family:"Planscribe NF";src:url("./assets/fonts/planscribe-light.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Planscribe NF";src:url("./assets/fonts/planscribe-regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Planscribe NF";src:url("./assets/fonts/planscribe-bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
/* Traffic Garden Designs - Brand Guidelines V1.5. Planscribe supplied by the user. */
:root{--ink:#222629;--muted:#50565a;--paper:#F3EFE9;--surface:#fff;--line:#A7A9AC;--navy:#045D9E;--blue:#045D9E;--green:#265038;--yellow:#FFD100;--gold:#FFD100;--soft:#F3EFE9;--mint:#edf2ee;--green-light:#edf2ee;--blue-pale:#edf3f8;--gold-pale:#fff8d7;--yellow-light:#fff8d7;--shadow:none;font-family:'Figtree',Arial,Helvetica,sans-serif}
body{background:#F3EFE9;color:#222629;font-family:'Figtree',Arial,Helvetica,sans-serif}
h1,h2,h3,.section-title,summary{font-family:'Planscribe NF','Figtree',Arial,Helvetica,sans-serif;letter-spacing:normal}
h1,h2,h3,summary,.step,.eyebrow{color:#045D9E}
body>header,body>header.topbar{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:24px;align-items:center;background:#045D9E;color:#fff;padding:24px;border:0;border-bottom:2px solid #FFD100;min-height:150px;border-radius:0;box-shadow:none}
body>header h1,body>header h2,body>header a,body>header .privacy,body>header .brand{color:#fff}
body>header .brand-mark{display:none}
.tgd-logo{display:block;width:96px;height:auto;max-width:100%;object-fit:contain}
body>header .brand{font-family:'Figtree',Arial,Helvetica,sans-serif;letter-spacing:.06em}
.summary,.dimension-card,.summary-card,.plan-card,.input-panel,.result-panel,.workspace,details{box-shadow:none}
button,.button{font-family:'Figtree',Arial,Helvetica,sans-serif;border-radius:5px}
button.primary,.button.primary,button:not(.quiet):not(.secondary):not(.swap),.button:not(.quiet){background:#FFD100;color:#222629;border:1px solid #045D9E}
button.quiet,button.secondary,.button.quiet,.swap{color:#045D9E;border-color:#A7A9AC}
nav button.active{background:#045D9E!important;color:white!important}
input,textarea,select{font-family:'Figtree',Arial,Helvetica,sans-serif;color:#222629}
a{color:#045D9E}
.summary-card{background:#045D9E;color:#fff}
.summary-card h2,.summary-card .step{color:white}
.brand-report,.tgd-report-brand{display:none}
@media(max-width:650px){body>header,body>header.topbar{grid-template-columns:80px minmax(0,1fr);gap:20px;padding:20px}.tgd-logo{width:80px}body>header>div:last-child:not(:nth-child(2)),body>header>a{grid-column:2}body>header h1{font-size:25px}}
@media print{body{background:white;color:#222629}body>header,body>header.topbar{display:none!important}.tgd-report-brand{display:flex!important;align-items:center;gap:.22in;border-bottom:1pt solid #045D9E;padding:0 0 .12in;margin:0 0 .12in;break-inside:avoid;break-after:avoid;color:#045D9E}.tgd-report-brand img{display:block;width:.75in;height:auto;max-width:none;object-fit:contain}.tgd-report-brand .tgd-signature{font-size:11pt;line-height:1.3;font-weight:600}.tgd-report-brand .tgd-signature small{display:block;font-size:9pt;font-weight:400}.report h1,.report h2,.report h3{color:#045D9E}.report td{border-bottom:.5pt solid #A7A9AC}}

h1,h2,h3,summary,.section-title,.tgd-signature{font-family:"Planscribe NF",Arial,sans-serif;font-weight:400;font-synthesis:none}th,.dimension-label,.dimension-value,.plan-title h3{font-family:"Planscribe NF",Arial,sans-serif}

/* Firm copyright on every screen and printed sheet. */
.tgd-copyright{display:block;font-family:inherit;font-size:.75rem;line-height:1.4;font-weight:400;text-align:center;color:#54585b;padding:12px 20px 20px;clear:both}
@media print {
 @page { margin-bottom: .75in; }
 .tgd-copyright { display: block !important; position: fixed; bottom: 0; left: 0; right: 0; margin: 0; padding: 0; font-family: Arial, sans-serif; font-size: 8pt; line-height: 1.3; color: #54585b; background: white; z-index: 1000; }
}
.firm-name { white-space: nowrap; }
.recommendation-site { margin: 8px 0 0; font-size: 11pt; }
@media print {
 .site-dimension-line { white-space: normal; line-height: 1.6; }
 .planning-summary { border-bottom: 1px solid var(--line); border-radius: 10px; }
 .contact-card { margin-top: 12px; border-radius: 10px; }
}

@media print {
 .inquiry-record-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: 16px; align-items: start; }
 .inquiry-site { padding: 4px 0; font-size: 10pt; line-height: 1.5; }
 .inquiry-site strong, .inquiry-site span { display: block; }
 .inquiry-site span { font-size: 12pt; margin-top: 5px; white-space: nowrap; }
 .inquiry-record .project-report { grid-template-columns: max-content minmax(0, 1fr); gap: 4px 10px; }
 .lede { margin-bottom: 10px; }
 .report-site { margin-top: 14px; }
 .planning-summary, .contact-card { border: 1px solid #A7A9AC; }
}

#print-report { display: none; }
.plan-card { border: 1px solid #A7A9AC; }
@media print {
 @page { size: letter; margin: .55in; }
 body > main, body > .tgd-copyright, body > footer { display: none !important; }
 #print-report { display: block; }
 .report-page { position: relative; height: 9in; padding-bottom: .4in; break-after: page; page-break-after: always; }
 .report-page:last-child { break-after: auto; page-break-after: auto; }
 .report-page-footer { position: absolute; bottom: 0; left: 0; right: 0; text-align: center; font-family: Arial, sans-serif; font-size: 8pt; line-height: 1.3; color: #54585b; }
 .report-page .report-site p { font: 400 10.5pt/1.5 Arial, sans-serif; color: #50565a; margin-top: 12px; }
 .report-page .plan-card { border: .75pt solid #A7A9AC; border-radius: 0; overflow: hidden; }
 .report-page .plan-image-wrap { border-bottom: .75pt solid #A7A9AC; }
 .report-page .contact-card, .report-page .planning-summary { border: .75pt solid #A7A9AC; border-radius: 0; overflow: visible; margin: 14px 0 0; }
 .report-page .contact-card { padding: 14px 16px 16px; }
 .report-page .guidance { margin-top: 0; }
}

@media print {
 .report-page { break-inside: avoid; page-break-inside: avoid; }
 .report-page-footer { break-inside: avoid; page-break-inside: avoid; }
}
