
:root{--navy:#101a2d;--gold:#c9a45c;--cream:#f8f5ee;--ink:#273044;--muted:#687386}
*{box-sizing:border-box}body{margin:0;font:18px/1.75 Arial,sans-serif;color:var(--ink)}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,92%);margin:auto}
.top{background:linear-gradient(90deg,#070f1d,#111e32);color:#e9d6ad;padding:12px max(4%,calc((100% - 1320px)/2));font-size:12px;letter-spacing:2.2px;text-transform:uppercase;border-bottom:1px solid rgba(201,164,92,.32);font-weight:700}.header{background:linear-gradient(110deg,#101a2d 0%,#14223a 58%,#0d1728 100%);color:#fff;border-bottom:1px solid rgba(201,164,92,.24);box-shadow:0 10px 28px rgba(4,11,22,.16);position:relative;z-index:5}.nav{display:grid;grid-template-columns:410px minmax(0,1fr) auto;align-items:center;gap:34px;padding:22px 0;min-height:122px;width:min(1400px,96%)}.brand{display:flex;align-items:center;gap:17px;min-width:0}.brand img{width:78px;height:78px;object-fit:contain;background:rgba(4,12,24,.45);border:1px solid rgba(201,164,92,.28);border-radius:4px;padding:3px;box-shadow:0 4px 14px rgba(0,0,0,.18)}.brand b{display:block;color:#e8ca8c;font: bold 29px Georgia;letter-spacing:3.4px;white-space:nowrap}.brand small{display:block;font-size:10.5px;letter-spacing:1.15px;color:#f3eee3;margin-top:5px;white-space:nowrap}.links{display:flex;align-items:center;justify-content:flex-end;gap:clamp(14px,1.35vw,22px);flex-wrap:nowrap;font-size:17px;font-weight:600;white-space:nowrap}.links a{padding:10px 0;position:relative;transition:color .2s ease}.links a:after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:var(--gold);transition:right .2s ease}.links a:hover{color:#e5ca8e}.links a:hover:after{right:0}.nav>.btn{white-space:nowrap;padding:15px 18px;font-size:12px;letter-spacing:1.1px;box-shadow:0 5px 15px rgba(201,164,92,.16);transition:transform .2s ease,background .2s ease}.nav>.btn:hover{background:#dfbd78;transform:translateY(-1px)}
.btn{display:inline-block;background:var(--gold);color:var(--navy);padding:13px 19px;font-size:14px;font-weight:bold;letter-spacing:1px;text-transform:uppercase}.hero,.pagehero{background:linear-gradient(110deg,#101a2d,#1d2b43);color:white}.hero{padding:76px 0}.hero-grid,.split{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.hero h1{font:normal clamp(38px,5vw,64px)/1.08 Georgia;margin:15px 0}.hero p,.pagehero p{color:#d9dfe8;max-width:760px;font-size:20px;line-height:1.8}.hero img{width:100%;max-height:340px;object-fit:contain;border:1px solid #c9a45c77;padding:14px}.eyebrow{color:#e5ca8e;font-size:13px;letter-spacing:2px;text-transform:uppercase}.pagehero{padding:58px 0}.pagehero h1{font:normal clamp(36px,4vw,50px) Georgia;margin:12px 0}.section{padding:65px 0}.cream{background:var(--cream)}.dark{background:var(--navy);color:white}.dark h2{color:white}.section h2{font:normal 36px Georgia;color:var(--navy)}.center{text-align:center;max-width:760px;margin:0 auto 30px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid #e8e1d4;padding:24px}.card h3{font:normal 22px Georgia;color:var(--navy);margin:8px 0}.card p,.muted{color:var(--muted);font-size:17px}.card a{font-size:12px;color:#8b692d;font-weight:bold;letter-spacing:1px}.content{max-width:880px}.content h2{font:normal 29px Georgia;color:var(--navy)}.contactbox{background:var(--cream);padding:26px;border:1px solid #e6dfd1}.contactbox strong{font:28px Georgia;color:var(--navy)}.email{color:#8b692d;text-decoration:underline}.price{font:30px Georgia;color:#8b692d}.price small{font:13px Arial;color:#687386}.form{display:grid;gap:13px}.form label{font-size:15px;font-weight:bold}.form input,.form textarea,.form select{display:block;width:100%;padding:12px;border:1px solid #d7d0c4;margin-top:5px;font:17px Arial}.form textarea{min-height:145px}.faq{border-bottom:1px solid #e6dfd1;padding:17px 0}.faq h3{font:21px Georgia;color:var(--navy)}.footer{background:#091222;color:#d8dfeb;padding:44px 0}.footgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:25px}.footer h3{font:22px Georgia;color:#e5ca8e}.footer a{display:block;font-size:16px;margin:7px 0}.small{font-size:16px;line-height:1.8;color:#c3ccd9;max-width:390px}
@media(max-width:760px){.hero-grid,.split,.footgrid{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.nav{align-items:flex-start}.links{gap:10px}.hero{padding:48px 0}.section{padding:48px 0}}

:focus-visible{outline:3px solid #c9a45c;outline-offset:3px} .card ul{padding-left:22px} .card li{margin:5px 0} .form input,.form textarea,.form select{min-height:48px} .form button{cursor:pointer}

/* Service-page contact panel */
.service-contact{margin-top:38px;padding:30px 32px;border-left:4px solid var(--gold);box-shadow:0 12px 34px rgba(16,26,45,.07)}
.service-contact .eyebrow{color:#8b692d;margin-bottom:10px}
.service-contact strong{display:block;margin:4px 0 2px}
.service-contact>p{margin:5px 0}
.service-contact .contact-intro{color:var(--muted);max-width:650px;margin:14px 0 20px}
.contact-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.contact-actions .btn{min-width:160px;text-align:center}
.contact-direct{font-size:17px;font-weight:600;overflow-wrap:anywhere}
@media(max-width:600px){.service-contact{padding:23px 20px}.contact-actions{align-items:flex-start;flex-direction:column;gap:15px}.contact-actions .btn{width:100%}}

.form-status{margin:0;font-size:15px;font-weight:600}.form-status.success{padding:14px 16px;background:#edf7ef;border-left:4px solid #347b45;color:#205b30}.form-status.error{padding:14px 16px;background:#fff1ef;border-left:4px solid #b64a3d;color:#8d3028}.form button:disabled{opacity:.7;cursor:wait}


@media(max-width:1200px){.nav{grid-template-columns:1fr auto;gap:18px 24px;padding:19px 0}.brand{grid-column:1;grid-row:1}.nav>.btn{grid-column:2;grid-row:1}.links{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex-wrap:wrap;white-space:normal;padding:12px 0 2px 96px;border-top:1px solid rgba(201,164,92,.22);gap:10px 23px;font-size:16px}}
@media(max-width:1050px){.nav{grid-template-columns:1fr auto;gap:14px}.links{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex-wrap:wrap;white-space:normal;padding-top:8px;border-top:1px solid rgba(201,164,92,.18)}.nav>.btn{grid-column:2;grid-row:1}.brand{grid-column:1;grid-row:1}}
@media(max-width:600px){.top{font-size:9px;letter-spacing:1.1px;line-height:1.6}.nav{grid-template-columns:1fr;gap:13px;padding:15px 0}.brand,.nav>.btn,.links{grid-column:1;grid-row:auto}.brand img{width:66px;height:66px}.brand b{font-size:24px}.brand small{font-size:9.5px;white-space:normal;line-height:1.4}.nav>.btn{justify-self:start}.links{gap:9px 18px;padding:12px 0 2px}.links a{font-size:15px}}

/* Final refinement: stronger separation between brand and navigation, with more readable supporting copy */
@media(min-width:1201px){.nav{column-gap:38px}.links{padding-left:12px}.brand{margin-right:8px}}
.footer .small{font-size:16px;line-height:1.85;color:#c8d0dc}
.footer .footgrid>div:first-child .small,.footer .footgrid>div:last-child .small{max-width:410px}
@media(max-width:1050px){.links{font-size:16px;justify-content:flex-start;padding-left:0}}

/* PROAUTHORS final desktop header: clear four-space brand/menu separation */
@media (min-width: 1351px) {
  .nav {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr) max-content;
    align-items: center;
    column-gap: 32px;
    row-gap: 0;
    width: min(1400px, 96%);
    padding: 20px 0;
  }
  .brand {
    grid-column: 1;
    min-width: max-content;
    margin: 0;
  }
  .links {
    grid-column: 2;
    justify-content: flex-start;
    gap: clamp(12px, 1.05vw, 18px);
    min-width: 0;
    padding: 0;
    white-space: nowrap;
    font-size: 16px;
  }
  .nav > .btn {
    grid-column: 3;
    white-space: nowrap;
    padding: 14px 15px;
    font-size: 11px;
  }
}

/* Keep the navigation orderly when the full desktop row no longer fits. */
@media (min-width: 761px) and (max-width: 1350px) {
  .nav {
    display: grid;
    grid-template-columns: max-content max-content;
    justify-content: space-between;
    align-items: center;
    gap: 16px 24px;
    width: min(1200px, 94%);
  }
  .brand { grid-column: 1; grid-row: 1; }
  .nav > .btn { grid-column: 2; grid-row: 1; justify-self: end; }
  .links {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-content: flex-start;
    flex-wrap: wrap;
    white-space: normal;
    padding: 12px 0 2px;
    border-top: 1px solid rgba(201,164,92,.22);
    gap: 10px 22px;
  }
}

/* More comfortable supporting-copy and footer readability. */
.footer .small { font-size: 17px; line-height: 1.85; }
.pagehero p, .hero p { font-size: 20px; line-height: 1.8; }
.card p, .muted { font-size: 17px; line-height: 1.8; }
