/* Scoped to .content only */

.content{
  --ivory:#F6F1E6; --paper:#FCFAF3; --charcoal:#2A2620;
  --ink:#26231D; --body:#3E3A31; --stone:#8A8273; --line:#E3DBCA;
  --burgundy:#7A2A3D;
}
.content *{ box-sizing:border-box; margin:0; padding:0; }
.content{ scroll-behavior:smooth; }
.content{ font-family:"Roboto","Helvetica Neue",Arial,sans-serif; color:var(--body); background:var(--ivory); line-height:1.7; font-size:16px; -webkit-font-smoothing:antialiased; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
.content .serif{ font-family:"Cormorant Garamond",Georgia,serif; }
.content .wrap{ max-width:1120px; margin:0 auto; padding:0 34px; }
.content .narrow{ max-width:680px; }
.content a{ color:var(--burgundy); text-decoration:none; }
.content a:hover{ text-decoration:none; }
.content section{ padding:100px 0; }
.content .eyebrow{ font-size:11px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--burgundy); }
.content h1, .content h2{ font-family:"Cormorant Garamond",Georgia,serif; font-weight:600; color:var(--ink); }
.content h2.sec{ font-size:38px; line-height:1.14; margin-top:16px; }
.content p{ max-width:64ch; }
.content .lead{ font-size:19px; color:var(--body); margin-top:22px; }

