/* Bellucci Site V2 — shared service shell */

.desk-entry { background: var(--ink); color: var(--paper); padding: 126px 0 116px; }
.desk-entry-head { display:grid; grid-template-columns: 1.5fr .65fr; gap: 90px; align-items:end; margin-bottom: 54px; }
.desk-entry h2, .desk-hero h1 { font: 400 clamp(43px,5.5vw,78px)/1.02 var(--serif); letter-spacing:-.04em; margin:0; }
.desk-entry h2 em, .desk-hero h1 em { color:var(--bronze-2); font-weight:400; }
.desk-entry-head > p { margin:0 0 6px; color:#c7c3bb; max-width:390px; font-size:16px; }
.desk-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line-light); }
.desk-card { padding:38px 34px 32px; border-right:1px solid var(--line-light); min-height:395px; display:flex; flex-direction:column; transition:background .25s var(--ease); }
.desk-card:last-child { border-right:0; }
.desk-card:hover, .desk-card:focus-visible { background:#24272c; }
.desk-number { color:var(--bronze-2); font-size:12px; font-weight:700; letter-spacing:.14em; }
.desk-card h3 { font:400 clamp(31px,2.8vw,42px)/1.1 var(--serif); margin:65px 0 15px; }
.desk-card p { color:#c4c0b7; font-size:16px; line-height:1.55; margin:0 0 28px; }
.desk-go { margin-top:auto; padding-top:20px; border-top:1px solid var(--line-light); font-size:13px; letter-spacing:.04em; display:flex; justify-content:space-between; color:var(--bronze-2); }
.desk-entry-note { color:#a7a49d; font-size:14px; margin:27px 0 0; }
.desk-hero { background:var(--ink); color:var(--paper); padding:170px 0 90px; }
.desk-hero-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.65fr); gap:80px; align-items:end; }
.desk-hero .lead { max-width:770px; color:#d3cfc5; font:400 clamp(21px,2vw,28px)/1.42 var(--serif); margin:30px 0 0; }
.desk-hero-aside { border-left:1px solid var(--line-light); padding-left:32px; }
.desk-hero-aside p { color:#bbb7b0; font-size:15px; }
.desk-hero-aside .btn { margin-top:10px; }
.desk-section { padding:100px 0; background:var(--paper); }
.desk-section.alt { background:var(--paper-2); }
.desk-section.dark { background:var(--ink); color:var(--paper); }
.desk-split { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); gap:90px; }
.desk-section h2 { font:400 clamp(38px,4vw,60px)/1.07 var(--serif); letter-spacing:-.035em; margin:0 0 24px; }
.desk-section h3 { font:400 29px/1.2 var(--serif); margin:0 0 12px; }
.desk-section p, .desk-section li { font-size:16px; line-height:1.65; }
.desk-section .muted { color:#5e625d; }
.desk-section.dark .muted { color:#b7b4ac; }
.desk-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.desk-fact { border-top:1px solid var(--line); padding:22px 0 5px; }
.dark .desk-fact { border-color:var(--line-light); }
.desk-fact span { color:#947345; text-transform:uppercase; font-size:12px; letter-spacing:.12em; font-weight:700; }
.dark .desk-fact span { color:var(--bronze-2); }
.desk-fact h3 { margin:14px 0 8px; }
.desk-fact p { margin:0; }
.desk-list { list-style:none; margin:0; padding:0; border-top:1px solid var(--line); }
.desk-list li { border-bottom:1px solid var(--line); padding:18px 0; }
.desk-list li strong { display:block; color:var(--ink); }
.desk-fine { border-left:2px solid var(--bronze); padding-left:20px; color:#5d625e; font-size:14px !important; }
.desk-contact { display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin-top:26px; }
.desk-contact .btn-outline { color:var(--paper); border-color:rgba(245,241,232,.35); }
.desk-contact .btn-outline:hover { color:var(--bronze-2); border-color:var(--bronze-2); }
.desk-path { display:flex; flex-wrap:wrap; gap:16px; border-top:1px solid var(--line); padding-top:30px; margin-top:45px; }
.desk-path a { color:#765c36; border-bottom:1px solid currentColor; font-size:14px; }
.desk-price { font:400 62px/1 var(--serif); color:var(--bronze-2); margin:10px 0 12px; }
.privacy-panel { max-width:850px; margin:auto; }
.privacy-panel h1 { font:400 clamp(44px,5vw,70px)/1.05 var(--serif); }
.privacy-panel h2 { font:400 32px/1.15 var(--serif); margin-top:40px; }
.privacy-panel a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:950px){ .desk-entry-head,.desk-hero-grid,.desk-split{grid-template-columns:1fr;gap:30px}.desk-cards{grid-template-columns:1fr}.desk-card{min-height:0;border-right:0;border-bottom:1px solid var(--line-light)}.desk-card:last-child{border-bottom:0}.desk-card h3{margin:30px 0 15px}.desk-hero-aside{border-left:0;border-top:1px solid var(--line-light);padding:24px 0 0} }
@media(max-width:650px){ .desk-entry,.desk-section{padding:70px 0}.desk-hero{padding:130px 0 65px}.desk-card{padding:27px 24px}.desk-facts{grid-template-columns:1fr}.desk-contact{align-items:stretch;flex-direction:column}.desk-contact .btn{width:100%} }

/* Keep compact internal-page introduction after base stylesheet. */
.desk-hero{padding-top:145px}
@media(max-width:760px){.desk-hero{padding-top:120px}}

.desk-section:not(.dark) .desk-fact span{color:#70512c}

/* Give the business desk a clear lead while retaining the other services. */
.desk-priority{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);border:1px solid var(--line-light)}
.desk-primary{padding:clamp(35px,4vw,62px);display:flex;flex-direction:column;min-height:440px;border-right:1px solid var(--line-light);transition:background .25s var(--ease)}
.desk-primary:hover,.desk-primary:focus-visible,.desk-secondary-link:hover,.desk-secondary-link:focus-visible{background:#24272c}
.desk-primary h3{font:400 clamp(48px,5vw,72px)/1.02 var(--serif);letter-spacing:-.035em;margin:70px 0 20px}
.desk-primary p{font:400 clamp(19px,1.7vw,23px)/1.45 var(--serif);color:#d5d0c6;max-width:640px;margin:0 0 35px}
.desk-secondary{display:flex;flex-direction:column}
.desk-secondary-label{margin:0;padding:20px 30px;color:#c4c0b7;font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid var(--line-light)}
.desk-secondary-link{display:flex;flex:1;flex-direction:column;padding:20px 30px 22px;border-bottom:1px solid var(--line-light);transition:background .25s var(--ease)}
.desk-secondary-link:last-child{border-bottom:0}
.desk-secondary-link h3{font:400 clamp(27px,2.2vw,34px)/1.12 var(--serif);margin:10px 0 7px}
.desk-secondary-link p{color:#c4c0b7;font-size:14px;line-height:1.55;margin:0 0 18px}
.desk-secondary-link .desk-go{font-size:12px;padding-top:9px}
@media(max-width:950px){.desk-priority{grid-template-columns:1fr}.desk-primary{border-right:0;border-bottom:1px solid var(--line-light);min-height:0}.desk-primary h3{margin-top:42px}.desk-secondary-link{min-height:210px}}
@media(max-width:650px){.desk-primary{padding:30px 24px}.desk-primary h3{font-size:48px}.desk-secondary-label,.desk-secondary-link{padding-left:24px;padding-right:24px}}

/* V3 2026-09-30: tighter homepage rhythm and four coordinated desk paths */
@media(min-width:951px){
  .desk-entry{padding:96px 0 90px}
  .desk-secondary-link{padding:17px 28px 18px}
  .desk-secondary-link h3{font-size:clamp(24px,1.9vw,31px);margin:8px 0 6px}
  .desk-secondary-link p{font-size:13px;line-height:1.48;margin:0 0 12px}
  .desk-secondary-link .desk-go{padding-top:7px}
}

