:root{
  --ink:#1b1714; --muted:#5e554f; --paper:#f4ecdf; --paper-soft:#fff9f0;
  --red:#9f1519; --gold:#b4874d; --line:#e2d4c2; --charcoal:#171819;
  --shadow:0 18px 50px rgba(39,28,19,.08); --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:Aptos,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased} img{display:block;max-width:100%;height:auto} a{color:inherit;text-decoration:none}.serif,h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em} p{color:#352f2a}.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px;z-index:99}
.site-header{position:sticky;top:0;z-index:50;background:rgba(244,236,223,.94);border-bottom:1px solid rgba(159,21,25,.11);backdrop-filter:blur(14px)}
.nav-wrap{max-width:1240px;margin:0 auto;min-height:82px;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;min-width:0;flex:0 0 auto}.brand-mark{width:52px!important;height:52px!important;object-fit:contain;flex:0 0 52px}.brand-word{font-family:Georgia,"Times New Roman",serif;font-size:30px;letter-spacing:.07em;line-height:1;color:var(--ink);white-space:nowrap}.nav{display:flex;align-items:center;gap:30px;text-transform:uppercase;font-size:12px;letter-spacing:.075em;white-space:nowrap}.nav a{position:relative;padding:8px 0}.nav a:hover,.nav a[aria-current="page"]{color:var(--red)}.nav a[aria-current="page"]:after,.nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--red)}.menu-button{display:none;border:1px solid var(--line);background:rgba(255,249,240,.55);padding:9px 12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);cursor:pointer}
main{min-height:70vh}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(450px,47vw);min-height:640px;background:linear-gradient(90deg,var(--paper-soft),var(--paper));border-bottom:1px solid var(--line)}.hero-copy{padding:86px 7vw 70px;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(46px,5.5vw,78px);line-height:.98;margin:0 0 27px}.lead{font-size:17px;max-width:620px;color:#342d28}.location-note{border-left:2px solid var(--red);padding-left:21px;margin:24px 0 34px;max-width:560px;color:#342d28}.button-row{display:flex;flex-wrap:wrap;gap:18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:53px;padding:0 29px;border:1px solid var(--red);text-transform:uppercase;font-size:12px;letter-spacing:.09em}.btn-primary{background:var(--red);color:white}.btn-secondary{background:rgba(255,249,240,.45);color:var(--red)}.hero-art{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(244,236,223,.10),rgba(244,236,223,.18)),url('../img/hero-stairs.jpg');background-position:center 48%;background-size:cover}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,236,223,.04),rgba(244,236,223,.20))}
.section{padding:70px 28px}.container{max-width:var(--max);margin:0 auto}.intro-grid{display:grid;grid-template-columns:150px 1fr 350px;gap:56px;align-items:center}.large-mark{width:132px!important;height:132px!important;object-fit:contain;margin:auto}.intro-grid h2{font-size:39px;line-height:1.08;margin:0 0 18px}.feature-list{border-left:1px solid var(--line);padding-left:36px}.feature-list ul,.tick-list{list-style:none;margin:0;padding:0;display:grid;gap:15px}.feature-list li,.tick-list li{display:flex;align-items:flex-start;gap:12px}.dot{width:23px;height:23px;border:1px solid rgba(159,21,25,.28);color:var(--red);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex:0 0 23px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--red);font-size:13px;font-weight:650}.section-title{text-align:center;margin-bottom:34px}.section-title:before,.section-title:after{content:"";display:inline-block;width:86px;height:1px;background:var(--line);vertical-align:middle;margin:0 18px}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.card{background:rgba(255,249,240,.78);border:1px solid var(--line);box-shadow:var(--shadow);padding:30px 17px;text-align:center;min-height:240px}.card-icon{font-size:32px;color:var(--red);line-height:1;margin-bottom:15px}.card h3{font-size:19px;line-height:1.16;margin:0 0 14px}.card p{font-size:13.5px;margin:0;color:#352f2a}.iom-home{display:grid;grid-template-columns:1fr 1.05fr 360px;gap:52px;align-items:center;background:var(--paper-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:58px;padding-bottom:58px}.iom-home h2{font-size:38px;line-height:1.08;margin:8px 0 22px}.iom-photo{height:360px;position:relative;background-image:linear-gradient(90deg,rgba(255,249,240,.45),rgba(255,249,240,.03)),url('../img/manx-flag.jpg');background-position:center;background-size:cover}.cta-band{background:#fbf6ee;padding:42px 28px;border-bottom:1px solid var(--line)}.cta-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr 300px;gap:36px;align-items:center}.cta-inner h2{font-size:36px;line-height:1.1;margin:0;border-left:2px solid var(--red);padding-left:22px}.contact-inline{display:grid;gap:8px;color:#302b27}.site-footer{background:var(--charcoal);color:#eee;padding:25px 28px}.footer-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-logo{display:flex;align-items:center;gap:14px}.footer-logo img{width:48px!important;height:48px!important;object-fit:contain;flex:0 0 48px}.footer-logo strong{letter-spacing:.07em}.footer-meta{display:flex;gap:30px;color:#d9cdbc;font-size:14px;flex-wrap:wrap}.page-hero{min-height:310px;display:grid;grid-template-columns:1fr 430px;background:var(--paper-soft);border-bottom:1px solid var(--line)}.page-hero-copy{padding:78px 8vw}.page-hero h1{font-size:58px;line-height:1;margin:0 0 12px}.services-art{background-image:linear-gradient(90deg,rgba(244,236,223,.08),rgba(244,236,223,.24)),url('../img/services-douglas.jpg');background-position:center 52%;background-size:cover}.map-art{background-image:linear-gradient(90deg,rgba(244,236,223,.08),rgba(244,236,223,.24)),url('../img/isle-castle.jpg');background-position:center 58%;background-size:cover}.service-list{background:rgba(255,249,240,.78);border:1px solid var(--line);box-shadow:var(--shadow)}.service-row{display:grid;grid-template-columns:74px 290px 1fr;gap:28px;align-items:center;padding:24px 34px;border-bottom:1px solid var(--line)}.service-row:last-child{border-bottom:0}.row-icon{width:52px;height:52px;border:1px solid rgba(159,21,25,.28);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--red);font-size:24px}.service-row h2{font-size:21px;margin:0}.quote-box{margin-top:40px;background:#eee3d5;padding:28px 34px;display:grid;grid-template-columns:280px 1fr;gap:35px}.quote-box h2{font-size:28px;margin:0}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.benefit{background:rgba(255,249,240,.88);padding:38px 24px;min-height:182px;text-align:center}.benefit h2{font-size:23px;margin:0 0 6px}.about-grid{display:grid;grid-template-columns:1fr 430px;gap:60px;align-items:start}.about-text h1{font-size:56px;line-height:1;margin:0 0 18px}.about-text p{max-width:660px}.portrait-card{background:#fffaf4;border:1px solid var(--line);box-shadow:var(--shadow)}.portrait-card img{width:100%;aspect-ratio:1/1.12;object-fit:cover;object-position:center top}.portrait-caption{padding:24px 28px}.portrait-caption h2{font-size:34px;margin:0 0 4px}.portrait-caption .role{color:var(--red);margin:0 0 18px}.portrait-caption p{font-size:14px;color:#302b27}.contact-layout{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.contact-panel{padding:88px 8vw}.contact-panel h1{font-size:56px;line-height:1;margin:0 0 18px}.contact-list{display:grid;gap:22px;margin-top:34px}.contact-item{display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:start}.contact-photo{background-image:linear-gradient(90deg,rgba(244,236,223,.36),rgba(244,236,223,.06)),url('../img/contact-lighthouse.jpg');background-position:center;background-size:cover}.sr-only{position:absolute;left:-9999px}
@media (max-width:1100px){.hero{grid-template-columns:1fr}.hero-art{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(244,236,223,.10),rgba(244,236,223,.18)),url('../img/hero-stairs.jpg');background-position:center 48%;background-size:cover}.intro-grid,.iom-home,.cta-inner,.about-grid,.contact-layout{grid-template-columns:1fr}.cards{grid-template-columns:repeat(3,1fr)}.page-hero{grid-template-columns:1fr}.page-hero>div:nth-child(2){min-height:230px}.service-row{grid-template-columns:60px 1fr}.service-row p{grid-column:2}.benefit-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{align-items:flex-start;flex-direction:column}.iom-photo{height:360px;position:relative;background-image:linear-gradient(90deg,rgba(255,249,240,.45),rgba(255,249,240,.03)),url('../img/manx-flag.jpg');background-position:center;background-size:cover}}
@media (max-width:760px){.nav-wrap{min-height:72px;padding:12px 18px}.brand-mark{width:44px!important;height:44px!important;flex-basis:44px}.brand-word{font-size:23px}.menu-button{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:12px;background:rgba(244,236,223,.99);padding:18px 24px 22px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(30,20,10,.08)}.nav.open{display:flex}.hero-copy,.page-hero-copy,.contact-panel{padding:46px 24px}.hero h1{font-size:43px}.section{padding:48px 20px}.cards{grid-template-columns:1fr}.intro-grid{gap:30px}.large-mark{margin:0;width:104px!important;height:104px!important}.section-title:before,.section-title:after{display:none}.quote-box{grid-template-columns:1fr}.benefit-grid{grid-template-columns:1fr}.footer-meta{gap:10px;flex-direction:column}.page-hero h1,.about-text h1,.contact-panel h1{font-size:42px}.cta-inner h2{font-size:30px}.service-row{padding:22px;gap:18px}.page-hero{min-height:auto}.hero-art{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(244,236,223,.10),rgba(244,236,223,.18)),url('../img/hero-stairs.jpg');background-position:center 48%;background-size:cover}.iom-photo{height:360px;position:relative;background-image:linear-gradient(90deg,rgba(255,249,240,.45),rgba(255,249,240,.03)),url('../img/manx-flag.jpg');background-position:center;background-size:cover}}
@media (max-width:420px){.brand-word{font-size:20px;letter-spacing:.055em}.hero h1{font-size:38px}.btn{width:100%}.nav-wrap{gap:10px}.card{min-height:auto}.footer-logo img{width:42px!important;height:42px!important}}

