/* Sand palette selected from the three Imagegen color mockups. */
:root{--sand:#d7c1a8;--sand-footer:#ccb49a;--brown:#3b2c23;--brown-muted:#594333;--sand-line:#987455}
.hero,.contact{background-color:var(--sand);color:var(--brown)}
.site-header{color:var(--brown)}
.hero-description,.contact-text,.contact .handwriting,.contact .eyebrow{color:var(--brown)}
.hero .heart-divider,.contact-heart{color:var(--sand-line)}
.hero .heart-divider span{background:linear-gradient(90deg,#98745570,var(--sand-line))}
.hero .heart-divider span:last-child{background:linear-gradient(90deg,var(--sand-line),#98745570)}
.hero .button,.header-cta,.contact .button{background:var(--cream);color:var(--brown);border-color:#74553f}
.hero .button:hover,.header-cta:hover,.contact .button:hover{background:#fff7ec}
.menu-toggle{border-color:#74553f70}
.mobile-nav{background:#e1ceb8;color:var(--brown)}
.mobile-nav a{border-color:#98745570}
.mobile-nav a span,.mobile-nav p{color:var(--brown-muted)}
.site-footer{background:var(--sand-footer);color:var(--brown)}
.footer-bottom{color:var(--brown-muted);border-color:#74553f40}
.hero a:focus-visible,.site-header a:focus-visible,.site-header button:focus-visible,.contact a:focus-visible,.site-footer a:focus-visible,.site-footer button:focus-visible{outline-color:var(--brown)}
/* Remove the mockup background in rendering; keep source portrait RGB values. */
/* The frame and transparency are compiled into the PNG for stable mobile scrolling. */
.mockup-portrait{filter:none;mask-image:none;-webkit-mask-image:none}
.mockup-portrait>img{position:static;width:100%;max-width:100%;height:auto;left:auto;top:auto}
