*{box-sizing:border-box}body{margin:0;background:#f4f2ec;color:#202720;font:15px/1.6 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}header{padding:24px 6%;display:flex;align-items:center;justify-content:space-between;background:#191c19;color:#e7d49b}header strong{letter-spacing:5px;font-size:19px}header small{display:block;letter-spacing:3px;font-size:9px}nav{display:flex;gap:26px;font-size:12px}nav a{text-decoration:none}main{max-width:1200px;margin:auto;padding:60px 32px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.1}h1{font-size:66px;margin:20px 0}h2{font-size:44px;margin:15px 0}h3{font-size:25px}p{color:#657063}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:10px;color:#9d8248}.hero{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;align-items:center;margin-bottom:55px}.hero img{width:100%;height:410px;object-fit:cover;border-radius:2px 90px 2px 2px}.btn{display:inline-block;padding:13px 22px;border:1px solid #293a2d;background:#293a2d;color:#fff;text-decoration:none;font-size:12px;letter-spacing:.5px}.secondary{background:transparent;color:#293a2d}.offers{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d4d8cb;border-bottom:1px solid #d4d8cb;padding:25px 0;margin-bottom:70px}.offers div{text-align:center;border-right:1px solid #d4d8cb}.offers div:last-child{border:0}.offers strong{display:block;font:27px Georgia}.offers span{font-size:11px;color:#6b756b}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tile{aspect-ratio:1;text-align:left;border:1px solid #d9ddd1;background:#fafbf6;padding:28px;display:flex;flex-direction:column;position:relative;transition:.2s}.tile:hover{transform:translateY(-4px);border-color:#9f884e;box-shadow:0 12px 30px #24332512}.tile .num{font-size:11px;color:#9d8248;letter-spacing:2px}.tile svg{width:52px;height:52px;stroke:#9d8248;fill:none;stroke-width:1.3;margin:22px 0}.tile h3{margin:auto 0 10px}.tile p{font-size:12px;margin:0 0 16px}.tile .arrow{position:absolute;right:28px;top:25px;font-size:23px}.tile .meta{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#657063}.contact{margin-top:70px;padding:40px;background:#293a2d;color:#fff;display:flex;justify-content:space-between;align-items:center}.contact p{color:#ccd5c9}.contact h2{font-size:35px}.contact .btn{background:#e2c881;color:#192019;border:0}footer{font-size:11px;color:#778073;padding:25px 6%;border-top:1px solid #ddd}dialog{width:min(900px,95vw);max-height:88vh;border:0;padding:35px;background:#f9faf6;color:#202720;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#142017aa;backdrop-filter:blur(5px)}.close{float:right;border:0;background:transparent;font-size:30px}.rows{display:grid;gap:12px;margin-top:25px}.asset{background:#fff;border:1px solid #dfe2d8;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:15px}.asset p{margin:4px 0;font-size:12px}.asset a{font-size:12px;margin-left:12px}.preview-img{max-width:100%;max-height:220px;object-fit:contain}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters input,.filters select{padding:10px;border:1px solid #ccc;background:#fff}.note{font-size:11px;color:#6b756b}.empty{padding:20px;background:#eee}input,textarea{max-width:100%}:focus-visible{outline:3px solid #a68a45;outline-offset:3px}@media(max-width:750px){header{padding:20px}nav a:not(:last-child){display:none}main{padding:30px 20px}.hero{grid-template-columns:1fr;gap:20px}.hero h1{font-size:48px}.hero img{height:270px}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.tile{padding:18px;min-height:230px;aspect-ratio:auto}.tile svg{width:35px;height:35px;margin:18px 0}.tile h3{font-size:23px}.tile .arrow{right:15px;top:15px}.offers strong{font-size:21px}.offers{margin-bottom:40px}h2{font-size:36px}.contact{display:block}.asset{display:block}.asset a{display:inline-block;margin:10px 15px 0 0}.section-head{display:block}}@media print{header,nav,.noprint,footer{display:none}body{background:white}main{padding:0}.btn{display:none}}
/* Image-led resource collection */
.tile{isolation:isolate;overflow:hidden;justify-content:center;align-items:center;text-align:center;padding:25px;border:0;aspect-ratio:1;min-height:0;background:#20251f;color:white}
.tile-image{position:absolute;inset:0;z-index:-2;background-repeat:no-repeat;filter:grayscale(.35);transition:transform .4s,filter .4s}
.tile:after{content:"";position:absolute;inset:0;background:rgba(12,19,15,.56);z-index:-1;transition:background .3s}
.tile h3{font-size:clamp(23px,2.5vw,33px);line-height:1.15;margin:0;text-shadow:0 2px 18px #0008;color:white;max-width:95%}
.tile:hover{transform:translateY(-3px)}.tile:hover:after{background:rgba(12,19,15,.42)}.tile:hover .tile-image{transform:scale(1.035);filter:grayscale(.1)}
.tile[data-category="brochure"] .tile-image,.tile[data-category="marketing"] .tile-image{background-image:url('assets/exterior.png');background-size:cover;background-position:center}
.tile[data-category="plans"] .tile-image,.tile[data-category="worksheet"] .tile-image{background-image:url('assets/bedroom-sheet.png');background-size:auto 145%;background-position:50% 100%}
.tile[data-category="renderings"] .tile-image{background-image:url('assets/interiors-sheet.png');background-size:auto 205%;background-position:100% 0}
.tile[data-category="invite"] .tile-image{background-image:url('assets/interiors-sheet.png');background-size:auto 205%;background-position:100% 100%}
@media(max-width:750px){.tile{aspect-ratio:1;min-height:0;padding:16px}.tile h3{font-size:23px}}
/* Larger branding, compact hero and legible promotion hierarchy */
[hidden]{display:none!important}header{padding:22px 5%}header strong{font-family:Georgia,serif;font-weight:400;font-size:48px;letter-spacing:4px}header small{font-size:14px;letter-spacing:4px;margin-top:4px}nav{font-size:16px;gap:28px}main{padding-top:36px}.hero{gap:35px;margin-bottom:32px}.hero h1{font-size:52px}.hero .eyebrow{font-size:13px;letter-spacing:1.5px}.hero p{font-size:17px}.hero img{height:350px;border-radius:0}.offers{padding:28px 0;margin-bottom:45px}.offers strong{font-size:36px}.offers span{display:block;font-size:18px;font-weight:600;line-height:1.35;margin:10px auto 0;max-width:280px;color:#354335}.section-head p{font-size:16px}.back-link{display:inline-block;font-size:17px;text-decoration:none;margin-bottom:24px}.gallery-intro{font-size:18px;max-width:760px}.gallery-controls{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:28px 0}.gallery-controls input,.gallery-controls select{padding:13px;border:1px solid #aab1a3;background:white;font-size:16px}.btn{font-size:16px}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.resource-card{background:white;border:1px solid #d7d9cf;overflow:hidden}.resource-visual{padding:15px;border:0;background:#eeeee7;display:block;width:100%;height:290px;cursor:zoom-in}.resource-visual img{width:100%;height:100%;object-fit:contain}.resource-info{padding:22px}.resource-info h3{font-size:28px;margin:0 0 12px}.resource-info p{font-size:16px;min-height:48px;margin:0 0 20px}.card-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.card-actions button,.card-actions a{border:0;background:none;padding:0;color:#293e2e;font-size:16px;text-decoration:underline}.document-symbol{font:100px Georgia;color:#ac9157}.renderings{grid-template-columns:repeat(2,minmax(0,1fr))}.renderings .resource-visual{height:320px;padding:0;background:#20251f}dialog{width:min(1100px,96vw);padding:25px}dialog .close{font-size:36px;min-width:48px;min-height:48px}#preview-body img{display:block;max-width:100%;max-height:65vh;object-fit:contain;margin:0 auto 20px}#preview-body iframe{width:100%;height:62vh;border:0;background:white;margin-bottom:18px}#preview-title{font-size:32px}
@media(max-width:750px){header strong{font-size:36px}header small{font-size:12px}nav{font-size:14px}main{padding:28px 20px}.hero h1{font-size:42px}.hero img{height:280px}.offers{gap:10px}.offers strong{font-size:28px}.offers span{font-size:15px}.resource-grid,.renderings{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.resource-info{padding:15px}.resource-info h3{font-size:24px}.resource-visual{height:230px}.renderings .resource-visual{height:230px}}
@media(max-width:480px){.resource-grid,.renderings{grid-template-columns:1fr}.offers{grid-template-columns:1fr;gap:20px}.offers div{border:0}.offers strong{font-size:34px}.offers span{font-size:19px}nav{display:none}.resource-visual{height:320px}}
/* Transparent logo previews */
.marketing .resource-visual,#preview-body.logo-preview {background-color:#59605a;background-image:linear-gradient(45deg,#ffffff0c 25%,transparent 25%),linear-gradient(-45deg,#ffffff0c 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ffffff0c 75%),linear-gradient(-45deg,transparent 75%,#ffffff0c 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}
.marketing .resource-visual img{padding:30px;max-height:280px;object-fit:contain;box-sizing:border-box}
#preview-body.logo-preview img{max-height:65vh;padding:24px;box-sizing:border-box;object-fit:contain}

header .brand{text-align:center;flex-shrink:0}header .brand strong{display:block}header .brand small{text-align:center}

.contact[data-contact-open]{cursor:pointer;gap:25px}.contact .btn{background:transparent;border:1px solid #d8bb72;color:#e8d195;white-space:nowrap}.contact:hover .btn{background:#d8bb72;color:#192019}.nav-contact{border:0;background:none;color:inherit;padding:0;font:inherit}#contact-dialog{width:min(640px,94vw);padding:32px}#contact-dialog h2{font-size:36px;margin-bottom:26px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}#contact-dialog label{display:block;font-size:14px;margin-bottom:18px}#contact-dialog input,#contact-dialog textarea{display:block;width:100%;padding:11px;margin-top:6px;border:1px solid #b6bbaa;background:white;border-radius:0}#contact-dialog .btn{border:1px solid #c3a25b;min-width:110px}#contact-dialog .btn:disabled{opacity:.6;cursor:wait}.contact-status:empty{display:none}@media(max-width:540px){.contact-fields{grid-template-columns:1fr;gap:0}#contact-dialog{padding:22px}.contact .btn{margin-top:15px}}

#contact-dialog input[type="file"]{border:1px dashed #b89955;padding:12px;background:#f5f2e9;font-size:13px}#contact-dialog input[type="file"]::file-selector-button{border:1px solid #b89955;background:#293a2d;color:#fff;padding:10px 14px;margin-right:12px;cursor:pointer;font:inherit}#contact-dialog .attachment-label{margin-bottom:4px}#attachment-help{margin:0 0 20px}