.footer-copy{max-width:var(--max);margin:18px auto 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);color:#a99f92;font-size:12px;letter-spacing:.02em}

.name-note{margin-top:34px;padding:26px 28px;background:var(--paper-soft);border:1px solid var(--line);box-shadow:var(--shadow);display:grid;grid-template-columns:92px minmax(0,1fr);gap:24px;align-items:center;width:100%;max-width:100%;overflow:hidden}.name-note-logo{width:92px!important;height:92px!important;object-fit:contain;flex:0 0 92px}.name-note h2{font-size:28px;margin:0 0 10px}.name-note p{margin:0;max-width:660px}.director-cards{display:grid;grid-template-columns:1fr;gap:18px;margin-top:42px;max-width:560px;width:100%}.director-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;padding:18px;background:var(--paper-soft);border:1px solid var(--line);box-shadow:var(--shadow);width:100%;max-width:100%;overflow:hidden}.director-card img{width:92px!important;height:92px!important;object-fit:cover;object-position:center;filter:grayscale(1) sepia(.13) saturate(.62) contrast(.92);opacity:.9;flex:0 0 92px}.director-card h2{font-size:23px;margin:0 0 4px;overflow-wrap:anywhere}.director-card p{margin:0 0 4px;color:var(--red);font-size:14px}.director-card a{font-size:14px;color:#352f2a;overflow-wrap:anywhere}.legal-page h1{font-size:56px;line-height:1;margin:0 0 24px}.legal-panel{max-width:820px;background:var(--paper-soft);border:1px solid var(--line);box-shadow:var(--shadow);padding:34px 38px}.legal-panel p{margin:0 0 18px}.legal-panel p:last-child{margin-bottom:0}
@media (max-width:1100px){.director-cards{max-width:720px}}
@media (max-width:760px){.director-card{grid-template-columns:78px minmax(0,1fr)}.director-card img{width:78px!important;height:78px!important}.legal-page h1{font-size:42px}.legal-panel{padding:26px 22px}.name-note{grid-template-columns:68px minmax(0,1fr);gap:18px;padding:22px}.name-note-logo{width:68px!important;height:68px!important}}
@media (max-width:420px){.director-card{grid-template-columns:1fr}.director-card img{width:86px!important;height:86px!important}.name-note{grid-template-columns:1fr}.name-note-logo{width:76px!important;height:76px!important}}
