:root{--navy:#0b1725;--ink:#192a3e;--muted:#68798b;--line:#dde4ec;--canvas:#f3f5f8;--blue:#376ed0;--orange:#ed8d42;--green:#2f8065}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.5 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-size:12px;font-weight:600;cursor:pointer;text-decoration:none}button:hover,.btn:hover{background:#eef3fa;border-color:#aebfd4}button:disabled{opacity:.5;cursor:default}.primary{background:var(--blue);border-color:var(--blue);color:#fff}.primary:hover{background:#285bac;color:#fff}.quiet{background:transparent;border-color:transparent}.danger{color:#a84040}a{color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #81a8e5;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:31px;line-height:1.25;letter-spacing:-.8px;font-weight:650;margin-bottom:9px}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:15px;margin-bottom:8px}p{color:var(--muted)}small{font-size:11px}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:var(--ink)}label{display:block;font-size:12px;font-weight:600}label>input,label>select,label>textarea{margin-top:7px}textarea{resize:vertical;min-height:80px}form{display:grid;gap:18px}.check{display:flex;align-items:center;gap:8px;font-weight:400}.check input{width:auto;margin:0}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:18px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink)}.brand img{width:63px;height:47px;object-fit:contain}.brand strong{display:block;font-size:13px;letter-spacing:1.1px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.top-actions{display:flex;align-items:center;gap:13px}.avatar{width:34px;height:34px;border-radius:50%;background:#eef3fa;display:grid;place-items:center;color:#416487;font-size:12px;font-weight:700}.wrap{max-width:1480px;margin:auto;padding:32px 38px 60px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#718196;font-weight:700;text-transform:uppercase;margin-bottom:13px}.crumb{display:flex;align-items:center;gap:7px;margin-bottom:24px;color:var(--muted);font-size:12px}.crumb button{padding:0;border:0;background:transparent;color:var(--muted)}.hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.hero p{max-width:660px;font-size:13px}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:4px;background:#e9f3ee;color:var(--green);font-size:10px;font-weight:650;white-space:nowrap}.badge::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.badge.draft{background:#fff0dc;color:#9a6b27}.badge.hold{background:#edf0f5;color:#63748b}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fff;border-radius:9px;margin:24px 0 28px}.stat{padding:19px 23px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat small{display:block;color:var(--muted);margin-bottom:5px}.stat strong{font-size:17px;font-weight:600}.tabs{display:flex;gap:27px;border-bottom:1px solid var(--line);margin-bottom:27px;overflow:auto}.tabs button{padding:13px 0;border:0;border-radius:0;white-space:nowrap;color:var(--muted);background:transparent;font-size:12px}.tabs button.active{color:var(--blue);box-shadow:inset 0 -2px var(--blue)}.tabs button:last-child{margin-left:auto}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 20px}.section-head h2{margin:0 0 4px}.section-head p{margin:0;font-size:12px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.project-card,.panel{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}.project-card{padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.project-card h2{margin:0}.project-card p{font-size:12px}.project-card .btn{margin-top:8px}.project-card .project-symbol{width:45px;height:45px;background:#edf3fc;border:1px solid #dae4f3;border-radius:10px;display:grid;place-items:center;font-size:22px;color:#5075a3;margin-bottom:10px}.project-card footer{padding-top:15px;margin-top:auto;border-top:1px solid var(--line);width:100%;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar button.selected{border-color:#7091c5;background:#edf3fd;color:#2a5b9e}.comparison{display:grid;grid-template-columns:225px minmax(0,1fr);gap:22px}.view-list{background:#fff;border:1px solid var(--line);border-radius:9px;padding:14px;align-self:start}.view-list input{font-size:12px;padding:9px}.view-items{max-height:590px;overflow:auto;margin-top:12px}.view-item{display:flex;text-align:left;width:100%;padding:11px 9px;gap:10px;border:1px solid transparent;background:transparent;margin-bottom:3px}.view-item.selected{background:#edf3fd;border-color:#d3e0f4;color:#295caa}.view-item strong{font-size:12px;min-width:30px}.view-item span{font-size:11px;font-weight:400;color:var(--muted)}.comparison-main{min-width:0}.compare-settings{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:17px}.compare-settings h3{margin:0 0 2px}.compare-settings p{margin:0;font-size:11px}.compare-settings label{min-width:180px}.frames{display:grid;grid-template-columns:1fr 1fr;gap:16px}.frames.single{grid-template-columns:1fr}.frame{min-width:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.frame-header{display:flex;gap:10px;align-items:center;padding:13px 15px}.frame-header select{font-size:12px;padding:8px;max-width:240px}.letter{width:25px;height:25px;display:grid;place-items:center;border-radius:4px;background:#edf3fa;font-size:11px;color:#537194}.photo{background:#e6ebf0;aspect-ratio:3/2;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.photo img{width:100%;height:100%;object-fit:contain}.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:25px;color:#728498;width:100%;height:100%;background:linear-gradient(135deg,#e7edf3,#f0f3f6)}.placeholder .outline{font-size:36px;color:#91a4bb;font-weight:300}.placeholder strong{font-size:12px;font-weight:500}.placeholder small{max-width:260px;line-height:1.6}.frame-footer{padding:14px 15px}.frame-footer .filename{font-size:10px;color:var(--muted);overflow-wrap:anywhere;display:block;margin-bottom:7px}.frame-footer .toolbar{gap:6px;margin-top:13px}.frame-footer .btn,.frame-footer button{padding:7px 9px;font-size:10px}.position-label{font-size:11px;font-weight:600;color:#4c657e}.note{margin-top:12px;padding:10px 12px;background:#f5f7fa;border-left:2px solid #96adc9;font-size:11px;color:#566c82;line-height:1.6}.callout{border:1px solid #d6e2f2;background:#edf3fa;color:#506988;border-radius:6px;padding:13px 16px;font-size:12px;margin:17px 0}.timeline{display:flex;gap:9px;overflow:auto;padding:17px 0}.timeline button{padding:9px 13px;font-size:11px}.timeline .selected{border-color:#7193c8;color:var(--blue);background:#edf3fd}.muted{color:var(--muted)}.tiny{font-size:11px}.visit-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:21px 23px;border-bottom:1px solid var(--line)}.visit-row:last-child{border:0}.visit-row h3{margin:0 0 4px}.visit-row p{margin:0;font-size:11px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:20px}.gallery .photo{cursor:pointer}.gallery .frame-footer{padding:12px}.empty{padding:46px 25px;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:8px}.empty h3{margin:0 0 8px}.empty p{font-size:12px;margin:0}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-intro{background:var(--navy);color:#fff;padding:65px 10%;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.login-intro:after{content:'';position:absolute;width:620px;height:620px;border:1px solid #233549;transform:rotate(35deg);right:-360px;bottom:-260px;pointer-events:none}.login-intro .brand{color:#fff;margin-bottom:85px;z-index:1}.login-intro .brand img{background:#fff;border-radius:5px;padding:4px;width:66px}.login-intro .brand small{color:#a3b3c5}.login-intro .eyebrow{color:#d89c6d}.login-intro h1{font-size:46px;max-width:490px;font-weight:500;line-height:1.2;letter-spacing:-1.5px}.login-intro p{color:#a9b9cb;max-width:370px;line-height:1.9;font-size:13px}.login-intro footer{margin-top:80px;font-size:10px;color:#8396ac;letter-spacing:.5px}.login-form{display:grid;place-content:center;padding:45px}.login-form>div{max-width:360px;width:100%}.login-form h2{font-size:25px}.login-form p{font-size:12px;margin-bottom:28px}.login-form .primary{padding:13px}.login-form .help{font-size:11px;line-height:1.8;margin-top:25px}.error{font-size:12px;color:#ab4242;background:#fff0ef;padding:11px;border-radius:5px}.demo-banner{background:#fff1de;color:#865d2b;padding:9px 20px;font-size:11px;text-align:center;border-bottom:1px solid #ecd7b7}.demo-banner button{margin-left:15px;padding:4px 8px;background:transparent;border-color:#d9bf96;font-size:10px}.resume{display:flex;align-items:center;justify-content:space-between;border:1px solid #d9e4f1;background:#edf3fa;border-radius:7px;padding:13px 17px;margin:20px 0;gap:15px;font-size:12px}.status-form{max-width:650px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.padded{padding:25px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:12px 15px;border-bottom:1px solid var(--line)}th{background:#f5f7fa;color:var(--muted);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.6px}.footer{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:#8492a2}.boot{padding:70px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;border-radius:6px;padding:12px 20px;font-size:12px;z-index:200;display:none;max-width:90vw}dialog{border:1px solid var(--line);border-radius:12px;padding:26px;max-width:min(95vw,700px);width:600px;max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#0b1725a8}dialog .section-head{margin-bottom:20px}dialog .photo{border-radius:6px}dialog.lightbox{width:min(1300px,96vw);max-width:96vw}dialog.lightbox .photo{aspect-ratio:auto;min-height:200px;height:65vh}.split-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.admin-preview{padding:10px 15px;border:1px solid #c9d9ed;background:#eaf1fa;border-radius:6px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.screen-only{position:absolute;left:-9999px}.hidden{display:none!important}@media(min-width:1600px){.photo{aspect-ratio:4/3}}@media(max-width:1000px){.comparison{grid-template-columns:170px 1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.frames{grid-template-columns:1fr}.login-intro h1{font-size:37px}.compare-settings{align-items:start;flex-direction:column}.compare-settings label{width:100%}}@media(max-width:650px){.topbar{padding:0 17px;height:73px}.brand img{width:44px;height:35px}.brand strong{font-size:11px}.brand small{font-size:9px}.top-actions{gap:5px}.top-actions .user-name{display:none}.wrap{padding:23px 17px 40px}h1{font-size:25px}.hero{flex-direction:column;gap:3px}.stats{grid-template-columns:1fr}.stat{padding:12px 17px;border-right:0;border-bottom:1px solid var(--line)}.stat strong{font-size:15px}.comparison{grid-template-columns:1fr}.view-items{display:flex;max-height:none;overflow:auto;gap:5px}.view-item{width:auto;min-width:125px}.view-list{padding:10px}.view-list input{display:none}.view-list .eyebrow{margin:0}.gallery{grid-template-columns:1fr}.tabs{gap:20px}.visit-row{align-items:start;flex-direction:column;padding:17px}.login{grid-template-columns:1fr}.login-intro{padding:30px 25px}.login-intro .brand{margin-bottom:30px}.login-intro h1{font-size:30px;max-width:350px}.login-intro p,.login-intro footer{display:none}.login-form{padding:35px 25px}.login-form>div{max-width:none}.admin-grid,.split-form{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}.footer{gap:15px}.toolbar{gap:6px}}

.view-thumb{display:grid;place-items:center;flex:0 0 35px;width:35px;height:29px;background:#e6edf5;border-radius:3px;color:#869cb6}.view-thumb img{width:35px;height:29px;object-fit:cover}.view-item{gap:7px;justify-content:flex-start}.view-item strong{min-width:27px}.view-item>span:last-child{line-height:1.3}

html{scrollbar-gutter:stable;overflow-anchor:none} .visit-arrow{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:48px;height:64px;padding:0;border:0;border-radius:9px;background:rgba(20,35,50,.2);color:rgba(255,255,255,.8);font-size:48px;line-height:1;text-shadow:0 1px 5px #25384b;opacity:.7}.visit-arrow.previous{left:12px}.visit-arrow.next{right:12px}.visit-arrow:hover,.visit-arrow:focus-visible{opacity:1;background:rgba(20,35,50,.6)}.visit-arrow:disabled{opacity:.15;cursor:default}.flip-controls{margin-bottom:14px}.flip-frames{display:grid}.flip-frames .flip-frame{grid-area:1/1;visibility:hidden;pointer-events:none}.flip-frames .flip-frame.shown{visibility:visible;pointer-events:auto}

/* NREP editorial palette and typography. */
:root{--navy:#18352f;--ink:#233a34;--muted:#70796f;--line:#dcded5;--canvas:#f5f4ef;--blue:#244d42;--orange:#a27650;--green:#3d6853}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.8px}h1{font-size:44px;line-height:1.12;margin-bottom:14px}h2{font-size:29px;line-height:1.2}h3{font-weight:550;letter-spacing:-.15px}
button,.btn{border-radius:3px;padding:11px 17px;font-size:12px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s}button:hover,.btn:hover{background:#ebece4;border-color:#aab6a8}.primary{background:var(--navy);border-color:var(--navy);color:#fff}.primary:hover{background:#2f5145;border-color:#2f5145;color:#fff}.quiet{background:transparent;border-color:transparent}a{color:#385e4c}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid #a27650;outline-offset:4px}
.topbar{height:96px;padding:0 44px;background:#fdfdf9;border-bottom:1px solid #d5d8cc}.brand{gap:17px}.brand img{width:73px;height:58px}.brand strong{font-size:14px;letter-spacing:2.6px;font-weight:650}.brand small{font-size:11px;letter-spacing:.25px;margin-top:4px}.avatar{background:#e6ebe1;color:#3f5f4b;border:1px solid #d9e0d2}.top-actions{gap:17px}
.wrap{padding:37px 44px 60px;max-width:1540px}.eyebrow{color:#8d6d4d;font-size:10px;letter-spacing:2px;line-height:1.65;margin-bottom:14px}.crumb{margin-bottom:31px;font-size:11px;letter-spacing:.25px}.hero{gap:30px}.hero p{font-size:12px;letter-spacing:.1px;line-height:1.8;max-width:550px}.hero>.toolbar{padding-top:7px}.badge{border-radius:2px;font-size:10px;letter-spacing:.5px;font-weight:550;background:#e8eee3;color:#45644d}.badge.draft{background:#f1e9db;color:#886849}.badge.hold{background:#ecece5;color:#6b7062}
.stats{border:0;border-top:1px solid #cbd0c3;border-bottom:1px solid #cbd0c3;border-radius:0;background:transparent;margin:31px 0 18px}.stat{padding:22px 25px;border-color:#d8dcd0}.stat:first-child{padding-left:0}.stat small{font-size:10px;letter-spacing:.8px;text-transform:uppercase;margin-bottom:8px}.stat strong{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:400;letter-spacing:-.4px}.tabs{gap:30px;margin-bottom:32px;border-color:#cdd3c6}.tabs button{font-size:10px;letter-spacing:.8px;text-transform:uppercase;padding:17px 0;font-weight:550}.tabs button.active{color:var(--navy);box-shadow:inset 0 -2px var(--orange)}
.section-head{margin-bottom:25px}.section-head p{font-size:12px;line-height:1.8}.section-head h2{margin-bottom:6px}.cards{gap:24px}.project-card,.panel{border-radius:3px;border-color:var(--line);background:#fdfdf9}.project-card{padding:31px;gap:14px}.project-card h2{font-size:28px}.project-card p{font-size:12px;line-height:1.85;max-width:480px}.project-card .project-symbol{font-family:Georgia,'Times New Roman',serif;font-size:30px;color:#a48462;font-weight:400;border:0;background:transparent;width:auto;height:auto;margin-bottom:5px;letter-spacing:-1px}.project-card footer{border-color:#dce0d4;font-size:10px;padding-top:20px}.project-card>button{margin-top:4px}
.project-library{margin-top:34px;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));max-width:1160px}.library-card{padding:34px 36px 29px;gap:0;border-top:2px solid var(--navy);cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}.library-card:hover{background:#fff;box-shadow:0 7px 24px #253c3210;border-color:#9fab98;border-top-color:var(--navy)}.library-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;margin-bottom:28px}.library-card-top .eyebrow{margin:0}.library-card h2{font-size:36px;letter-spacing:-.85px;margin-bottom:12px}.library-card .project-company{font-size:11px;letter-spacing:1px;text-transform:uppercase;margin-bottom:29px}.project-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;width:100%;margin-bottom:25px}.project-card-meta small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.project-card-meta strong{font-family:Georgia,'Times New Roman',serif;font-size:23px;font-weight:400}.delivery-status{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:500}.delivery-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#a47f53}.delivery-status.delivered:before{background:#4b7355}.card-cta{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:11px;font-weight:550;letter-spacing:.65px;text-transform:uppercase}.card-cta span{font-size:20px;font-weight:400;color:#8b765a}
.toolbar button.selected,.timeline .selected{background:#e6ebdf;border-color:#a0ad95;color:var(--navy)}.comparison{grid-template-columns:220px minmax(0,1fr);gap:25px}.view-list{border-radius:3px;background:#fdfdf9;border-color:var(--line);padding:15px}.view-list .eyebrow{font-size:9px}.view-item{border-radius:2px;padding:12px 7px}.view-item.selected{background:#e8ecdf;border-color:#ccd5bf;color:var(--navy)}.view-item span{color:#727c6c}.view-thumb{border-radius:0;background:#e7eade}.view-thumb img{filter:saturate(.9)}.compare-settings{margin-bottom:20px}.compare-settings h3{font-size:15px}.compare-settings p{font-size:11px}.frame{border-radius:3px;background:#fdfdf9;border-color:#d8ddcf}.frame-header{padding:14px 16px;border-bottom:1px solid #e0e3d9}.frame-header select{background:#fdfdf9;border-color:#cdd4c2;border-radius:2px;max-width:260px}.letter{background:#ecede4;color:#7a785f;border-radius:1px}.photo{background:#e6e8df}.frame-footer{padding:17px}.frame-footer .toolbar{margin-top:16px}.frame-footer .filename{font-size:9px;letter-spacing:.3px}.position-label{color:#68795d;font-size:10px}.callout{background:#eeefe6;border:1px solid #d6ddc9;border-left:2px solid #a58a63;border-radius:2px;color:#637052;padding:15px 18px;font-size:11px;line-height:1.8}.note{background:#f2f3eb;border-color:#a1af8f;color:#637454}.timeline button{border-radius:2px;font-size:10px}.visit-row{padding:25px}.visit-row h3{font-size:16px}.visit-row p{line-height:1.8}.gallery{gap:22px}.padded{padding:30px}.empty{background:#fdfdf9;border-radius:3px;border:1px solid var(--line)}input,select,textarea{border-radius:2px;border-color:#cdd4c2;background:#fffffc}.placeholder{background:linear-gradient(135deg,#e8ebdf,#f3f3ed);color:#7c8573}.placeholder .outline{color:#a0ac94}.footer{margin-top:46px;padding-top:23px;border-color:#cdd3c6;color:#929782;font-size:9px;letter-spacing:.3px}
.login-intro{background:#1b352d}.login-intro:after{border-color:#3b5342}.login-intro h1{font-size:57px;line-height:1.1;letter-spacing:-1.7px}.login-intro .brand small{color:#b2beab}.login-intro p{color:#b5c0ae}.login-intro footer{color:#a2ae95;letter-spacing:1px}.login-form h2{font-size:36px}.login-form{background:#f6f5f0}.login-form .eyebrow{color:#96754f}.login-intro .brand img{border-radius:2px;background:#fbfbf3}.login-intro .eyebrow{color:#c5ab83}dialog{border-radius:4px;background:#fdfdf9;padding:30px}dialog::backdrop{background:#172c25b8}dialog .photo{border-radius:2px}#toast{border-radius:3px;background:#1b352d}.admin-preview{background:#edf0e5;border-color:#ccd6bf;border-radius:2px}
@media(max-width:1150px){h1{font-size:38px}.hero{gap:20px}.hero>.toolbar{max-width:400px}.comparison{grid-template-columns:190px minmax(0,1fr)}.section-head{align-items:flex-start;flex-wrap:wrap}.section-head>.toolbar{gap:7px}}
@media(max-width:650px){.topbar{height:82px;padding:0 19px}.brand{gap:10px}.brand img{width:52px;height:43px}.brand strong{font-size:12px}.brand small{font-size:9px}.top-actions{gap:5px}.top-actions button{padding:8px;font-size:10px}.wrap{padding:26px 19px 40px}h1{font-size:35px}h2{font-size:27px}.hero{gap:10px}.hero>.toolbar{max-width:none}.crumb{margin-bottom:23px}.stats{margin:24px 0 10px}.stat,.stat:first-child{padding:15px 0;border-color:#d8dcd0}.stat strong{font-size:24px}.stat small{font-size:9px;margin-bottom:5px}.tabs{gap:23px;margin-bottom:25px}.tabs button{font-size:9px;padding:16px 0}.comparison{grid-template-columns:1fr}.view-items{max-height:none}.view-list{padding:11px}.view-item{min-width:130px}.library-card{padding:25px}.library-card h2{font-size:30px}.library-card-top{align-items:flex-start;margin-bottom:24px}.library-card-top .eyebrow{font-size:9px}.project-card-meta{gap:15px}.project-card-meta strong{font-size:20px}.project-card{padding:25px}.project-library{margin-top:26px}.login-intro h1{font-size:42px}.login-intro{padding:32px 25px}.login-form{padding:38px 25px}.footer{flex-direction:column;gap:8px}.section-head>.toolbar{gap:6px}.section-head>.toolbar button{padding:9px 11px;font-size:10px}.gallery{gap:18px}}
@media(prefers-reduced-motion:reduce){button,.btn,.library-card{transition:none}}
.tabs button:last-child{margin-left:0}.tabs button[data-id="review"]{margin-left:auto}@media(max-width:650px){.brand small{display:none}}@media(max-width:420px){.top-actions .avatar{display:none}}

/* Quiet blocks anchor the editorial layout without adding visual clutter. */
.hero>div:first-child>.eyebrow{display:flex;align-items:center;gap:12px}.hero>div:first-child>.eyebrow:before{content:'';display:block;flex:0 0 28px;height:3px;background:#a27650}
.stats{background:#eeefe7;border-top:0;border-bottom:0}.stat{border-color:#d8ddcf}.stat:first-child{background:#233e34;padding-left:25px;border-right:0}.stat:first-child small{color:#c4cebc}.stat:first-child strong{color:#fffef8}
#content>.cards>.project-card:first-child{background:#edf0e6;border-top:3px solid #637a5b}#content>.cards>.project-card:nth-child(2){border-top:3px solid #b29a77}.project-card .project-symbol{display:grid;place-items:center;width:48px;height:48px;background:#e3e8d9;color:#65764f;font-size:24px;margin-bottom:8px}.project-card:nth-child(2) .project-symbol{background:#eee7da;color:#96774e}
.project-card-meta{background:#eef0e7;border:0;padding:22px 20px}.library-card-top .eyebrow{display:flex;align-items:center;gap:10px}.library-card-top .eyebrow:before{content:'';width:7px;height:7px;flex:0 0 7px;background:#a68a60}.library-card{border-top:3px solid #244439}
@media(max-width:650px){.stat,.stat:first-child{padding:16px 19px}.project-card-meta{padding:18px 15px}.library-card-top .eyebrow{align-items:baseline}.project-card .project-symbol{width:43px;height:43px;font-size:22px}}

/* Compact portfolio cards; the complete card remains the click target. */
.project-library{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:24px;max-width:1440px}.library-card{aspect-ratio:5/4;padding:24px;min-width:0}.library-card-top{margin-bottom:18px;gap:10px}.library-card-top .eyebrow{font-size:9px;letter-spacing:1.3px}.library-card h2{font-size:29px;margin-bottom:9px}.library-card .project-company{font-size:10px;letter-spacing:.65px;line-height:1.6;margin-bottom:20px}.project-card-meta{padding:17px 15px;gap:18px;margin-bottom:18px}.project-card-meta small{font-size:9px;letter-spacing:.6px;margin-bottom:7px}.project-card-meta strong{font-size:21px}.card-cta{margin-top:auto;font-size:10px}.delivery-status{font-size:11px}#content>.cards>.project-card{padding-top:28px}
@media(max-width:650px){.library-card{aspect-ratio:5/4;padding:22px;min-height:300px}.library-card h2{font-size:27px}.library-card-top{margin-bottom:16px}.library-card .project-company{margin-bottom:16px}.project-card-meta{padding:15px 12px;gap:12px;margin-bottom:16px}.project-card-meta strong{font-size:19px}.library-card-top .eyebrow{font-size:8px}.library-card-top .badge{font-size:9px;padding:4px 7px}}

/* Keep the layout choice distinct from the capture-date presets. */
.comparison-controls{margin:0 0 28px;display:grid;gap:20px}.comparison-controls fieldset{border:0;padding:0;margin:0;min-width:0}.comparison-controls legend{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.1px;margin-bottom:10px;color:var(--muted)}.layout-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.layout-choice,.preset-choice{display:flex;align-items:flex-start;justify-content:flex-start;text-align:left;flex-direction:column;gap:5px;padding:13px 15px;white-space:normal;min-width:0}.layout-choice strong,.preset-choice strong{font-size:12px;font-weight:600}.layout-choice span,.preset-choice span{font-size:10px;font-weight:400;line-height:1.6;color:var(--muted)}.layout-choice.selected,.preset-choice.selected{background:#e6ebdf;border-color:#91a384;color:var(--navy)}.date-presets{border-top:1px solid var(--line)!important;padding-top:15px!important}.preset-choices{display:flex;gap:9px;flex-wrap:wrap}.preset-choice{padding:10px 14px;flex:1;max-width:330px}.custom-dates{display:grid;grid-template-columns:1fr 1fr;max-width:670px;gap:15px;margin-top:16px}.custom-dates label{font-size:11px}.preset-note{margin:10px 0 0}.capture-label{font-size:12px;font-weight:500}.frame-header{min-height:59px}.view-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.view-history .photo{cursor:pointer}.view-history .frame{align-self:start}.comparison-hint{margin:15px 0;line-height:1.8}.view-history .frame-header{justify-content:flex-start;flex-wrap:wrap}
@media(max-width:850px){.layout-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.view-history{grid-template-columns:1fr}.preset-choice{min-width:160px}.comparison-controls{gap:17px}}@media(max-width:500px){.layout-choice,.preset-choice{padding:11px}.layout-choice strong,.preset-choice strong{font-size:11px}.layout-choice span,.preset-choice span{font-size:10px}.preset-choices{display:grid;grid-template-columns:1fr}.preset-choice{max-width:none}.custom-dates{grid-template-columns:1fr}.comparison-controls{margin-bottom:22px}.frame-header{padding:12px}.view-history{gap:15px}}
@media(min-width:651px){.frames:not(.single){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* One compact layout toolbar; capture-date selection lives with the photos. */
.comparison-heading{align-items:center;gap:18px;margin-bottom:22px}.comparison-heading h2{margin:0;white-space:nowrap}.comparison-toolbar{display:flex;gap:14px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.layout-switch{display:flex;gap:5px;align-items:center}.layout-switch button{padding:9px 12px;font-size:11px;white-space:nowrap}.layout-switch .selected,.single-visit-tabs .selected{background:#e6ebdf;border-color:#91a384;color:var(--navy)}.comparison-toolbar select{width:auto;min-width:165px;max-width:235px;padding:9px 30px 9px 10px;font-size:11px}.single-visit-tabs{position:relative;display:flex;gap:9px;overflow-x:auto;align-items:center;padding:0 0 12px;margin-bottom:4px;scrollbar-width:thin}.single-visit-tabs button{flex:0 0 auto;font-size:11px;padding:10px 13px;min-height:39px}.date-tag{font-size:9px;color:var(--muted);font-weight:400;margin-left:3px}.compare-settings{align-items:center;margin-bottom:15px}.compare-settings h3{margin:0}.frame-header select{max-width:100%;width:100%}
@media(max-width:900px){.comparison-heading{align-items:flex-start}.comparison-toolbar{justify-content:flex-start;gap:10px}}@media(max-width:650px){.comparison-heading{gap:12px}.comparison-toolbar{width:100%;justify-content:space-between;gap:10px}.layout-switch{gap:4px}.layout-switch button{padding:9px 10px;font-size:10px}.comparison-toolbar select{min-width:135px;max-width:100%;padding:9px 26px 9px 9px;font-size:10px}.single-visit-tabs button{padding:9px 11px;font-size:10px}.date-tag{font-size:8px}}
.compare-settings h3{align-self:flex-start}

/* Image navigation stays legible on light and dark photographs. */
.visit-arrow{opacity:1;background:rgba(19,49,41,.88);color:#fff;border:1px solid rgba(255,255,255,.8);box-shadow:0 2px 9px #0004;text-shadow:none;font-weight:500}.visit-arrow:hover,.visit-arrow:focus-visible{opacity:1;background:#173f33;color:#fff}.visit-arrow:disabled{opacity:.35;background:#273d34;cursor:default}.coverage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.coverage-grid .photo{height:auto!important;min-height:0!important;aspect-ratio:3/2!important;cursor:pointer}.viewer-caption{display:flex;align-items:center;gap:12px;margin:12px 0;font-size:13px}.viewer-filename{margin:14px 0 10px;overflow-wrap:anywhere}.all-view-history .frame-header{min-height:60px}.all-view-history .capture-label{font-size:11px}@media(max-width:850px){.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.coverage-grid{grid-template-columns:1fr}.visit-arrow{width:44px;height:58px;font-size:42px}.viewer-caption{font-size:12px}dialog.lightbox{padding:18px}}
.all-view-settings{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.all-view-settings select{width:auto;min-width:135px;font-size:11px;padding:8px 28px 8px 10px}

.all-sort-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;flex-shrink:0}.all-sort-buttons button{width:112px;min-height:38px;padding:9px 12px;font-size:11px;white-space:nowrap}.all-sort-buttons button.selected{background:#e6ebdf;border-color:#91a384;color:var(--navy)}@media(max-width:650px){.all-view-settings{flex-wrap:wrap}.all-sort-buttons button{width:108px}}
.note{white-space:pre-line}.automatic-note{margin:0 0 20px}.automatic-note small{display:block;text-transform:uppercase;letter-spacing:.7px;font-size:9px;margin-bottom:5px}#note-form label>span{display:block;margin-top:8px}
.delivery-folder{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.copy-delivery-link{border:0;background:transparent;padding:5px 3px;font-size:10px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.copy-delivery-link:hover{background:transparent;color:var(--ink)}.delivery-url{flex-basis:100%;font-size:11px;min-width:240px;max-width:100%}.transition-toggle{border:0;background:transparent;padding:4px 0;font-size:10px;color:var(--blue);text-decoration:underline;text-underline-offset:3px;margin-top:8px}.transition-toggle:hover{background:transparent;color:var(--ink)}

.document-tabs{margin-bottom:14px}.document-viewer{display:block;width:100%;height:65vh;min-height:320px;border:1px solid var(--line);background:#fff;margin-bottom:14px}dialog[data-view="document"]{width:min(1150px,96vw)}@media(max-width:650px){.document-viewer{height:62vh;min-height:280px}}

dialog[open][data-view="document"]{height:90vh;display:flex;flex-direction:column;overflow:hidden}dialog[data-view="document"]>.section-head,dialog[data-view="document"]>.toolbar{flex-shrink:0}dialog[data-view="document"]>.document-viewer{flex:1;min-height:0;height:auto}

.precon-videos{margin-bottom:22px}.precon-videos .section-head{margin-bottom:0}.precon-videos h3{font-family:Georgia,serif;font-size:25px;font-weight:400}.precon-video-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.precon-video-list{display:grid;gap:0}.precon-video-list button{width:100%;text-align:left;justify-content:space-between;border:0;border-top:1px solid var(--line);background:transparent;border-radius:0;padding:17px 0;gap:16px}.precon-video-list small{display:block;color:var(--muted);font-size:10px;margin-bottom:5px;font-weight:400}.precon-video-list strong{display:block;font-size:13px}.precon-video-player{width:100%;aspect-ratio:16/9;border:0;display:block;background:#111;min-height:240px}.video-context{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.video-context label{max-width:65%;margin:0}.video-context select{max-width:100%}dialog[open][data-view="video"]{display:flex;flex-direction:column;max-height:90vh;overflow:auto}dialog[data-view="video"]>.section-head{flex-shrink:0}.precon-video-player{flex-shrink:0}dialog[data-view="videos"]{width:min(1150px,96vw)}@media(max-width:650px){.precon-video-groups{grid-template-columns:1fr}.video-context{align-items:stretch;flex-direction:column;gap:8px}.video-context label{max-width:100%}.precon-video-player{min-height:200px}}

.project-connections{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:20px 0}.project-connections summary{cursor:pointer;font-weight:600;margin:0}.project-connections[open] summary{margin-bottom:14px}

/* Footer shares the header surface, border, typography and horizontal alignment. */
#app{min-height:100svh;display:flex;flex-direction:column}#app>.topbar{flex-shrink:0}#app>.wrap{width:100%;flex:1}#app>.login{flex:1;min-height:calc(100svh - 190px)}.site-footer{flex-shrink:0;margin-top:auto;background:#fdfdf9;border-top:1px solid #d5d8cc;padding:30px 44px 18px;color:var(--ink);font-size:12px;letter-spacing:.25px}.site-footer-main{display:flex;align-items:center;justify-content:space-between;gap:38px;max-width:1800px;margin:0 auto}.footer-logo{display:block;flex:0 1 360px;max-width:38%;line-height:0}.footer-logo img{display:block;width:100%;height:auto}.footer-contact,.footer-location{display:flex;flex-direction:column;gap:7px}.site-footer a{color:var(--ink);text-decoration:none}.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.footer-label{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.footer-portal{color:var(--muted);font-size:11px}.site-footer-bottom{max-width:1800px;margin:22px auto 0;padding-top:13px;border-top:1px solid #e2e5da;color:var(--muted);font-size:9px;letter-spacing:.35px}@media(max-width:750px){.site-footer{padding:25px 24px 18px}.site-footer-main{flex-wrap:wrap;justify-content:flex-start;gap:24px 42px}.footer-logo{flex-basis:100%;max-width:320px;margin-right:calc(100% - 320px)}.footer-contact,.footer-location{flex:1;min-width:180px}}@media(max-width:450px){.site-footer{padding:24px 17px 16px}.site-footer-main{gap:22px}.footer-logo{max-width:290px;flex-basis:100%;margin-right:0}.footer-contact,.footer-location{min-width:100%;gap:6px}.site-footer-bottom{line-height:1.7}}

.password-control{display:block;position:relative;margin-top:7px}.password-control input{width:100%;padding-right:72px;margin:0}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);min-width:48px;min-height:30px;padding:5px 7px;border:0;background:transparent;border-radius:2px;color:var(--muted);font-size:11px;font-weight:500}.password-toggle:hover{background:#edf0e7;color:var(--ink)}.password-toggle:focus-visible{outline:2px solid #526a54;outline-offset:1px}
