:root{--ink:#173a30;--green:#216448;--sage:#e8eee5;--cream:#f7f8f3;--line:#dce5dc;--muted:#68796f;--gold:#d9b67b;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3{font-family:Georgia,serif;line-height:1.14;letter-spacing:-.025em}h1{font-size:clamp(38px,4.5vw,64px);margin:12px 0 18px}h2{font-size:32px;margin:0 0 10px}h3{font-size:23px;margin:0 0 10px}p{margin:0 0 14px}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:800;color:#54806b}.container{max-width:1190px;margin:auto;padding:30px 24px 80px}.top{background:#fff;border-bottom:1px solid var(--line);padding:18px max(24px,calc((100vw - 1190px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font:700 25px Georgia,serif;text-decoration:none;letter-spacing:-.06em}.brand b{color:#ba995b}.nav{display:flex;align-items:center;gap:22px}.nav a{font-size:13px;text-decoration:none;font-weight:650}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);background:var(--green);color:white;border-radius:12px;padding:12px 19px;text-decoration:none;font-weight:750;gap:8px;min-height:46px}.btn:hover{background:#164a34}.btn.light{background:#eff3eb;border-color:#d5e2d5;color:var(--ink)}.btn.light:hover{background:#e1eadf}.btn.outline{background:#fff;color:var(--green)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.smallbtn{font-size:12px;min-height:36px;padding:8px 12px}.hero{display:grid;grid-template-columns:1.3fr .7fr;background:linear-gradient(130deg,#14392e,#2b644b);color:white;border-radius:24px;overflow:hidden;min-height:430px}.hero>div:first-child{padding:66px 60px}.hero .eyebrow{color:#b6d3c1}.hero p{color:#d7e7de;font-size:18px;max-width:540px}.hero-art{position:relative;overflow:hidden;min-height:430px;background:#315b4b}.hero-coast-photo{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center center}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.card{background:white;border:1px solid var(--line);border-radius:19px;padding:24px;box-shadow:0 10px 35px #183c3010}.card p{color:var(--muted)}.notice{padding:12px 16px;background:#fff4d9;border:1px solid #e9d5a8;color:#795821;border-radius:12px;font-size:13px;margin-bottom:24px}.survey{max-width:790px;margin:42px auto}.surveybox{background:#fff;border:1px solid var(--line);padding:40px;border-radius:22px;box-shadow:0 15px 45px #183c3010}.track{background:#e4ebe4;border-radius:20px;height:9px;overflow:hidden}.fill{height:100%;background:var(--green);transition:width .2s}.option{width:100%;padding:17px 18px;margin:8px 0;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);font-weight:650}.option:hover{background:#f1f7f1;border-color:var(--green)}.surveyactions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.workspace-title{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:22px 0 26px}.workspace-title h1{font-size:clamp(36px,4vw,51px);margin:8px 0}.tag{display:inline-flex;border-radius:99px;padding:5px 11px;background:#e6f1e7;color:#246347;font-size:11px;font-weight:800}.tag.pending{background:#f8eddb;color:#8b6525}.tag.locked{background:#edf0eb;color:#5e7166}.progress-card{background:#fff;border:1px solid var(--line);padding:20px 24px;border-radius:18px;margin-bottom:22px}.progress-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.workgrid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:22px;align-items:start}.workmain,.workside{display:grid;gap:20px}.next{background:#e6efe6;border:1px solid #d2e3d4;border-radius:18px;padding:24px}.next .eyebrow{color:#2b7554}.steps{display:grid;gap:11px}.step{border:1px solid var(--line);border-radius:15px;background:#fff;overflow:hidden}.step>button{width:100%;background:none;border:0;text-align:left;padding:18px;display:flex;align-items:center;gap:14px;color:var(--ink)}.num{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:#eff2ec;font-weight:800}.num.done{background:#e2f2e6;color:#1f8052}.stephead{flex:1}.stephead strong{display:block}.stephead span{display:block;color:var(--muted);font-size:12px}.stepbody{border-top:1px solid var(--line);padding:20px;display:none}.step.open .stepbody{display:block}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:5px;margin:0 0 12px}.field label{font-weight:700;font-size:12px}.field input,.field textarea,.field select,.agentform textarea{border:1px solid #cad9cc;border-radius:10px;padding:11px 12px;width:100%;background:#fff;color:var(--ink)}.field textarea,.agentform textarea{min-height:90px;resize:vertical}.docrow{display:grid;grid-template-columns:1fr 180px;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.docrow:last-child{border-bottom:0}.docrow label{font-weight:650}.docrow select{padding:9px;border:1px solid var(--line);border-radius:8px;max-width:100%}.agent-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:22px;position:sticky;top:20px}.agent-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.agent-symbol{width:42px;height:42px;border-radius:14px;background:#e7efe6;display:grid;place-items:center;font-size:24px}.agent-status{padding:12px;background:#f5f6f1;border-radius:10px;font-size:13px;color:#546c5d;margin-bottom:15px}.agentform{display:grid;gap:9px}.agentform textarea{min-height:90px}.agent-reply{font-size:13px;white-space:pre-wrap;padding:13px;background:#eef4ec;border-radius:10px;margin-top:13px}.summarylist{margin:0;padding-left:20px;color:var(--muted)}.summarylist li{margin:7px 0}.footer{border-top:1px solid var(--line);padding:25px;text-align:center;font-size:12px;color:var(--muted)}.hidden{display:none!important}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-art{min-height:240px}.hero-coast-photo{min-height:240px;max-height:320px}.hero>div:first-child{padding:42px 28px}.cards3,.workgrid{grid-template-columns:1fr}.agent-card{position:static}.workspace-title{flex-direction:column}.nav a:not(.btn){display:none}}@media(max-width:530px){.container{padding:20px 14px 50px}.top{padding:15px}.surveybox{padding:24px}.formgrid,.docrow{grid-template-columns:1fr}.workspace-title h1{font-size:36px}.hero>div:first-child{padding:34px 23px}.step>button{padding:13px}.stepbody{padding:15px}}


/* Irish Paperwork homepage — original editorial styling, scoped to .home */
.home{background:#fbfaf6;color:#163c30}
.home .top{background:#fbfaf6;border-color:#e4e9e1;padding-top:21px;padding-bottom:21px}
.home .brand{font-size:27px}
.home .nav{gap:27px}
.home .nav a:not(.btn){color:#2d6048}
.home .nav .btn{border-radius:50px}
.home .btn{border-radius:50px}
.home-banner{background:#eff3ec;border-bottom:1px solid #e0e9df;color:#315b46;text-align:center;font-size:12px;font-weight:650;padding:10px 18px}
.home-banner span{margin-left:12px;color:#81692d;font-size:11px}
.home-shell{max-width:1200px;margin:auto;padding-left:24px;padding-right:24px}
.home-section{padding-top:90px;padding-bottom:90px}
.home h2{font-size:clamp(37px,4.4vw,60px);font-weight:400;line-height:1.07;letter-spacing:-.04em}
.home h2 em{font-weight:400}
.home .eyebrow{color:#4d7a60}
.home-hero{display:grid;grid-template-columns:55% 45%;background:#153e31;color:#fff;min-height:565px}
.home-hero-copy{padding:76px 58px 72px max(30px,calc((100vw - 1180px)/2));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.home-hero .eyebrow{color:#b7d2c0}
.home-hero h1{font-size:clamp(47px,5.5vw,78px);line-height:1.02;letter-spacing:-.045em;font-weight:400;margin:21px 0 25px;max-width:650px}
.home-hero p{font-size:18px;line-height:1.7;color:#d6e4da;max-width:540px;margin-bottom:30px}
.home-hero .btn.light{background:#eef2e8;border-color:#eef2e8;color:#153e31}
.home-hero .btn.light:hover{background:#fff}
.home-photo{min-height:565px;position:relative;overflow:hidden;background:#476b5d}
.home-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(13,41,30,.55))}
.home-photo-caption{position:absolute;bottom:30px;left:30px;right:20px;z-index:1;color:#fff;font-size:11px;font-weight:800;letter-spacing:.14em}
.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.home-intro h2{margin:14px 0 22px}
.home-lead{font-size:18px;line-height:1.8;color:#596f60;max-width:590px}
.home-textlink{color:#256a4b;font-size:14px;font-weight:750;text-decoration:none;border-bottom:1px solid #95bca5;padding-bottom:4px}
.home-story{background:#eaf0e8;padding:55px 50px}
.home-story h3{font:400 36px/1.15 Georgia,serif;letter-spacing:-.035em;margin:17px 0 20px}
.home-story p{font-size:15px;line-height:1.8;color:#566f60;margin-bottom:27px}
.home-band{background:#eaf0e7;padding:84px 0 88px}
.home-band h2{margin:16px 0}
.home-band .home-lead{margin-bottom:35px}
.home-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.home-steps article{background:#fff;border:1px solid #dbe6db;padding:34px 30px;min-height:238px}
.home-steps article>span{font:400 35px Georgia,serif;color:#94b8a0}
.home-steps h3{font:400 26px Georgia,serif;margin:22px 0 13px}
.home-steps p{font-size:14px;color:#5e7466;line-height:1.75;margin:0}
.home-feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.home-feature h2{margin:18px 0 22px}
.home-feature .btn{margin-top:12px}
.home-feature-visual{background:#183f31;color:#fff;padding:50px 52px;min-height:480px;display:flex;flex-direction:column;justify-content:center}
.home-feature-visual .eyebrow{color:#bed8c6}
.home-feature-visual>p{font:400 43px/1.1 Georgia,serif;letter-spacing:-.04em;margin:17px 0 25px}
.home-feature-visual>div{border-top:1px solid #557562;padding:12px 0;font-size:15px;font-weight:650}
.home-feature-visual>div strong{font:400 23px Georgia,serif;color:#a9cdb4;display:inline-block;width:50px}
.home-feature-visual small{display:block;margin-left:55px;color:#b8d2c0;font-weight:400;font-size:12px}
.home-feature-foot{font-size:12px;color:#bfd5c6;margin-top:22px}
.home-pricing{background:#173e30;color:#fff}
.home-pricing .eyebrow{color:#bdd6c4}
.home-pricing h2{margin:16px 0 22px}
.home-pricing p{color:#d2e2d6;line-height:1.75}
.home-price-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start}
.home-benefits{display:grid;grid-template-columns:1fr 1fr;gap:16px 25px;list-style:none;padding:0;margin:32px 0}
.home-benefits li{position:relative;padding-left:24px;font-size:14px;color:#e8f3eb}
.home-benefits li:before{content:"✓";position:absolute;left:0;color:#a9d8b9;font-weight:800}
.home .home-fine{font-size:12px;line-height:1.75}
.home-price-card{background:#fbfaf6;color:#163e30;padding:44px 38px}
.home-price-card .eyebrow{color:#4f7b5e}
.home-price-card p{color:#597365}
.home-price{font:400 72px/.98 Georgia,serif;letter-spacing:-.04em;margin:22px 0 16px}
.home-price small{font:700 14px system-ui,sans-serif;letter-spacing:0}
.home-price-card .btn{width:100%;margin:14px 0 18px}
.home-price-card .tag{background:#f4ead4;color:#80652c}
.home-faq{max-width:920px}
.home-faq h2{margin:17px 0 34px}
.home-faq details{border-top:1px solid #dbe4d9;padding:21px 0}
.home-faq details:last-child{border-bottom:1px solid #dbe4d9}
.home-faq summary{font-size:17px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}
.home-faq summary::-webkit-details-marker{display:none}
.home-faq summary:after{content:"+";font-size:24px;line-height:1}
.home-faq details[open] summary:after{content:"−"}
.home-faq details p{max-width:750px;color:#5a7061;line-height:1.8;margin:15px 0 0}
.home-ending{text-align:center;background:#e9f0e8;padding:100px 24px}
.home-ending h2{margin:17px 0 20px}
.home-ending p{color:#597363;margin-bottom:28px}
.home .footer{background:#fbfaf6;padding:35px 20px}
@media(max-width:1000px){.home-hero-copy{padding:55px 40px}.home-hero h1{font-size:clamp(45px,5.7vw,68px)}.home-intro,.home-feature{gap:34px}.home-price-grid{gap:32px}}
@media(max-width:800px){.home-hero{grid-template-columns:1fr}.home-hero-copy{padding:52px 32px}.home-photo{min-height:320px}.home-intro,.home-feature,.home-price-grid{grid-template-columns:1fr}.home-steps{grid-template-columns:1fr}.home-steps article{min-height:0}.home-section{padding-top:62px;padding-bottom:62px}.home-feature-visual{min-height:0}.home-banner span{display:block;margin:3px 0 0}.home-benefits{grid-template-columns:1fr 1fr}}
@media(max-width:530px){.home-shell{padding-left:18px;padding-right:18px}.home-hero-copy{padding:48px 24px}.home-hero h1{font-size:46px}.home-hero p{font-size:16px}.home-photo{min-height:255px}.home-story{padding:35px 28px}.home-story h3{font-size:30px}.home-feature-visual{padding:38px 30px}.home-price-card{padding:32px 25px}.home-benefits{grid-template-columns:1fr}.home h2{font-size:39px}.home .nav{gap:12px}}

/* Secure sign-in: workspace only */
.account-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:start;margin-bottom:24px}.account-panel h3{margin:8px 0}.account-controls{display:grid;gap:12px}.account-controls form{display:grid;gap:6px}.account-controls label{font-size:12px;font-weight:700}.account-inline{display:flex;gap:9px}.account-inline input{border:1px solid #cad9cc;border-radius:9px;padding:10px 12px;min-width:0;flex:1}.account-inline button{flex-shrink:0}.account-controls #accountStatus{margin:0}@media(max-width:800px){.account-panel{grid-template-columns:1fr}}@media(max-width:530px){.account-inline{flex-direction:column}.account-inline button{width:100%}}

/* Private document uploads in the paid workspace */
.doc-upload-row{display:grid;gap:10px;align-items:start;padding:18px 0;border-bottom:1px solid #e0e9df}
.doc-upload-row>label:first-child{font-size:14px;font-weight:700}
.doc-upload-row select{max-width:340px}
.doc-file-list{display:grid;gap:8px}
.doc-file{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#f4f7f1;border:1px solid #dce6db;padding:9px 12px;border-radius:10px}
.doc-file span{flex:1;min-width:160px;font-size:12px;color:#43614f}
.doc-upload-label{font-size:12px;font-weight:700;color:#1c6347}
.doc-upload-row input[type=file]{max-width:100%;font-size:13px}
.doc-notice{border-left:3px solid #458364;background:#f0f5ee;padding:10px 12px}
@media(max-width:530px){.doc-file{align-items:flex-start}.doc-file span{flex-basis:100%}.doc-upload-row select{max-width:100%}}

/* Astra + forms + checklist: preparation tools */
.preparation-tools{margin-top:45px}
.prep-heading{max-width:720px;margin-bottom:24px}
.prep-heading h2{font-size:clamp(30px,3.5vw,44px);line-height:1.12;margin:12px 0}
.prep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.prep-grid .card{min-width:0}
.prep-grid h3{margin:0 0 12px}
.prep-grid form{display:grid;gap:12px}
.prep-grid form label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#315e47}
.prep-grid input,.prep-grid select,.prep-grid textarea{border:1px solid #cbdacf;border-radius:10px;padding:10px 12px;background:white;color:#173c30;min-width:0;width:100%;font:inherit}
.prep-grid textarea{resize:vertical;min-height:170px}
.prep-grid .btn{justify-self:start}
.prep-records{list-style:none;padding:0;margin:18px 0;display:grid;gap:9px}
.prep-records li{display:flex;justify-content:space-between;gap:16px;align-items:start;border-bottom:1px solid #e1e8df;padding-bottom:9px;font-size:13px}
.prep-records strong{font-size:11px;color:#50765d;text-align:right}
.doc-ai-review{padding:14px;background:#edf5ed;border:1px solid #c6dfca;border-radius:12px;font-size:13px}
.doc-ai-review p{margin:7px 0}
.doc-ai-warning{padding:9px 11px;background:#fff5e6;border-left:3px solid #c89d56;color:#74511f}
@media(max-width:800px){.prep-grid{grid-template-columns:1fr}}

/* Passwordless sign-in: one clear action and inbox confirmation */
.email-sent{margin-top:13px;padding:16px 18px;background:#edf4ed;border:1px solid #c7ddcb;border-radius:12px;color:#1b4e36}
.email-sent strong{font-weight:750}
.email-sent p{margin:8px 0 0;line-height:1.6}
.email-sent .muted{font-size:12px;color:#54715f}
.account-controls #signInSubmit{white-space:nowrap}
@media(max-width:600px){.account-controls #signInSubmit{white-space:normal}.email-sent{padding:14px}}

/* One sign-in surface; signed-in account controls sit discreetly beside the title. */
.workspace-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.workspace-account{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.workspace-account span{font-size:12px;color:#4d6858;overflow-wrap:anywhere}
.workspace-account .btn{white-space:nowrap}
@media(max-width:800px){
  .workspace-actions{align-items:flex-start;width:100%}
  .workspace-account{justify-content:flex-start;width:100%}
}

/* One focused action area: checklist is navigation, not duplicate forms. */
.active-work{scroll-margin-top:20px}
.active-work h3:focus{outline:none}
.active-stage-content{margin-top:18px;padding-top:20px;border-top:1px solid #c9dece}
.active-stage-content .formgrid{margin-top:14px}
.step.selected{border-color:#398360;box-shadow:0 0 0 2px #c5dfcb}
.step.selected>button{background:#eff6ed}
.step>button[aria-current="step"] .stephead strong{color:#17603e}
@media(max-width:530px){.active-stage-content{padding-top:16px}.active-work{padding:20px}}

/* Six-step checklist behaves as a real inline accordion. */
.step{scroll-margin-top:18px}
.step>button{cursor:pointer;min-height:76px;transition:background-color .15s ease}
.step>button:hover{background:#f2f7f1}
.step>button:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.step.open{border-color:#90b9a1;box-shadow:0 8px 24px #1746300b}
.step.open>button{background:#edf5ed}
.step-toggle{display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;border-radius:9px;border:1px solid #c9ddcc;background:#edf4ec;color:#216448;font-size:23px;line-height:1}
.step.open .step-toggle{background:#d9eadd;color:#18543d}
.step .stepbody{border-top:1px solid #dce9dc;background:#fff}
.step.open .stepbody{display:block;animation:expandStep .16s ease-out}
@keyframes expandStep{from{opacity:.7}to{opacity:1}}
@media(max-width:530px){.step>button{gap:9px}.step-toggle{flex-basis:29px;width:29px;height:29px;font-size:19px}.step .tag{max-width:105px;line-height:1.25;text-align:center}.stepbody{padding:16px}}
@media(prefers-reduced-motion:reduce){.step.open .stepbody{animation:none}}

/* Customer-approved managed correspondence. No automatic government submissions. */
.managed-enquiry{margin-top:18px;background:#f7faf5;padding:16px;border:1px solid #cfe0cf;border-radius:13px;display:grid;gap:9px}
.managed-enquiry p{margin:0}
.managed-enquiry label{display:grid;gap:7px;font-size:12px;font-weight:700}
.managed-enquiry label input[type=text],.managed-enquiry label textarea{max-width:100%;width:100%;border:1px solid #cbdacf;border-radius:9px;padding:10px;background:white}
.managed-enquiry textarea{resize:vertical;min-height:190px;font:13px/1.55 ui-monospace,monospace}
.managed-buttons{display:flex;gap:8px;flex-wrap:wrap}
.managed-consent{background:#edf4ed;padding:12px;border-radius:10px;display:flex!important;align-items:flex-start;gap:11px;font-size:13px!important;line-height:1.5;font-weight:600!important}
.managed-consent input{width:18px!important;flex:0 0 18px;margin-top:3px}
.managed-history{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}
.managed-history h4{font-size:15px;margin:0 0 12px}
.managed-history-item{padding:12px 0;border-bottom:1px solid #e0e8df}
.managed-history-item strong{display:block;font-size:13px}
.managed-history-item .tag{margin-top:6px}
.managed-history-item p{margin:7px 0}
.managed-history-item blockquote{white-space:pre-wrap;overflow-wrap:anywhere;border-left:3px solid #a9bea8;padding:8px;margin:8px 0;color:#2d4e3b;background:#f7faf4;font-size:12px}
.managed-history .btn{margin-top:12px}
@media(max-width:620px){.managed-enquiry{padding:13px}.managed-buttons{flex-direction:column}.managed-buttons .btn{width:100%}}


/* Guided preparation journey: meaningful tasks within stages 4, 5 and 6. */
.journey-panel{display:grid;gap:12px;margin:0}
.journey-overview{display:grid;gap:8px;padding:12px 16px;background:#f2f6ef;border:1px solid #dbe8d8;border-radius:12px}
.journey-overview strong{font-size:13px;color:#26583e}
.journey-track{height:6px;background:#e0e8dc;border-radius:9px;overflow:hidden}
.journey-track>div{height:100%;background:#377455;transition:width .2s ease}
.journey-task{border:1px solid #dbe6dc;border-radius:13px;overflow:hidden;background:white}
.journey-task.is-active{border-color:#9dbca5;box-shadow:0 6px 18px #183c300d}
.journey-task-title{display:flex;width:100%;align-items:center;gap:10px;text-align:left;border:0;padding:14px;background:white;color:var(--ink)}
.journey-task-title:hover{background:#f6faf5}
.journey-task.is-active .journey-task-title{background:#edf4ed}
.journey-count{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:#dfeee1;font-weight:750;font-size:12px}
.journey-head{display:grid;gap:3px;flex:1;min-width:0}
.journey-head strong{font-size:13px}
.journey-head span{font-size:12px;color:#64756a;line-height:1.35}
.journey-state{font-size:11px;font-weight:700;color:#315d44;white-space:nowrap}
.journey-task-body{border-top:1px solid #dce8dc;padding:18px}
.journey-task-body p{font-size:13px;line-height:1.55}
.micro-form{display:grid;gap:14px;margin-top:14px}
.micro-form>.btn{justify-self:start}
.micro-field{display:grid;gap:5px;font-size:13px}
.micro-field strong{font-size:12px}
.micro-field input,.micro-field textarea,.micro-field select{padding:10px 12px;border:1px solid #cbdacf;border-radius:9px;width:100%;background:white;color:var(--ink);font:inherit}
.micro-field textarea{resize:vertical;min-height:80px}
.micro-check{display:flex;align-items:flex-start;gap:11px;padding:10px 12px;background:#f7faf6;border:1px solid #e0e9df;border-radius:9px;font-size:12px;line-height:1.5;cursor:pointer}
.micro-check input{flex:0 0 18px;width:18px;height:18px;accent-color:#216448;margin:1px 0 0}
.micro-note{padding:10px 12px;background:#f0f4ef;border-left:3px solid #93b19e;border-radius:7px;font-size:12px!important;color:#53675a;margin:12px 0 0!important}
.micro-warning{padding:12px 14px;background:#fcf5e8;border:1px solid #eedbb4;border-radius:10px;font-size:12px;color:#765d2b}
.micro-error{padding:8px 12px;background:#fff0eb;color:#943c27;border-radius:8px;font-size:12px}
.micro-summary{display:grid;gap:0;border:1px solid #dde7db;border-radius:11px;overflow:hidden}
.micro-summary>div{padding:11px 13px;border-bottom:1px solid #e1e9de}
.micro-summary>div:last-child{border-bottom:0}
.micro-summary dt{color:#5d7365;font-size:11px}
.micro-summary dd{margin:3px 0 0;font-size:13px;font-weight:650;overflow-wrap:anywhere}
.journey-official{display:inline-flex;margin:8px 0 0;padding:10px 12px;color:#246346;background:#edf5ee;border:1px solid #d0e3d2;border-radius:9px;font-weight:700;text-decoration:none;font-size:12px}
.journey-official:hover{text-decoration:underline}
.journey-done{padding:16px;background:#ecf4e9;border:1px solid #ccdfcd;border-radius:13px}
.journey-done strong{font-size:13px}
.journey-done p{font-size:12px;color:#53675a;margin:7px 0 12px}
@media(max-width:600px){.journey-task-title{gap:7px;padding:12px}.journey-head strong{font-size:12px}.journey-head span{font-size:11px}.journey-state{white-space:normal;font-size:10px;max-width:54px;text-align:center}.journey-task-body{padding:14px}.micro-form>.btn{width:100%}}
@media(prefers-reduced-motion:reduce){.journey-track>div{transition:none}}


/* Browser-only photo preflight with opt-in AI suggestions; no images saved in case data. */
.photo-preflight{display:grid;gap:12px;padding:16px;border:1px solid #cfded2;border-radius:14px;background:#f8faf6;margin:14px 0}
.photo-preflight .micro-field input[type=file]{padding:13px;background:#fff;border:1px dashed #9bbda8}
.photo-feedback{font-size:12px;font-weight:650;border-radius:10px;padding:11px 13px;background:#edf4ed;color:#285f43}
.photo-preview-row{display:grid;grid-template-columns:minmax(90px,145px) minmax(0,1fr);align-items:start;gap:14px}
.photo-preview-row>img{width:100%;max-height:205px;object-fit:contain;background:#e7ece5;border:1px solid #c7d8cc;border-radius:10px}
.photo-findings{margin:0;padding:10px 12px 10px 25px;border-radius:10px;background:white;border:1px solid #dae6da;font-size:12px;color:#425e49}
.photo-findings li{margin:4px 0}
.photo-ai-consent{background:#f1f4eb!important}
.photo-ai-feedback{padding:13px 15px;border-left:3px solid #91b5a1;background:#edf5ee;border-radius:9px;overflow-wrap:anywhere;font-size:12px}
.photo-ai-feedback strong{font-size:12px}
.photo-ai-feedback p{margin:7px 0;font-size:12px}
@media(max-width:560px){.photo-preflight{padding:12px}.photo-preview-row{grid-template-columns:110px minmax(0,1fr);gap:9px}}
@media(max-width:390px){.photo-preview-row{grid-template-columns:1fr}.photo-preview-row>img{max-height:260px}}


.gov-form-handoff{display:flex;align-items:flex-start;flex-direction:column;gap:9px;padding:15px;border:1px solid #bdd5c7;background:#eef6ef;border-radius:12px;margin:14px 0}
.gov-form-handoff p{margin:0}
.gov-form-handoff strong{font-size:13px}
.gov-form-handoff .btn{max-width:100%}


/* Single guided 3-generation evidence journey, with physical record vs digital copy clearly separated. */
.record-start{border:1px solid #d4e4d4;background:#f2f7ef;border-radius:15px;padding:18px 20px;margin-bottom:16px}
.record-eyebrow{font-size:11px!important;text-transform:uppercase;letter-spacing:.11em;font-weight:800;color:#357451;margin:0 0 6px!important}
.record-start h3{font-size:24px;margin:0 0 9px}
.record-start p{font-size:13px;color:#4f6556;line-height:1.6;margin:0 0 10px}
.record-start a,.record-guide-link,.record-help-links a{display:inline-block;font-size:12px;font-weight:700;color:#1b6843;text-decoration:underline;text-underline-offset:3px}
.record-status-summary{display:grid;grid-template-columns:1fr auto;gap:7px 12px;border-radius:13px;border:1px solid #d5e5d5;background:#fff;padding:16px 18px;margin:12px 0 18px}
.record-status-summary strong{font-size:15px}
.record-status-summary>span{font-size:12px;color:#54695e;text-align:right}
.record-status-summary small{color:#718274;grid-column:1/-1}
.record-meter{height:7px;background:#e5eee4;border-radius:50px;overflow:hidden;grid-column:1/-1}
.record-meter>span{display:block;height:100%;background:#267451;transition:width .2s ease}
.record-generation{border:1px solid #d8e5d8;border-radius:15px;margin:16px 0;background:#fff;overflow:hidden}
.record-generation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px;background:#f5f8f3;border-bottom:1px solid #dde7dd}
.record-generation-heading h4{font-size:17px;margin:0 0 6px;font-family:Georgia,serif}
.record-generation-heading p{font-size:12px;color:#68776e;line-height:1.5;margin:0}
.record-generation-heading>span{font-size:11px;color:#316b48;font-weight:750;white-space:nowrap}
.record-item{border-bottom:1px solid #e6ebe5}
.record-item:last-child{border-bottom:0}
.record-toggle{width:100%;border:0;background:#fff;display:flex;align-items:center;gap:12px;padding:17px 18px;text-align:left;color:var(--ink);cursor:pointer}
.record-toggle:hover{background:#f8fbf7}
.record-open>.record-toggle{background:#eef5ef}
.record-index{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:#e4eee4;color:#285d42;font-size:13px;font-weight:850}
.record-label{display:grid;gap:4px;min-width:0;flex:1}
.record-label strong{font-size:13px;line-height:1.35}
.record-label>span{font-size:11px;color:#66796d}
.record-toggle-symbol{font-size:23px;color:#377257;flex:0 0 18px;line-height:1}
.record-detail{padding:19px 18px 22px;border-top:1px solid #e1e9de;display:grid;gap:14px}
.record-detail p{margin:0;font-size:12px;color:#52675b;line-height:1.55}
.record-why{border-left:3px solid #a8c7ac;padding:8px 12px;background:#f8faf7}
.record-field,.record-evidence{display:grid;gap:8px}
.record-field strong,.record-evidence strong{font-size:12px}
.record-field select,.record-evidence select{width:100%;max-width:100%;border:1px solid #c8d9cd;border-radius:10px;padding:11px;background:#fff;font:inherit;color:var(--ink);font-size:13px}
.record-next{padding:10px 13px;background:#f0f7ef;border-radius:9px;color:#2e6647!important;font-weight:650}
.record-help{border:1px solid #dae7d7;border-radius:10px;padding:10px 13px;background:#fafcf9}
.record-help summary{cursor:pointer;font-size:12px;font-weight:750;color:#245c3c}
.record-help p{margin:11px 0!important;color:#506357}
.record-help-links{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}
.record-help .btn{margin-top:11px}
.record-digital{display:grid;gap:10px;border-top:1px dashed #cfdbcf;padding-top:14px}
.record-digital>strong{font-size:12px}
.record-digital-status{color:#5a7665!important;font-size:12px}
.record-upload-field{display:grid;gap:3px;font-size:12px}
.record-upload-field span{font-size:11px;color:#778477}
.record-digital input[type=file]{font-size:12px;width:100%;background:#f8faf8;border:1px dashed #adbfad;padding:12px;border-radius:9px}
.record-files{padding:0;list-style:none;display:grid;gap:10px;margin:0}
.record-file{background:#f7faf7;border:1px solid #e0e8de;border-radius:9px;padding:10px 12px;display:grid;gap:8px}
.record-file>span{font-size:12px;color:#48694f}
.record-file-actions{display:flex;gap:8px;flex-wrap:wrap}
.record-astra-link{border:none;background:transparent;color:#286a47;font-size:12px;text-align:left;text-decoration:underline;font-weight:700;padding:3px 0;justify-self:start}
.records-finish{display:grid;gap:13px;border:1px solid #d2e3d4;background:#f4f9f3;padding:20px;border-radius:14px;margin-top:16px}
.records-finish h4{font:700 20px Georgia,serif;margin:0}
.records-finish p{font-size:12px;margin:0;color:#5a705c}
.record-confirm{display:flex;gap:11px;align-items:flex-start;padding:13px;border:1px solid #d3e5d1;background:#fff;border-radius:11px;font-size:12px;line-height:1.5}
.record-confirm input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:#267451}
.record-confirm:has(input:disabled){opacity:.65}
.records-ready{font-weight:700;color:#246744!important}
.record-footer-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.family-journey{display:grid;gap:12px}
.route-journey{display:grid;gap:17px}
.route-result{background:#f1f6f0;border:1px solid #d3e5d5;padding:17px;border-radius:14px}
.route-result h4{font:700 20px Georgia,serif;margin:4px 0}
.route-result p{font-size:13px;color:#4d6959}
.route-actions{border:1px solid #dde8dd;background:#fff;border-radius:13px;padding:17px}
.route-actions h4{font:700 17px Georgia,serif;margin:0 0 8px}
.route-actions>p{font-size:12px;color:#566e5c}
.route-actions .micro-form{margin-top:11px}
.route-actions .micro-field{padding:8px 0;border-bottom:1px solid #edf1ec}
.family-review .micro-form{margin-top:15px}
@media(max-width:600px){
 .record-start,.record-generation-heading,.record-detail,.records-finish{padding:14px}
 .record-status-summary{grid-template-columns:1fr}
 .record-status-summary>span{text-align:left}
 .record-toggle{padding:14px 12px;gap:8px}
 .record-label strong{font-size:12px}
 .record-generation-heading{flex-direction:column}
 .record-file-actions .btn{flex:1;white-space:nowrap}
 .record-confirm{padding:10px}
 .record-digital input[type=file]{padding:9px}
}
@media(prefers-reduced-motion:reduce){.record-meter>span{transition:none}}
