.page-hero { padding:45px 0 78px; background:linear-gradient(120deg,#fafafa 35%,#fff2f2); overflow:hidden; }
.page-breadcrumb { display:flex; gap:12px; align-items:center; font-size:.8rem; color:var(--ink-soft); margin-bottom:45px; }
.page-breadcrumb a:hover { color:var(--accent); }
.page-hero h1 { font-size:clamp(2.35rem,4.2vw,4.1rem); line-height:1.1; margin-bottom:24px; }
.page-hero .hero-lead { font-size:1.08rem; }
.page-photo { position:relative; padding:0 0 22px 22px; }
.page-photo::before { content:''; position:absolute; left:0; bottom:0; width:75%; height:75%; border:1px solid #e4b9bb; border-radius:26px; }
.page-photo img { position:relative; display:block; width:100%; height:430px; object-fit:cover; border-radius:100px 24px 24px 24px; }
.page-photo.founder-photo img { object-position:50% 20%; }
.page-photo figcaption { position:relative; margin-top:15px; color:var(--ink-soft); font-size:.76rem; }
.page-jumps { border-bottom:1px solid var(--line); background:white; }
.page-jumps .container { display:flex; flex-wrap:wrap; gap:10px 28px; padding-top:22px; padding-bottom:22px; }
.page-jumps a { font-size:.8rem; font-weight:700; }
.page-jumps a:hover { color:var(--accent); }
.interior-section { padding:80px 0; scroll-margin-top:90px; }
.interior-section:nth-child(even) { background:#f8f7f5; }
.interior-section h2 { font-size:clamp(1.85rem,3vw,2.75rem); }
.section-number { color:var(--accent); font-size:.8rem; letter-spacing:.12em; font-weight:700; display:block; margin-bottom:20px; }
.editorial-copy p { font-size:1.04rem; line-height:1.85; }
.editorial-copy p:last-child { margin-bottom:0; }
.detail-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; list-style:none; padding:0; margin:0; }
.detail-list li { display:flex; align-items:flex-start; gap:13px; padding:23px; border:1px solid var(--line); border-radius:16px; background:white; }
.detail-list i { color:var(--accent); }
.statement-section { background:#171717!important; color:white; }
.statement-section p { color:#ddd; }
.statement-section blockquote { margin:0; font-family:var(--font-heading); font-size:clamp(1.5rem,2.8vw,2.5rem); line-height:1.5; font-weight:700; }
.section-image { width:100%; height:285px; object-fit:cover; border-radius:22px; margin-bottom:28px; }
.contact-panel { padding:36px; border:1px solid var(--line); border-radius:24px; background:white; box-shadow:var(--shadow-sm); }
.contact-panel label { display:block; font-size:.87rem; font-weight:700; margin-bottom:8px; }
.contact-panel .form-control,.contact-panel .form-select { padding:12px 14px; border-radius:10px; border-color:#d9d9d9; }
.contact-panel .form-control:focus,.contact-panel .form-select:focus { border-color:var(--accent); box-shadow:0 0 0 3px #bd1f2418; }
.contact-panel textarea { min-height:160px; resize:vertical; }
.contact-panel .form-check-label { font-weight:400; }
.contact-panel .form-check-input:checked { background-color:var(--accent); border-color:var(--accent); }
.enquiry-types { list-style:none; padding:0; }
.enquiry-types li { border-bottom:1px solid var(--line); padding:13px 0; color:var(--ink-soft); }
.enquiry-types i { color:var(--accent); margin-right:9px; }
.field-error { display:block; color:#97181d; font-size:.82rem; margin-top:5px; }
.form-trap { position:absolute; left:-10000px; }
.resource-actions { margin-top:25px; }
@media(min-width:992px) and (max-width:1199px) { .navbar .nav-link { padding-left:.45rem!important; padding-right:.45rem!important; font-size:.8rem; } .navbar-brand img { width:150px; } }
@media(max-width:767px) { .page-hero { padding:28px 0 50px; } .page-breadcrumb { margin-bottom:30px; } .page-photo img { height:310px; } .interior-section { padding:52px 0; } .detail-list { grid-template-columns:1fr; } .contact-panel { padding:24px; } }