.content .btn{ display:inline-block; background:var(--charcoal); color:var(--ivory); font-weight:500; font-size:15.5px; padding:4px 34px; border:0; border-radius:4px; cursor:pointer; letter-spacing:.01em; transition:.18s ease; }
.content .btn:hover{ background:#3c372f; }

.content .topbar{ background:var(--ivory); border-bottom:1px solid var(--line); }
.content .topbar .wrap{ display:flex; align-items:center; justify-content:space-between; height:66px; }
.content .brand{ font-size:18px; font-weight:900; color:var(--ink); }
.content .brand span{ color:var(--burgundy); }
.content .topbar a.back{ font-size:14px; font-weight:600; color:var(--stone); }

.content .photo{ background:linear-gradient(150deg,#E9E2D2,#D6CDBA); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; text-align:center; background:none; border:none; }
.content .photo-top{ padding-top: 20px; padding-bottom: 80px;}
.content .photo .ph{ font-family:"Cormorant Garamond",Georgia,serif; font-style:italic; font-size:16px; color:#8f8672; max-width:300px; line-height:1.5; padding:26px; }
.content .photo .ph b{ display:block; font-family:"Roboto",sans-serif; font-style:normal; font-weight:700; font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; color:#a49a84; margin-bottom:10px; }
.content .photo img{ width:100%; height:100%; object-fit:cover; display:block; }

/* hero */
.content .hero{ border-bottom:1px solid var(--line); }
.content .hero .grid{ display:grid; grid-template-columns:1.04fr .96fr; min-height:620px; }
.content .hero .htext{ padding:88px 64px 88px 0; align-self:center; }
.content .hero h1{ font-size:52px; line-height:1.08; margin:18px 0 0; }
.content .hero p{ font-size:18px; color:var(--body); margin-top:22px; }
.content .hero .cta-row{ margin-top:32px; }
.content .hero .sub{ margin-top:20px; font-size:13px; letter-spacing:.06em; color:var(--stone); text-transform:uppercase; }
.content .hero .photo{ min-height:620px; }

.content .prose h2{ margin-top:14px; }
.content .prose p{ margin-top:20px; }
.content .telllist{ list-style:none; margin:18px 0 0; }
.content .telllist li{ padding:9px 0 9px 22px; position:relative; font-size:16px; color:var(--body); border-bottom:1px solid var(--line); }
.content .telllist li:first-child{ border-top:1px solid var(--line); }
.content .telllist li::before{ content:""; position:absolute; left:2px; top:18px; width:6px; height:6px; border-radius:50%; background:var(--burgundy); }
.content .handle{ font-family:"Cormorant Garamond",Georgia,serif; font-size:25px; line-height:1.4; color:var(--ink); margin-top:16px; }
.content .handle + p{ margin-top:22px; color:var(--stone); }

/* process */
.content .steps{ margin-top:40px; }
.content .step{ display:grid; grid-template-columns:96px 1fr; gap:34px; padding:32px 0; border-top:1px solid var(--line); align-items:baseline; }
.content .step:first-child{ border-top:0; }
.content .step .no{ font-family:"Cormorant Garamond",Georgia,serif; font-size:44px; color:var(--burgundy); line-height:1; }
.content .step h3{ font-family:"Cormorant Garamond",Georgia,serif; font-weight:600; font-size:26px; color:var(--ink); }
.content .step p{ margin-top:8px; font-size:15.5px; color:var(--body); }
.content .step p em{ color:var(--ink); font-style:italic; }

/* investment (charcoal) */
.content .bespoke{ background:var(--charcoal); color:#E9E3D6; }
.content .bespoke .eyebrow{ color:#C98598; }
.content .bespoke .cols{ display:grid; grid-template-columns:1fr 1fr; gap:56px; margin-top:16px; align-items:start; }
.content .bespoke .price{ font-family:"Cormorant Garamond",Georgia,serif; font-size:44px; color:#FBF7EE; line-height:1.12; }
.content .bespoke p{ color:#D6CFC0; }
.content .bespoke p + p{ margin-top:16px; }
.content .bespoke .clarif{ margin-top:20px; font-size:13.5px; color:#B7AF9F; line-height:1.6; border-top:1px solid rgba(255,255,255,.12); padding-top:18px; }

/* closing photo */
.content .photoband{ padding:0; }
.content .photoband .photo{ min-height:420px; }

/* enquiry */
.content .enquiry .grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.content .enquiry .form{ max-width:600px; margin:30px auto 0; background:var(--paper); border:1px solid var(--line); border-radius:8px; padding:34px 32px; }
.content .enquiry .prenote{ font-size:13.5px; color:var(--stone); line-height:1.6; margin:4px 0 18px; }
.content .enquiry .field{ margin-bottom:16px; }
.content .enquiry label{ display:block; font-size:13px; font-weight:700; color:var(--ink); margin-bottom:6px; }
.content .enquiry input, .content .enquiry textarea{ width:100%; font:inherit; font-size:15px; color:var(--ink); background:var(--ivory); border:1px solid var(--line); border-radius:5px; padding:11px 13px; }
.content .enquiry textarea{ min-height:104px; resize:vertical; line-height:1.5; }
.content .enquiry input:focus, .content .enquiry textarea:focus{ outline:none; border-color:var(--charcoal); }
.content .enquiry .avail{ font-size:13px; color:var(--stone); margin-top:16px; }

/* ladder */
.content .ladder{ background:var(--charcoal); color:#E9E3D6; }
.content .ladder .grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.content .ladder h3{ font-family:"Cormorant Garamond",Georgia,serif; font-weight:600; font-size:24px; color:#FBF7EE; }
.content .ladder p{ font-size:15px; color:#CFC8B9; margin:8px 0 14px; }
.content .ladder a{ color:#E9B7C2; font-weight:700; font-size:15px; }
.content .ladder a:hover{ text-decoration:underline; }

.content footer.ft{ background:var(--ivory); padding:50px 0 56px; border-top:1px solid var(--line); }
.content footer.ft .brand{ margin-bottom:16px; }
.content footer.ft p{ font-size:12.5px; line-height:1.7; color:var(--stone); max-width:none; margin-bottom:12px; }

@media (max-width:860px){
  .content .photo-top{padding:0;}
  .content section{ padding:64px 0; }
  .content .hero .grid, .content .bespoke .cols, .content .enquiry .grid, .content .ladder .grid{ grid-template-columns:1fr; }
  .content .hero .htext{ padding:56px 0 40px; }
  .content .hero h1{ font-size:40px; } .content h2.sec{ font-size:31px; }
  .content .hero .photo{ min-height:320px; order:-1; }
  .content .step{ grid-template-columns:1fr; gap:6px; }
  .content .step .no{ font-size:34px; }
}
@media print{ .content section{ padding:40px 0; break-inside:avoid; } }