@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');:root{--navy:#122438;--gold:#b38a51;--paper:#f7f5f0;--ink:#243243}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.75;background:#fff}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:auto;padding:0 28px}.top{background:var(--navy);color:#d9e0e6;font-size:12px;padding:7px 0}.top a{margin-right:18px}.head{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8e5df}.bar{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:84px}.brand{font-family:'Playfair Display',Georgia,serif;font-size:26px;color:var(--navy);line-height:1.1}.brand small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:3px;color:var(--gold);margin-top:7px}nav{display:flex;align-items:center;gap:22px}nav a,nav summary{font-size:13px;font-weight:600;cursor:pointer}nav a:hover,nav summary:hover{color:var(--gold)}details{position:relative}details>div{position:absolute;top:30px;left:0;background:white;box-shadow:0 15px 40px #12243820;width:255px;padding:14px;display:grid;gap:10px;border-top:2px solid var(--gold)}.hero{background:linear-gradient(110deg,#102338f5,#102338c9),radial-gradient(circle at 80% 20%,#b38a51,#132538);color:white;padding:110px 0 125px}.eyebrow{color:var(--gold);text-transform:uppercase;font-size:12px;letter-spacing:3px;font-weight:700}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.22;color:var(--navy)}.hero h1{font-size:clamp(40px,5.3vw,70px);color:white;max-width:850px;margin:20px 0}.hero p{font-size:17px;color:#d6dee5;max-width:690px}.btn{display:inline-block;background:var(--gold);color:#fff;padding:13px 25px;font-weight:600;font-size:13px;margin-top:24px}.btn.alt{background:transparent;border:1px solid var(--gold);color:var(--navy)}section{padding:78px 0}.cream{background:var(--paper)}h2{font-size:clamp(31px,3.5vw,46px);margin:12px 0 25px}.intro{max-width:790px;font-size:17px;color:#596574}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid #e8e7e2;padding:30px;min-width:0}.card h3{font-size:24px}.card p{font-size:14px;color:#62707c}.num{color:var(--gold);font-size:12px;letter-spacing:2px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.stat{font-family:'Playfair Display',serif;font-size:55px;color:var(--gold)}.pagehero{background:var(--navy);padding:72px 0;color:#fff}.pagehero h1{font-size:52px;color:#fff;margin:10px 0}.pagehero p{max-width:750px;color:#d2dae2}.portrait{width:100%;height:245px;object-fit:contain;object-position:center;background:#f1f1ee}.person .card{height:100%}.person h3{margin:17px 0 4px;font-size:23px}.degree{color:var(--gold);font-size:12px;font-weight:700}.clientgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.client{border:1px solid #e9e6e0;padding:18px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:160px}.client img{width:100%;height:75px;object-fit:contain}.client span{font-size:12px;line-height:1.4}.foot{background:var(--navy);color:#c5ced8;padding:50px 0 22px}.foot h3{color:white}.foot a{color:#c5ced8}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.fine{border-top:1px solid #405165;margin-top:36px;padding-top:15px;font-size:11px}.notice{font-size:12px;color:#66717c;border-left:3px solid var(--gold);padding:12px 18px;background:#f8f6f1}.contactcard{background:var(--paper);padding:30px}ul.clean{padding-left:18px}ul.clean li{margin:10px 0}@media(max-width:850px){.bar{display:block;padding-top:18px;padding-bottom:18px}nav{flex-wrap:wrap;gap:12px;margin-top:20px}.grid,.split{grid-template-columns:1fr 1fr}.clientgrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:550px){.grid,.split,.footgrid{grid-template-columns:1fr}.clientgrid{grid-template-columns:repeat(2,1fr)}.hero{padding:75px 0}.pagehero h1{font-size:38px}section{padding:50px 0}nav{gap:10px}nav a,nav summary{font-size:12px}}
/* Refined identity, navigation and footer */
.head{box-shadow:0 3px 18px rgba(18,36,56,.045)}
.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:205px;max-width:100%;height:auto;display:block}
.top .wrap{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.header-social{margin-left:auto;display:flex;gap:9px;align-items:center}.social-pending,.footer-social span{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid currentColor;border-radius:3px;font-weight:700;font-size:12px;opacity:.65;cursor:default}
.foot{background:#172638;color:#d0d5db;padding:60px 0 20px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1.35fr .8fr;gap:35px}.footer-column h3{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:1.1px;text-transform:uppercase;font-weight:700;color:#fff;margin:0 0 20px}.footer-column p{font-size:13px;line-height:1.9;margin:0 0 15px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{font-size:13px;line-height:1.6}.footer-links a:before{content:'›';color:var(--gold);margin-right:9px}.foot a:hover{color:#d9b67e}.footer-social{display:flex;gap:10px}.social-note{font-size:11px!important;opacity:.75}.fine{margin-top:45px}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.team-grid .card{padding:16px;height:100%;border-radius:3px;box-shadow:0 7px 22px rgba(20,35,50,.035)}.team-grid .portrait{height:190px;object-fit:contain;background:#f4f4f2}.team-grid .person h3{font-size:19px;margin:13px 0 6px}.team-grid .degree{font-size:11px;line-height:1.5;min-height:34px}.bio-details{margin-top:12px;border-top:1px solid #e8e5df;padding-top:10px}.bio-details summary{font-size:12px;color:#916c3c;font-weight:700;cursor:pointer}.bio-details p{font-size:12px;line-height:1.75;margin:12px 0 0}.founder-portrait{height:340px;max-width:340px;justify-self:center}
@media(max-width:1050px){.footer-main{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bar{gap:15px}nav{gap:12px}}
@media(max-width:700px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand img{width:180px}.header-social{margin-left:0}}
@media(max-width:480px){.footer-main{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr 1fr;gap:10px}.team-grid .card{padding:11px}.team-grid .portrait{height:155px}.team-grid .person h3{font-size:16px}.team-grid .degree{font-size:10px}.top .wrap{gap:8px}.header-social{width:100%}}

/* Header contacts and editorial image carousel */
.top{padding:10px 0}.top .wrap{gap:10px 19px}.top .contact-item{margin:0;white-space:nowrap;font-size:12px}.top .contact-item:hover{color:#e2be82}
.hero-slider{position:relative;background:#0c2032;color:white;overflow:hidden;height:590px}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s ease;background-image:linear-gradient(90deg,rgba(9,26,42,.96) 0%,rgba(9,26,42,.88) 40%,rgba(9,26,42,.40) 100%),var(--slide-image);background-position:center;background-size:cover;padding:60px 0}.hero-slide.active{opacity:1;visibility:visible;z-index:1}.slide-content{width:100%;position:relative}.hero-slide h1{font-size:clamp(36px,4.7vw,65px);line-height:1.13;color:#fff;max-width:840px;margin:18px 0 22px}.hero-slide p{font-size:17px;line-height:1.8;max-width:690px;color:#e1e6eb}.slider-controls{position:absolute;left:0;right:0;bottom:28px;z-index:3;display:flex;gap:11px;align-items:center}.slider-controls button{cursor:pointer;border:1px solid #ffffff80;color:#fff;background:#132b3b80}.slide-dot{width:29px;height:4px;padding:0;border:0!important;background:#ffffff65!important}.slide-dot.selected{background:#c69a5a!important}.slide-prev{margin-left:auto}.slide-prev,.slide-next{width:36px;height:36px;border-radius:50%}.hero-slide .btn{margin-top:19px}.header-social{margin-left:auto}
@media(max-width:800px){.hero-slider{height:560px}.hero-slide{background-image:linear-gradient(90deg,rgba(9,26,42,.95),rgba(9,26,42,.66)),var(--slide-image)}.top .wrap{justify-content:center}.header-social{margin-left:0}}
@media(max-width:520px){.hero-slider{height:600px}.hero-slide{padding:50px 0 70px}.hero-slide p{font-size:14px}.hero-slide h1{font-size:36px}.top .contact-item{font-size:11px}.slider-controls{bottom:18px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Contact enquiry form */
.enquiry-form{display:grid;gap:15px;margin-top:22px}.form-field{display:grid;gap:7px}.form-field label{font-weight:600;font-size:.92rem}.form-field input,.form-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbd1d8;border-radius:5px;padding:12px 13px;background:#fff;color:#172334;font:inherit}.form-field input:focus,.form-field textarea:focus{outline:2px solid #b59b63;outline-offset:1px}.form-field textarea{resize:vertical}.form-note{font-size:.85rem;line-height:1.55;opacity:.8}.form-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.enquiry-form button{border:0;cursor:pointer;justify-self:start}.form-success,.form-error{padding:13px 16px;border-radius:4px;margin:10px 0}.form-success{background:#eaf5ed;color:#1a5630}.form-error{background:#fff0ed;color:#922f21}

/* Team page redesign: restrained circular portraits, clear hierarchy */
.team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px;margin-top:34px}
.team-grid .team-profile-card{padding:26px 18px 22px;text-align:center;border:1px solid #e9e4dc;border-radius:12px;box-shadow:0 8px 28px rgba(18,36,56,.055);transition:transform .2s ease,box-shadow .2s ease}
.team-grid .team-profile-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(18,36,56,.10)}
.team-photo-ring{width:166px;height:166px;max-width:100%;margin:0 auto 18px;border:4px solid #fff;outline:1px solid #d6c3a5;border-radius:50%;overflow:hidden;background:#e9e8e5;box-shadow:0 4px 15px #12243818}
.team-grid .team-photo-ring img.team-round{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 22%;background:#e9e8e5}
.team-grid .person h3{font-size:19px;margin:10px 0 7px;min-height:47px;display:flex;align-items:center;justify-content:center}
.team-grid .degree{min-height:43px;font-size:11px;line-height:1.55;color:#8c6a3d}
.team-grid .bio-details{margin-top:16px;padding-top:13px;text-align:left}
.team-grid .bio-details summary{text-align:center;list-style:none;cursor:pointer;letter-spacing:.03em}
.team-grid .bio-details summary::-webkit-details-marker{display:none}
.team-grid .bio-details summary:after{content:'  +';font-size:17px}
.team-grid .bio-details[open] summary:after{content:'  −'}
.team-grid .bio-details p{text-align:left;line-height:1.7;font-size:12px;color:#4d5a66}
.founder-portrait.team-round{width:285px;height:285px;max-width:100%;border-radius:50%;object-fit:cover;object-position:center 20%;border:7px solid #fff;outline:1px solid #cbb48e;box-shadow:0 15px 35px #1224381a;background:#e9e8e5}
@media(max-width:1050px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.team-photo-ring{width:140px;height:140px}}
@media(max-width:480px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.team-grid .team-profile-card{padding:17px 10px}.team-photo-ring{width:116px;height:116px}.team-grid .person h3{font-size:16px;min-height:40px}.team-grid .degree{font-size:10px;min-height:54px}.founder-portrait.team-round{width:240px;height:240px}}
@media(prefers-reduced-motion:reduce){.team-grid .team-profile-card{transition:none}}

/* 2026 polish pass: consistent editorial interior pages */
.pagehero-art{position:relative;isolation:isolate;overflow:hidden;text-align:center;padding:90px 0 82px;background:#122438;color:#fff}
.pagehero-art:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(12,30,48,.95),rgba(12,30,48,.83)),var(--banner-image) center/cover no-repeat}
.pagehero-art:after{content:"⚖";position:absolute;right:7%;top:3%;font-size:190px;color:#fff;opacity:.045;z-index:-1;pointer-events:none}
.pagehero-art h1{font-size:clamp(36px,4.4vw,60px);margin:12px auto 14px;line-height:1.2}
.pagehero-art p{margin:0 auto 17px;max-width:750px;font-size:16px;line-height:1.7}
.back-home{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d6b37d85;color:#f4dfbd;padding:8px 17px;border-radius:30px;font-size:12px;margin-top:13px;transition:background .25s,color .25s,transform .25s}
.back-home:hover{background:#b38a51;color:#122438;transform:translateY(-2px)}
.founder-full-photo{display:block;width:min(100%,330px);height:auto;max-height:460px;object-fit:contain;object-position:center;margin:auto;border:8px solid #fff;border-radius:22px;outline:1px solid #d7c4a5;box-shadow:0 18px 45px #12243822;background:#f3f1ec}
.card,.client,.contactcard{border-radius:15px;box-shadow:0 8px 25px rgba(18,36,56,.075);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.card:hover,.client:hover,.contactcard:hover{transform:translateY(-4px);box-shadow:0 17px 35px rgba(18,36,56,.13);border-color:#d5c1a0}
.client{background:#fff;border:1px solid #ece6dc;border-radius:16px;padding:24px 16px;min-height:185px}
.client img{height:85px;max-width:100%;object-fit:contain}
.btn,.enquiry-form button,.slide-prev,.slide-next,nav a,nav summary,.footer-links a{transition:background-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}
.btn{border-radius:8px;box-shadow:0 5px 15px #12243816}
.btn:hover,.enquiry-form button:hover{background:#122438;color:#fff;transform:translateY(-3px);box-shadow:0 12px 24px #12243835}
.btn.alt:hover{background:#b38a51;color:#fff}
.slide-prev:hover,.slide-next:hover{background:#b38a51!important;transform:scale(1.09)}
nav a:hover,nav summary:hover{transform:translateY(-1px)}
.about-feature-grid{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:42px;align-items:center}
.about-visual{grid-row:1 / span 6;align-self:stretch;min-height:360px;position:relative;border-radius:18px;overflow:hidden;box-shadow:0 20px 45px #1224381c}
.about-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.about-visual-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#122438e8);padding:70px 25px 25px;color:#fff;font-weight:600;letter-spacing:.08em}
.about-section{background:#f7f5f0}.about-section:nth-of-type(odd){background:#fff}
.about-section .wrap{max-width:1080px}.about-section h2{position:relative;padding-bottom:15px}.about-section h2:after{content:"";position:absolute;bottom:0;left:0;width:65px;height:3px;background:#b38a51}
.location-section{margin-top:58px;padding-top:35px;border-top:1px solid #e7e3db}.location-section p{color:#596574;max-width:850px}.office-map{display:block;width:100%;height:390px;border:0;border-radius:16px;box-shadow:0 14px 36px #1224381e;margin-top:22px}.map-link{margin-top:22px}
@media(max-width:750px){.about-feature-grid{display:block}.about-visual{height:290px;min-height:0;margin-bottom:28px}.pagehero-art{padding:65px 0 58px}.pagehero-art:after{font-size:110px}.office-map{height:310px}}
@media(prefers-reduced-motion:reduce){.card,.client,.contactcard,.btn,.back-home,.slide-prev,.slide-next{transition:none}}
