:root{--forest:#123b32;--deep:#092a25;--gold:#b89a57;--cream:#f7f5ee;--ink:#202b27;--muted:#66746d;--line:#dcded4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;color:var(--ink);background:#fff;line-height:1.65}p{font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1160px,calc(100% - 48px));margin:auto}.topline{background:var(--deep);color:#dfdfd4;text-align:center;font-size:11px;letter-spacing:.22em;padding:9px}.header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e6e6de}.nav{display:flex;justify-content:space-between;align-items:center;min-height:88px;gap:25px}.brand{display:flex;align-items:center;gap:12px}.brand svg{width:61px;height:53px}.brand-main{font:28px Georgia,serif;letter-spacing:.13em;color:var(--forest);line-height:1}.brand-sub{font-size:9px;letter-spacing:.29em;color:#8a7445;margin-top:8px}.links{display:flex;gap:28px;align-items:center}.links a{font-size:12px;white-space:nowrap;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.links a:hover,.links a.active{color:#a28143}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#102c27!important;border:1px solid var(--gold);padding:13px 22px;font-size:12px!important;font-weight:800;letter-spacing:.11em;text-transform:uppercase;transition:.2s}.btn:hover{background:#d5b977}.btn.outline{background:transparent;color:#fff!important;border-color:#c7b788}.btn.dark{background:var(--forest);border-color:var(--forest);color:white!important}.menu{display:none;background:none;border:0;font-size:25px;color:var(--forest)}.hero{background:var(--deep);color:white;position:relative;overflow:hidden}.hero-inner{min-height:620px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center}.hero-copy{padding:95px 35px 95px 0;position:relative;z-index:1}.eyebrow{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;margin:0 0 22px}.hero h1,.pagehero h1{font:normal clamp(40px,5vw,64px)/1.1 Georgia,serif;letter-spacing:-.035em;margin:0 0 25px}.hero p.lead{font-size:18px;color:#d4dfd9;max-width:565px;margin:0 0 35px}.hero-art{height:100%;min-height:620px;position:relative;background:linear-gradient(145deg,#153d37,#102d2b)}.hero-art svg{position:absolute;inset:0;width:100%;height:100%}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--deep),transparent 22%)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.micro{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#bfae7e;margin-top:55px}.section{padding:95px 0}.section.soft{background:var(--cream)}.section.dark{background:var(--forest);color:white}.section-head{max-width:760px;margin-bottom:45px}.section h2,.page-section h2,.cta h2{font:normal clamp(32px,3.6vw,46px)/1.17 Georgia,serif;letter-spacing:-.025em;margin:0 0 20px}.section-head p,.intro{font-size:18px;color:var(--muted)}.section.dark .intro{color:#d4dfd9}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service{background:white;border:1px solid var(--line);padding:35px 30px;min-height:310px;display:flex;flex-direction:column}.service .num{font:28px Georgia,serif;color:var(--gold);margin-bottom:25px}.service h3{font:24px Georgia,serif;color:var(--forest);line-height:1.2;margin:0 0 15px}.service p{font-size:16px;color:#66716b;flex:1}.service a{font-size:12px;letter-spacing:.14em;font-weight:bold;text-transform:uppercase;color:var(--forest)}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.feature-panel{min-height:420px;background:var(--forest);position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:40px;color:white}.feature-panel svg{position:absolute;inset:0;width:100%;height:100%}.feature-panel span{position:relative;z-index:1;font:italic 28px/1.3 Georgia,serif;max-width:280px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.pillar{border-top:1px solid #688078;padding-top:24px}.pillar strong{display:block;font:24px Georgia,serif;margin-bottom:10px}.pillar p{color:#d6e1dc;font-size:16px}.cta{background:#eae8de;text-align:center;padding:80px 20px}.cta h2{margin:0 0 18px}.cta p{max-width:620px;margin:0 auto 28px;color:#596960}.footer{background:#0b2823;color:#d6e1dc;padding:55px 0 22px}.footgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer .brand-main{color:#fff}.footer h4{color:#c3a96c;font-size:12px;letter-spacing:.17em;text-transform:uppercase;margin:0 0 20px}.footer p,.footer a,.footlinks span{font-size:14px;color:#cdd9d2}.footer a:hover{color:white}.footlinks{display:flex;flex-direction:column;gap:9px}.copyright{border-top:1px solid #315047;margin-top:42px;padding-top:18px;font-size:12px;color:#9db1a7;display:flex;justify-content:space-between;gap:20px}.pagehero{background:var(--deep);color:white;padding:100px 0 95px;position:relative;overflow:hidden}.pagehero:after{content:'';position:absolute;right:-90px;top:-200px;width:550px;height:550px;border:1px solid #416156;border-radius:50%;box-shadow:0 0 0 90px #ffffff05,0 0 0 180px #ffffff05}.pagehero .container{position:relative;z-index:1}.pagehero h1{max-width:850px}.pagehero p{max-width:700px;color:#d0dfd7;font-size:18px;margin:0}.page-section{padding:85px 0}.copy{max-width:760px}.copy p{font-size:16px;color:#596960}.checkgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.check{padding:24px;border:1px solid var(--line);background:#fff}.check strong{font:24px Georgia,serif;color:var(--forest)}.check p{font-size:16px;color:#66716b;margin-bottom:0}.contactgrid{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.contactline{padding:20px 0;border-bottom:1px solid var(--line)}.contactline small{display:block;font-size:12px;color:#8b7b59;font-weight:bold;letter-spacing:.16em;text-transform:uppercase}.contactline a,.contactline strong{font-size:18px;color:var(--forest)}.form{background:var(--cream);padding:35px}.form label{display:block;font-size:12px;letter-spacing:.13em;font-weight:bold;text-transform:uppercase;margin:0 0 7px}.form input,.form textarea,.form select{width:100%;padding:13px;border:1px solid #cfd6cd;background:white;margin-bottom:20px;border-radius:0}.form textarea{height:130px;resize:vertical}.fineprint{font-size:14px;color:#65736c}.note{border-left:3px solid var(--gold);padding:15px 22px;background:#f6f5ef;color:#53645b;font-size:14px;margin-top:35px}@media(max-width:850px){.links{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;box-shadow:0 15px 30px #0002}.links.open{display:flex}.menu{display:block}.hero-inner{grid-template-columns:1fr}.hero-copy{padding:85px 0}.hero-art{display:none}.grid3,.pillars{grid-template-columns:1fr}.split,.contactgrid{grid-template-columns:1fr;gap:35px}.footgrid{grid-template-columns:1fr 1fr}.section{padding:65px 0}}@media(max-width:520px){.container{width:min(100% - 32px,1160px)}.brand-main{font-size:23px}.brand svg{width:48px}.topline{font-size:9px}.hero h1,.pagehero h1{font-size:36px}.pagehero{padding:70px 0}.checkgrid,.footgrid{grid-template-columns:1fr}.copyright{flex-direction:column}.cta h2,.section h2,.page-section h2{font-size:30px}}

/* Donegal logo lockup: coastal illustration + typeset wordmark (never cropped) */
.brand{flex-shrink:0}
.logo{display:inline-flex;flex-direction:column;align-items:center;line-height:1;color:var(--forest)}
.logo-art{display:block;width:0;min-width:100%;height:auto;margin-bottom:6px}
.logo-name{font:400 30px/1 Georgia,'Times New Roman',serif;letter-spacing:.12em;margin-right:-.12em;white-space:nowrap}
.logo-sub{display:flex;align-items:center;gap:8px;width:100%;margin-top:5px;font:400 10px/1 Georgia,'Times New Roman',serif;letter-spacing:.32em;white-space:nowrap}
.logo-sub:before,.logo-sub:after{content:'';flex:1;height:1px;background:var(--gold)}
.logo-sub span{margin-right:-.32em}
.footer .logo{background:var(--cream);padding:14px 18px 12px}
.header .nav{min-height:100px}
.links{gap:24px}
@media(max-width:1080px){.links{gap:16px}.links a{font-size:11px;letter-spacing:.06em}}
@media(max-width:850px){.links{top:100px}.links a{font-size:13px}}
@media(max-width:520px){.logo-name{font-size:24px}.logo-sub{font-size:8px}.header .nav{min-height:86px}.links{top:86px}}
@media(max-width:850px){.hero-copy{padding:70px 0 45px}.hero-art{display:block;min-height:0;height:clamp(240px,62vw,420px);width:100vw;margin-left:calc(50% - 50vw)}.hero-art:after{background:linear-gradient(180deg,var(--deep),transparent 28%)}}
