.site-notice{width:min(1400px,calc(100% - 48px));margin:18px auto 0;padding:14px 18px;border-radius:14px;font-size:.8rem}
.site-notice.success{background:#e4efe6;color:#34613c}.site-notice.error{background:#f3dede;color:#7f4040}

.enquiry-modal{position:fixed;inset:0;z-index:100;opacity:0;pointer-events:none;transition:opacity .24s ease}
.enquiry-modal.open{opacity:1;pointer-events:auto}
.enquiry-modal-backdrop{position:absolute;inset:0;background:rgba(20,18,16,.28);backdrop-filter:blur(7px)}
.enquiry-modal-panel{position:absolute;right:18px;top:18px;bottom:18px;width:min(560px,calc(100vw - 36px));padding:38px;overflow:auto;border:1px solid rgba(255,255,255,.7);border-radius:32px;background:rgba(251,250,247,.97);box-shadow:0 28px 80px rgba(0,0,0,.18);transform:translateX(30px);transition:transform .26s ease}
.enquiry-modal.open .enquiry-modal-panel{transform:translateX(0)}
.enquiry-close{position:absolute;right:22px;top:19px;width:38px;height:38px;border:1px solid var(--border);border-radius:50%;background:#fff;font-size:1.3rem}
.enquiry-modal-panel h2{margin:0 0 12px;font-size:3.2rem}.enquiry-modal-copy{max-width:430px}
.enquiry-form{margin-top:26px;display:grid;gap:14px}.enquiry-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.enquiry-form label,.contact-enquiry-form label{display:flex;flex-direction:column;gap:7px}
.enquiry-form label>span,.contact-enquiry-form label>span{font-size:.67rem;font-weight:600;color:#756f68}
.enquiry-form input,.enquiry-form textarea,.contact-enquiry-form input,.contact-enquiry-form textarea{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:#fff;color:var(--text);outline:0}
.enquiry-form textarea,.contact-enquiry-form textarea{resize:vertical}.enquiry-submit{width:100%;margin-top:4px}
.honeypot-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* ABOUT */
.about-page{padding-bottom:90px}.about-hero{padding:100px 0 70px}
.about-hero-grid{display:grid;grid-template-columns:1.2fr .7fr;gap:80px;align-items:end}
.about-hero h1{font-size:clamp(4.8rem,8vw,8.8rem);line-height:.84}.about-hero-copy{padding-bottom:16px}.about-hero-copy p{font-size:1.05rem}
.about-visual-section{padding:20px 0 120px}.about-visual{position:relative;min-height:580px;overflow:hidden;border-radius:36px;background:linear-gradient(145deg,#f3eee7,#e7eee9)}
.about-shape{position:absolute;border-radius:50%;opacity:.75}.shape-one{width:330px;height:330px;left:6%;top:8%;background:#f0deda}.shape-two{width:400px;height:400px;right:4%;bottom:-12%;background:#dbe9e5}
.about-card-stack{position:absolute;inset:0;padding:70px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:end}
.about-card-stack article{min-height:260px;padding:26px;border:1px solid rgba(255,255,255,.75);border-radius:28px;background:rgba(255,255,255,.62);backdrop-filter:blur(14px);display:flex;flex-direction:column;justify-content:flex-end}
.about-card-stack article:nth-child(2){transform:translateY(-55px)}.about-card-stack article>span{margin-bottom:auto;color:#8b847d;font-size:.68rem}
.about-card-stack h3{margin:0 0 8px;font-family:var(--serif);font-size:2rem;font-weight:500}.about-card-stack p{margin:0;font-size:.78rem}
.about-story-section{padding:40px 0 120px}.about-story-grid{display:grid;grid-template-columns:.85fr 1fr;gap:90px}.about-story-grid h2{font-size:clamp(3rem,4.8vw,5.6rem)}
.about-story-text>p{font-size:1.05rem}.about-points{margin-top:40px;border-top:1px solid var(--border)}
.about-points div{padding:19px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:60px 1fr;align-items:center}.about-points strong{font-size:.72rem}.about-points span{font-size:.85rem}
.about-cta{padding:70px;border-radius:34px;background:linear-gradient(105deg,#f6f1e9,#f2deda,#e2ece7)}.about-cta h2{margin-bottom:12px}.about-cta p{max-width:630px}

/* CONTACT */
.contact-page{padding-bottom:100px}.contact-hero{padding:100px 0 90px}
.contact-hero-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:90px;align-items:end}.contact-hero h1{margin-bottom:28px;font-size:clamp(4.5rem,7vw,8rem);line-height:.85}.contact-hero p{max-width:650px;font-size:1.02rem}
.contact-direct{border-top:1px solid var(--border)}.contact-direct>a,.contact-direct>div{min-height:95px;padding:20px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:90px 1fr 30px;align-items:center;gap:18px}
.contact-direct span{color:#8a847d;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}.contact-direct strong{font-size:.87rem;word-break:break-word}.contact-direct i{font-style:normal}
.contact-form-section{padding:90px 0;background:#f3efe9}.contact-form-grid{display:grid;grid-template-columns:.72fr 1.2fr;gap:80px}.contact-form-intro h2{font-size:clamp(3rem,4.5vw,5rem)}
.contact-enquiry-form{padding:28px;border-radius:28px;background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-enquiry-form .full,.contact-enquiry-form .contact-submit{grid-column:1/-1}.contact-submit{width:100%}.contact-notice{width:100%;margin:0 0 16px}

/* ADMIN ENQUIRIES */
.enquiry-admin-stats{margin-bottom:20px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.enquiry-admin-stats article{min-height:105px;padding:18px;border:1px solid #e5e1da;border-radius:16px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}
.enquiry-admin-stats small{color:#7f7973;font-size:.64rem}.enquiry-admin-stats strong{font-family:"Playfair Display",serif;font-size:2rem;font-weight:500}
.admin-enquiry-filters{margin-bottom:20px;display:grid;grid-template-columns:1fr 180px auto;gap:9px}.admin-enquiry-filters input,.admin-enquiry-filters select{min-height:42px;padding:0 12px;border:1px solid #e5e1da;border-radius:11px;background:#fbfaf8;outline:0;font-size:.74rem}
.enquiry-table td small{display:block;margin-top:4px;color:#958e87;font-size:.6rem}
.enquiry-status{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.62rem;font-weight:700}.status-new{background:#f1dfd9;color:#7a483c}.status-in-discussion{background:#e7e8f2;color:#4f577b}.status-quote-sent{background:#e3ece5;color:#3c6544}.status-completed{background:#dcecdf;color:#35623d}.status-archived{background:#ece8e3;color:#716a63}
.enquiry-detail-layout{display:grid;grid-template-columns:1.25fr .7fr;gap:18px}.enquiry-detail-card h2,.enquiry-manage-card h2{margin:0 0 20px;font-family:"Playfair Display",serif;font-size:1.7rem;font-weight:500}
.enquiry-detail-list{margin:0}.enquiry-detail-list div{padding:13px 0;border-bottom:1px solid #eeeae4;display:grid;grid-template-columns:130px 1fr;gap:20px}.enquiry-detail-list dt{color:#8d867e;font-size:.65rem}.enquiry-detail-list dd{margin:0;font-size:.77rem}
.enquiry-copy-block{margin-top:25px}.enquiry-copy-block>span{display:block;margin-bottom:7px;color:#8d867e;font-size:.65rem}.enquiry-copy-block p{margin:0;padding:15px;border-radius:12px;background:#f8f6f3;color:#5c5752;font-size:.75rem;white-space:pre-wrap}
.enquiry-reply-actions{margin-top:28px;display:flex;gap:8px;flex-wrap:wrap}.enquiry-manage-card label{margin-bottom:15px;display:flex;flex-direction:column;gap:7px}.enquiry-manage-card label span{color:#77716b;font-size:.67rem;font-weight:600}
.enquiry-manage-card select,.enquiry-manage-card textarea{width:100%;padding:11px 12px;border:1px solid #e5e1da;border-radius:11px;background:#fbfaf8}.enquiry-manage-card .admin-primary-button{width:100%}

/* BRANDING */
.admin-save-notice{margin-bottom:18px;padding:13px 16px;border-radius:12px;background:#e3eee5;color:#35613d;font-size:.72rem}
.branding-form{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.branding-form-main{display:grid;gap:20px}.branding-preview-column{position:sticky;top:88px}
.branding-section h2{margin:0 0 22px;font-family:"Playfair Display",serif;font-size:1.6rem;font-weight:500}
.branding-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.branding-upload{padding:12px;border:1px solid #e5e1da;border-radius:14px;display:flex;flex-direction:column;gap:9px;cursor:pointer}
.branding-upload>span{font-size:.66rem;font-weight:600}.branding-upload>div{height:100px;padding:14px;border-radius:10px;background:#f5f2ed;display:grid;place-items:center}.branding-upload img{max-width:100%;max-height:70px;object-fit:contain}.branding-upload input{font-size:.62rem}.branding-upload small{color:#8b857f;font-size:.6rem}
.favicon-preview strong{width:46px;height:46px;border-radius:12px;background:#111;color:#fff;display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:1.4rem}
.branding-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.branding-color-grid label{padding:11px;border:1px solid #e5e1da;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.branding-color-grid span{font-size:.65rem}.branding-color-grid input{width:42px;height:32px;padding:0;border:0;background:transparent}
.radius-control{margin-top:22px;display:flex;flex-direction:column;gap:9px}.radius-control span{font-size:.67rem}
.branding-text-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.branding-text-grid .full{grid-column:1/-1}.branding-text-grid label{display:flex;flex-direction:column;gap:7px}.branding-text-grid span{font-size:.66rem;font-weight:600;color:#756f69}
.branding-text-grid input,.branding-text-grid textarea{width:100%;padding:11px 12px;border:1px solid #e5e1da;border-radius:10px;background:#fbfaf8;outline:0}
.branding-preview-card>p{margin-top:0;font-size:.68rem;color:#77716b}.mini-site-preview{overflow:hidden;border:1px solid #e5e1da;border-radius:var(--preview-radius);background:var(--preview-bg);color:var(--preview-text)}
.mini-preview-header{height:52px;padding:9px 12px;border-bottom:1px solid rgba(0,0,0,.07);display:flex;align-items:center;gap:8px}.mini-preview-header img{width:70px;height:30px;object-fit:contain;object-position:left center}.mini-preview-header span{width:35px;height:5px;margin-left:auto;border-radius:99px;background:#d8d2cb}.mini-preview-header span:last-child{width:25px;margin-left:0}
.mini-preview-hero{min-height:240px;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.mini-preview-hero small,.mini-preview-hero strong{display:block}.mini-preview-hero small{font-family:"Playfair Display",serif;font-size:1.5rem}.mini-preview-hero strong{margin:7px 0 14px;font-size:.7rem}
.mini-preview-hero button{padding:8px 13px;border:0;border-radius:99px;background:var(--preview-button);color:#fff;font-size:.6rem}.mini-preview-hero i{width:100%;height:140px;border-radius:var(--preview-radius);background:radial-gradient(circle at 30% 35%,var(--preview-accent),transparent 40%),linear-gradient(145deg,#f4efe8,#dfd4c8)}
.branding-save{width:100%;margin-top:16px}

@media(max-width:1050px){
  .enquiry-admin-stats{grid-template-columns:repeat(3,1fr)}
  .enquiry-detail-layout{grid-template-columns:1fr}
  .branding-form{grid-template-columns:1fr}
  .branding-preview-column{position:static}
}
@media(max-width:760px){
  .site-notice{width:calc(100% - 28px)}
  .enquiry-modal-panel{left:0;right:0;top:auto;bottom:0;width:100%;max-height:92vh;padding:28px 18px 24px;border-radius:28px 28px 0 0;transform:translateY(40px)}
  .enquiry-modal.open .enquiry-modal-panel{transform:translateY(0)}.enquiry-modal-panel h2{font-size:2.5rem}.enquiry-form-row{grid-template-columns:1fr}
  .about-hero{padding:60px 0 50px}.about-hero-grid,.about-story-grid,.contact-hero-grid,.contact-form-grid{grid-template-columns:1fr;gap:40px}.about-hero h1,.contact-hero h1{font-size:clamp(4rem,17vw,5.7rem)}
  .about-visual{min-height:760px;border-radius:28px}.about-card-stack{padding:28px;grid-template-columns:1fr;gap:12px;align-items:stretch}.about-card-stack article{min-height:190px}.about-card-stack article:nth-child(2){transform:none}
  .about-story-section{padding-bottom:75px}.about-cta{padding:40px 24px;border-radius:27px}
  .contact-hero{padding:60px 0}.contact-direct>a,.contact-direct>div{grid-template-columns:70px 1fr 20px}.contact-form-section{padding:65px 0}
  .contact-enquiry-form{padding:18px;grid-template-columns:1fr}.contact-enquiry-form .full,.contact-enquiry-form .contact-submit{grid-column:auto}
  .enquiry-admin-stats{grid-template-columns:1fr 1fr}.admin-enquiry-filters{grid-template-columns:1fr}
  .branding-upload-grid,.branding-color-grid,.branding-text-grid{grid-template-columns:1fr}.branding-text-grid .full{grid-column:auto}
}


/* STAGE 5 public page refinements */
.about-visual{
  background:linear-gradient(145deg,#edf2ed,#dbe6dd);
}
.shape-one{background:#daf1de}
.shape-two{background:#8eb69b}
.about-card-stack article{
  border-color:rgba(255,255,255,.68);
  background:rgba(250,248,243,.72);
}
.about-cta{
  background:linear-gradient(105deg,#f6f3ed,#daf1de,#b9d2bf);
}
.contact-form-section{background:#e8efe9}
.contact-enquiry-form{border:1px solid rgba(5,31,32,.08)}
.contact-enquiry-form input,
.contact-enquiry-form textarea,
.enquiry-form input,
.enquiry-form textarea{
  border-color:rgba(5,31,32,.12);
}
.contact-local-copy{font-size:.84rem}

.branding-help{
  margin:-12px 0 18px;
  color:#8a837c;
  font-size:.68rem;
}

@media(max-width:760px){
  .about-page{padding-bottom:58px}
  .about-hero{padding:42px 0 35px}
  .about-hero-grid{gap:25px}
  .about-hero h1{font-size:clamp(3rem,13vw,4rem);line-height:.9}
  .about-hero-copy p{font-size:.78rem}
  .about-visual-section{padding:10px 0 65px}
  .about-visual{min-height:590px;border-radius:22px}
  .about-card-stack{padding:18px;gap:9px}
  .about-card-stack article{
    min-height:155px;
    padding:17px;
    border-radius:18px;
  }
  .about-card-stack h3{font-size:1.45rem}
  .about-card-stack p{font-size:.66rem}
  .about-story-section{padding:20px 0 64px}
  .about-story-grid{gap:26px}
  .about-story-grid h2{font-size:2.6rem}
  .about-story-text>p{font-size:.78rem}
  .about-points div{padding:14px 0;grid-template-columns:42px 1fr}
  .about-points span{font-size:.72rem}

  .contact-page{padding-bottom:65px}
  .contact-hero{padding:42px 0 45px}
  .contact-hero-grid{gap:28px}
  .contact-hero h1{margin-bottom:18px;font-size:clamp(3rem,13vw,4rem);line-height:.9}
  .contact-hero p{font-size:.78rem}
  .contact-direct>a,.contact-direct>div{
    min-height:72px;
    padding:13px 0;
    grid-template-columns:60px 1fr 18px;
    gap:10px;
  }
  .contact-direct span{font-size:.53rem}
  .contact-direct strong{font-size:.7rem}
  .contact-form-section{padding:50px 0}
  .contact-form-grid{gap:27px}
  .contact-form-intro h2{font-size:2.55rem}
  .contact-form-intro p{font-size:.76rem}
  .contact-enquiry-form{padding:14px;border-radius:18px;gap:11px}
  .contact-enquiry-form label>span{font-size:.58rem}
  .contact-enquiry-form input,.contact-enquiry-form textarea{
    padding:11px 12px;
    border-radius:10px;
    font-size:.72rem;
  }

  .enquiry-modal-panel{padding:24px 16px 20px}
  .enquiry-modal-panel h2{font-size:2.2rem}
  .enquiry-modal-copy{font-size:.75rem}
}
