/* Maria Ball — About Me page (editorial v3, dense + decorative).
   Tightened spacing, deep-rose pull-quote moment, drop-caps, paper-letter
   ornaments, SVG step icons, qualifier badges, signature card.
   All rules scoped to body.page-about-me. */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Caveat:wght@500;600;700&display=swap');

/* ============== Tokens ============== */
body.page-about-me{ --rose:#C77A6F; --rose-dark:#A85D52; --rose-soft:#E7ACA3; --blush:#F5DCD8; --cream:#FDF7F5; --paper:#FFFBF8; --ink:#3A2E2E; --body:#5C4F4F; --muted:#9A8888; }

body.page-about-me .mb-ab-eyebrow{
	display:inline-block;
	font-size:12.5px;font-weight:700;
	letter-spacing:3.6px;text-transform:uppercase;
	color:var(--rose);margin:0 0 16px;
}
body.page-about-me .mb-ab-h1,
body.page-about-me .mb-ab-h2,
body.page-about-me .mb-ab-quote-text,
body.page-about-me .mb-ab-letter h2,
body.page-about-me .mb-ab-step-title,
body.page-about-me .mb-ab-qual-h3,
body.page-about-me .mb-ab-step-num,
body.page-about-me .mb-ab-pulled{
	font-family:'Cormorant Garamond', Georgia, 'Times New Roman', serif;
}
body.page-about-me .mb-ab-h1{font-size:62px;line-height:1.05;font-weight:500;color:var(--ink);margin:0 0 22px;letter-spacing:-1px;}
body.page-about-me .mb-ab-h2{font-size:44px;line-height:1.12;font-weight:500;color:var(--ink);margin:0 0 18px;letter-spacing:-.5px;}
body.page-about-me .mb-ab-lead{font-size:19px;line-height:1.6;color:var(--ink);margin:0 0 16px;}
body.page-about-me .mb-ab-body{font-size:16.5px;line-height:1.78;color:var(--body);margin:0 0 16px;}
body.page-about-me .mb-ab-body strong{color:var(--ink);font-weight:600;}

/* ============== Hero (Section 1) ============== */
body.page-about-me .mb-ab-tag-row{
	display:flex;gap:8px;flex-wrap:wrap;margin-top:6px;
}
body.page-about-me .mb-ab-tag{
	display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:2.2px;
	text-transform:uppercase;color:var(--rose);
	padding:7px 14px;border-radius:999px;
	background:rgba(199,122,111,0.10);border:1px solid rgba(199,122,111,0.22);
}
body.page-about-me .mb-ab-hero-photo-wrap{
	position:relative;display:block;
}
body.page-about-me .mb-ab-hero-photo-wrap::before{
	content:"";position:absolute;
	inset:30px -28px -28px 30px;
	background:radial-gradient(circle at center, rgba(231,172,163,0.55) 0%, rgba(231,172,163,0) 70%);
	border-radius:18px;z-index:0;filter:blur(14px);
}
body.page-about-me .mb-ab-hero-photo-wrap::after{
	/* offset rose plate behind photo */
	content:"";position:absolute;
	inset:18px -18px -18px 18px;
	background:var(--blush);border-radius:14px;z-index:0;
}
body.page-about-me .mb-ab-hero-img{
	display:block;width:100%;height:auto;
	border-radius:14px;
	box-shadow:0 32px 80px -20px rgba(58,46,46,0.22);
	object-fit:cover;position:relative;z-index:1;
}
/* Floating photo caption stamp */
body.page-about-me .mb-ab-hero-stamp{
	position:absolute;left:-18px;bottom:24px;z-index:2;
	background:#FFFFFF;border:1px solid rgba(199,122,111,0.22);
	padding:10px 16px;border-radius:14px;
	font-family:'Caveat',cursive;font-weight:600;font-size:22px;
	color:var(--rose);
	box-shadow:0 18px 40px -16px rgba(58,46,46,0.18);
	transform:rotate(-3deg);
	white-space:nowrap;
}

/* ============== Pull-quote (Section 2) — DEEP ROSE moment ============== */
body.page-about-me .mb-ab-quote-block{
	max-width:920px;margin:0 auto;text-align:center;position:relative;
}
body.page-about-me .mb-ab-quote-avatar{
	display:inline-block;width:72px;height:72px;border-radius:50%;
	overflow:hidden;border:3px solid #FFFFFF;
	box-shadow:0 12px 30px -10px rgba(0,0,0,0.30);
	margin-bottom:24px;
}
body.page-about-me .mb-ab-quote-avatar img{
	width:100%;height:100%;object-fit:cover;display:block;
}
body.page-about-me .mb-ab-quote-block::before{
	content:"\201C";display:block;line-height:.6;
	font-family:'Cormorant Garamond', Georgia, serif;
	font-size:130px;font-weight:500;color:rgba(255,255,255,0.35);
	margin-bottom:-8px;
}
body.page-about-me .mb-ab-quote-text{
	font-style:italic;font-weight:500;
	font-size:40px;line-height:1.28;color:#FFFFFF;
	margin:0 auto 26px;max-width:780px;
}
body.page-about-me .mb-ab-quote-divider{
	display:flex;align-items:center;justify-content:center;gap:14px;
	margin:0 auto;color:rgba(255,255,255,0.85);
}
body.page-about-me .mb-ab-quote-divider::before,
body.page-about-me .mb-ab-quote-divider::after{
	content:"";display:inline-block;width:48px;height:1px;background:rgba(255,255,255,0.55);
}
body.page-about-me .mb-ab-quote-attr{
	font-size:11.5px;letter-spacing:3.2px;text-transform:uppercase;font-weight:700;
}

/* ============== My Story (Section 3) ============== */
body.page-about-me .mb-ab-story-photo-wrap{
	position:relative;display:block;
}
body.page-about-me .mb-ab-story-photo-wrap::before{
	content:"";position:absolute;
	inset:-20px 20px 20px -20px;
	background:rgba(231,172,163,0.28);border-radius:14px;z-index:0;
}
body.page-about-me .mb-ab-story-photo{
	display:block;width:100%;height:auto;
	border-radius:14px;
	box-shadow:0 30px 70px -20px rgba(58,46,46,0.22);
	object-fit:cover;position:relative;z-index:1;
}
/* Drop-cap on first paragraph */
body.page-about-me .mb-ab-dropcap::first-letter{
	float:left;
	font-family:'Cormorant Garamond', Georgia, serif;
	font-size:74px;line-height:.85;font-weight:600;
	color:var(--rose);
	margin:6px 12px 0 0;padding:0;
}
/* Pulled-quote inset within the story */
body.page-about-me .mb-ab-pulled{
	display:block;
	margin:24px 0 24px;padding:18px 0 18px 22px;
	border-left:3px solid var(--rose);
	font-size:24px;line-height:1.4;font-weight:600;font-style:italic;
	color:var(--ink);
}

/* ============== Manifesto Letter (Section 4) ============== */
body.page-about-me .mb-ab-letter{
	max-width:780px;margin:0 auto;
	background:var(--paper);
	background-image:
		repeating-linear-gradient(180deg, transparent 0 33px, rgba(199,122,111,0.04) 33px 34px);
	border:1px solid rgba(199,122,111,0.22);
	border-radius:8px;
	padding:48px 60px 44px;
	box-shadow:0 30px 80px -28px rgba(58,46,46,0.22);
	position:relative;
}
/* Decorative top edge */
body.page-about-me .mb-ab-letter::before{
	content:"";
	position:absolute;top:-1px;left:36px;right:36px;height:6px;
	background:linear-gradient(90deg, transparent 0%, var(--rose-soft) 50%, transparent 100%);
	opacity:.6;border-radius:2px;
}
/* Brand-mark stamp in upper right (logo silhouette in a paper disc) */
body.page-about-me .mb-ab-letter-stamp{
	position:absolute;top:14px;right:18px;
	width:78px;height:78px;border-radius:50%;
	background:#FFFFFF;
	box-shadow:0 8px 18px -8px rgba(168,93,82,0.45),
		inset 0 0 0 2px rgba(199,122,111,0.32);
	display:flex;align-items:center;justify-content:center;
	transform:rotate(-6deg);
	padding:8px;
	overflow:hidden;
}
body.page-about-me .mb-ab-letter-stamp img{
	display:block;height:100%;width:auto;max-height:100%;object-fit:contain;
}
body.page-about-me .mb-ab-letter-meta{
	display:flex;justify-content:space-between;align-items:baseline;gap:12px;
	margin-bottom:18px;
	padding-right:90px; /* reserve space for the stamp in the upper-right corner */
	font-size:11px;letter-spacing:2px;text-transform:uppercase;
	color:var(--rose);font-weight:700;
	flex-wrap:nowrap;
}
body.page-about-me .mb-ab-letter-meta span{
	white-space:nowrap;
}
body.page-about-me .mb-ab-letter-meta-rt{color:var(--muted);font-weight:500;letter-spacing:1.6px;}
body.page-about-me .mb-ab-letter h2{
	text-align:center;font-size:34px;line-height:1.2;
	margin:0 0 28px;
}
body.page-about-me .mb-ab-letter p{
	font-family:'Cormorant Garamond', Georgia, serif;
	font-size:21px;line-height:1.6;color:var(--ink);font-style:italic;font-weight:500;
	margin:0 0 12px;position:relative;padding-left:22px;
}
body.page-about-me .mb-ab-letter p::before{
	content:"";position:absolute;left:0;top:.66em;
	width:9px;height:9px;border-radius:50%;
	background:var(--rose-soft);
}
body.page-about-me .mb-ab-signature{
	display:block;margin-top:30px;text-align:right;
	font-family:'Caveat',cursive;font-weight:700;
	font-size:42px;color:var(--rose);line-height:1;
}
body.page-about-me .mb-ab-signature-name{
	display:block;margin-top:6px;font-family:inherit;
	font-size:11.5px;letter-spacing:2.2px;text-transform:uppercase;
	color:var(--muted);font-weight:600;text-align:right;
}

/* ============== How We Work — three steps with icons + connectors (Section 5) ============== */
body.page-about-me .mb-ab-section-intro{
	max-width:780px;margin:0 auto 44px;text-align:center;
}
body.page-about-me .mb-ab-steps{
	position:relative;
	display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px;
}
/* Connecting dotted line between cards (desktop) */
body.page-about-me .mb-ab-steps::before{
	content:"";position:absolute;left:8%;right:8%;top:62px;height:2px;
	background-image:linear-gradient(to right, rgba(199,122,111,0.45) 60%, transparent 0%);
	background-size:14px 2px;background-repeat:repeat-x;z-index:0;
}
body.page-about-me .mb-ab-step{
	position:relative;
	padding:30px 26px 26px;
	background:#FFFFFF;
	border:1px solid rgba(231,172,163,0.22);
	border-radius:18px;
	box-shadow:0 16px 44px -22px rgba(58,46,46,0.14);
	transition:transform .35s ease, box-shadow .35s ease;
	z-index:1;
}
body.page-about-me .mb-ab-step:hover{
	transform:translateY(-4px);
	box-shadow:0 28px 60px -22px rgba(58,46,46,0.18);
}
body.page-about-me .mb-ab-step-icon{
	display:inline-flex;align-items:center;justify-content:center;
	width:48px;height:48px;border-radius:50%;
	background:rgba(231,172,163,0.20);color:var(--rose);
	margin-bottom:16px;
}
body.page-about-me .mb-ab-step-icon svg{width:24px;height:24px;}
body.page-about-me .mb-ab-step-num{
	position:absolute;top:14px;right:18px;line-height:1;
	font-size:50px;font-weight:500;font-style:italic;
	color:rgba(231,172,163,0.55);letter-spacing:-2px;
}
body.page-about-me .mb-ab-step-label{
	display:inline-block;
	font-size:11px;letter-spacing:3.2px;text-transform:uppercase;
	color:var(--rose);font-weight:700;margin-bottom:10px;
}
body.page-about-me .mb-ab-step-title{
	font-size:23px;line-height:1.25;font-weight:600;
	color:var(--ink);margin:0 0 12px;
}
body.page-about-me .mb-ab-step-body{
	font-size:15px;line-height:1.7;color:var(--body);margin:0;
}

/* ============== Qualifier (Section 6) — for you / not for you ============== */
body.page-about-me .mb-ab-qualifier{
	display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:stretch;
	max-width:1100px;margin:0 auto;
}
body.page-about-me .mb-ab-qual-card{
	padding:34px 32px 28px;
	border-radius:18px;
	border:1px solid rgba(199,122,111,0.22);
	background:#FFFFFF;
	box-shadow:0 16px 44px -22px rgba(58,46,46,0.10);
	position:relative;
}
body.page-about-me .mb-ab-qual-card.is-no{
	background:rgba(255,251,249,0.65);
	border-style:dashed;
	border-color:rgba(106,93,93,0.24);
	box-shadow:none;
}
/* Center pivot — small "OR" between the two cards */
body.page-about-me .mb-ab-qual-pivot{
	display:flex;align-items:center;justify-content:center;
	font-family:'Cormorant Garamond', Georgia, serif;
	font-style:italic;font-size:30px;color:var(--rose);
	font-weight:500;
	width:48px;
}
body.page-about-me .mb-ab-qual-h3{
	display:flex;align-items:center;gap:14px;
	font-size:24px;font-weight:600;color:var(--ink);
	margin:0 0 18px;padding-bottom:14px;
	border-bottom:2px solid var(--rose);
}
body.page-about-me .mb-ab-qual-card.is-no .mb-ab-qual-h3{
	border-bottom-color:rgba(106,93,93,0.24);
	color:var(--muted);
}
body.page-about-me .mb-ab-qual-badge{
	display:inline-flex;align-items:center;justify-content:center;
	width:30px;height:30px;border-radius:50%;
	background:var(--rose);color:#FFFFFF;flex-shrink:0;
}
body.page-about-me .mb-ab-qual-card.is-no .mb-ab-qual-badge{
	background:transparent;color:var(--muted);
	border:1.5px dashed rgba(106,93,93,0.50);
}
body.page-about-me .mb-ab-qual-badge svg{width:14px;height:14px;}
body.page-about-me .mb-ab-qual-list{
	list-style:none !important;margin:0;padding:0;
}
body.page-about-me .mb-ab-qual-list li{
	position:relative;padding:8px 0 8px 28px;
	font-size:15px;line-height:1.55;color:var(--ink);
	list-style:none !important;
}
body.page-about-me .mb-ab-qual-list li::before{display:none !important;}
body.page-about-me .mb-ab-qual-card:not(.is-no) .mb-ab-qual-list li::after{
	content:"";position:absolute;left:0;top:13px;
	width:14px;height:9px;
	border-left:2px solid var(--rose);border-bottom:2px solid var(--rose);
	transform:rotate(-45deg);
}
body.page-about-me .mb-ab-qual-card.is-no .mb-ab-qual-list li{color:var(--muted);font-style:italic;}
body.page-about-me .mb-ab-qual-card.is-no .mb-ab-qual-list li::after{
	content:"";position:absolute;left:0;top:18px;
	width:12px;height:1.5px;background:rgba(106,93,93,0.50);
}

/* ============== Soft Invitation — signature card (Section 7) ============== */
body.page-about-me .mb-ab-invitation{
	display:flex;flex-direction:row;align-items:center;gap:36px;
	max-width:840px;margin:0 auto;text-align:left;
	background:var(--paper);
	border:1px solid rgba(199,122,111,0.22);
	border-radius:18px;padding:32px 36px;
	box-shadow:0 24px 60px -28px rgba(58,46,46,0.18);
}
body.page-about-me .mb-ab-invitation-photo{
	width:120px;height:120px;border-radius:50%;
	overflow:hidden;flex-shrink:0;
	border:3px solid #FFFFFF;
	box-shadow:0 14px 30px -12px rgba(58,46,46,0.30);
	background:var(--blush);
}
body.page-about-me .mb-ab-invitation-photo img{
	width:100%;height:100%;object-fit:cover;display:block;
}
body.page-about-me .mb-ab-invitation-text{flex:1;}
body.page-about-me .mb-ab-invitation .mb-ab-h2{font-size:32px;margin-bottom:10px;}
body.page-about-me .mb-ab-invitation .mb-ab-body{margin-bottom:16px;font-size:15.5px;}
body.page-about-me .mb-ab-cta-btn{
	display:inline-flex;align-items:center;gap:10px;
	padding:14px 28px;border-radius:999px;
	background:var(--rose) !important;color:#FFFFFF !important;
	font-size:14.5px;font-weight:600;letter-spacing:.3px;
	text-decoration:none !important;
	box-shadow:0 12px 28px -14px rgba(168,93,82,0.45);
	transition:transform .25s ease, box-shadow .25s ease, gap .25s ease;
}
body.page-about-me .mb-ab-cta-btn:hover{
	background:#3A4A47 !important;color:#FFFFFF !important;
	transform:translateY(-2px);
	box-shadow:0 18px 36px -14px rgba(30,42,40,0.55);
	gap:14px;
}
body.page-about-me .mb-ab-cta-fineprint{
	display:inline-block;margin-left:14px;
	font-size:13px;color:var(--muted);font-style:italic;
}

/* ============== Hero scoped decorations ============== */
body.page-about-me .elementor-element-ab1s{position:relative;overflow:hidden;}
body.page-about-me .elementor-element-ab1s::before{
	content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
	background-image:
		radial-gradient(circle 380px at -40px -40px, rgba(231,172,163,0.45) 0%, rgba(231,172,163,0) 75%);
	filter:blur(6px);
}
body.page-about-me .elementor-element-ab1s > *{position:relative;z-index:1;}

/* ============== Responsive ============== */
@media (max-width:1024px){
	body.page-about-me .mb-ab-h1{font-size:46px;}
	body.page-about-me .mb-ab-h2{font-size:34px;}
	body.page-about-me .mb-ab-quote-text{font-size:30px;}
	body.page-about-me .mb-ab-steps{grid-template-columns:1fr;gap:18px;}
	body.page-about-me .mb-ab-steps::before{display:none;}
	body.page-about-me .mb-ab-qualifier{grid-template-columns:1fr;}
	body.page-about-me .mb-ab-qual-pivot{height:auto;padding:6px 0;}
	body.page-about-me .mb-ab-letter{padding:38px 32px;}
	body.page-about-me .mb-ab-letter h2{font-size:28px;}
	body.page-about-me .mb-ab-invitation{flex-direction:column;text-align:center;padding:30px 26px;}
}
@media (max-width:767px){
	body.page-about-me .mb-ab-h1{font-size:36px;}
	body.page-about-me .mb-ab-h2{font-size:28px;}
	body.page-about-me .mb-ab-quote-text{font-size:24px;}
	body.page-about-me .mb-ab-letter{padding:30px 22px;}
	body.page-about-me .mb-ab-signature{font-size:36px;}
	body.page-about-me .mb-ab-hero-stamp{display:none;}
	body.page-about-me .mb-ab-letter-stamp{width:56px;height:56px;top:10px;right:10px;padding:6px;}
	body.page-about-me .mb-ab-letter-meta{
		padding-right:66px;
		gap:10px;
		font-size:10px;
		letter-spacing:1.6px;
	}
}
