 :root{--pink:#f62d86;--ink:#26303a;--muted:#65717c;--pale:#fff0f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65;background:#fff}a{color:inherit}a:hover{color:var(--pink)}.container{width:min(1120px,92%);margin:auto}.site-header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #f1edf0}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:94px}.logo{width:270px;max-width:100%;height:auto;display:block}.nav-links{display:flex;gap:24px;align-items:center}.nav-links a{text-decoration:none;font-size:14px;font-weight:700}.nav-links a.active{color:var(--pink)}.btn{display:inline-block;background:var(--pink);color:white!important;text-decoration:none;border-radius:5px;padding:12px 22px;font-weight:700;box-shadow:0 5px 14px #f62d8626}.btn:hover{background:#d91e70}.btn-outline{display:inline-block;border:2px solid var(--pink);border-radius:5px;padding:10px 18px;color:var(--pink);font-weight:700;text-decoration:none}.hero{background:linear-gradient(90deg,#fff 0%,#fff 36%,#ffffffea 48%,#ffffff24 71%),url('assets/pink-house.webp') right center/auto 100% no-repeat;min-height:485px;display:flex;align-items:center}.hero-content{padding:65px 0;max-width:680px;margin-left:max(4%,calc((100vw - 1120px)/2))}.hero h1{font-size:clamp(40px,5.5vw,70px);line-height:1.07;letter-spacing:-2px;margin:0 0 24px}.pink{color:var(--pink)}.lead{font-size:22px;font-weight:700;line-height:1.4}.hero p{max-width:575px}.trust{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;margin-top:35px;font-weight:700}.trust span:before{content:'✓';color:var(--pink);margin-right:8px;font-size:20px}.section{padding:75px 0}.section h2{font-size:clamp(30px,3.8vw,46px);line-height:1.15;margin:0 0 15px;letter-spacing:-.7px}.section-intro{max-width:750px;margin:0 auto 35px;color:var(--muted)}.center{text-align:center}.soft{background:linear-gradient(115deg,#fff4f9,#ffe5ef)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid.three{grid-template-columns:repeat(3,1fr)}.grid.two{grid-template-columns:repeat(2,1fr)}.tile{background:#fff;border:1px solid #eee5ea;border-radius:9px;padding:26px 21px;box-shadow:0 7px 24px #1d22300a}.tile h3{font-size:19px;line-height:1.25;margin:10px 0}.tile p{font-size:15px;color:#53606b;margin:0}.tile .icon{font-size:33px;color:var(--pink)}.eyebrow{color:var(--pink);font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.split{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:45px}.portrait{max-width:100%;border-radius:10px;max-height:350px;object-fit:cover;object-position:center top}.quote{font-style:italic;font-size:21px;max-width:850px;margin:25px auto}.cta{background:var(--pink);color:white;padding:45px 0}.cta h2{font-size:36px;margin:0 0 10px}.cta .btn{background:white;color:var(--pink)!important}.footer{background:#28323b;color:#e5e9ec;padding:30px 0;font-size:13px}.footer a{color:white}.footer .container{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.page-hero{background:linear-gradient(110deg,#fff1f7,#fff);padding:70px 0 55px}.page-hero h1{font-size:clamp(39px,5vw,60px);line-height:1.12;margin:0 0 18px}.page-hero p{max-width:780px;font-size:19px}.prose{max-width:850px}.prose p{margin:0 0 19px}.price{font-size:31px;font-weight:800;color:var(--pink);margin:12px 0}.small{font-size:13px;color:var(--muted)}.faq details{border-bottom:1px solid #e9e3e7;padding:19px 0}.faq summary{font-size:19px;font-weight:700;cursor:pointer;list-style:none}.faq summary:after{content:'+';float:right;color:var(--pink)}.faq details[open] summary:after{content:'−'}.faq details p{color:#56616a;margin:14px 0 4px}.notice{background:#fff3f8;padding:18px 22px;border-left:4px solid var(--pink);border-radius:4px}.services-list{margin-top:35px}.services-list .tile{height:100%}@media(max-width:900px){.nav{flex-wrap:wrap;padding:15px 0}.nav-links{gap:14px;flex-wrap:wrap}.nav .btn{display:none}.grid{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(2,1fr)}.hero{background:linear-gradient(90deg,#fff 0%,#ffffffed 48%,#ffffff77 100%),url('assets/pink-house.webp') right center/auto 100% no-repeat}.hero-content{margin-left:4%;padding-right:4%}.split{grid-template-columns:1fr 1fr}}@media(max-width:600px){.nav{justify-content:center}.logo{width:220px}.nav-links{justify-content:center;font-size:12px;gap:13px}.nav-links a{font-size:12px}.hero{min-height:0;background:linear-gradient(90deg,#fffffff5,#ffffffd5),url('assets/pink-house.webp') center/cover}.hero-content{padding:65px 0}.hero h1{letter-spacing:-1px}.grid,.grid.three,.grid.two,.split{grid-template-columns:1fr}.section{padding:55px 0}.trust{gap:10px}.cta h2{font-size:28px}}
/* Refinements for the complete five-page review */
.icon-slot{height:45px;margin-bottom:8px;position:relative} .icon-slot:after{content:'';display:block;width:48px;height:2px;background:var(--pink);opacity:.25;position:absolute;bottom:7px;left:0} .feature-photo{width:100%;border-radius:10px;object-fit:cover;aspect-ratio:3/2}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.credentials>div{background:#fff2f7;border-radius:8px;padding:22px;text-align:center}.credentials strong{display:block;font-size:31px;color:var(--pink)}.credentials span{display:block;font-size:13px;color:var(--muted)}.contact-email{background:#fff1f7;padding:25px;border-radius:9px;margin:30px 0}.contact-email a{color:var(--pink);font-weight:800;font-size:clamp(20px,3vw,30px);overflow-wrap:anywhere}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.services-list .tile h3{margin-top:0}.faq summary{padding-right:35px;position:relative}.faq summary:after{position:absolute;right:3px;top:0}@media(max-width:650px){.credentials{grid-template-columns:1fr}.credentials>div{padding:15px}.page-hero{padding:48px 0 38px}}

/* Refined heading hierarchy: page titles remain dominant */
.section h2{font-size:clamp(27px,3vw,37px);letter-spacing:-.45px}
.cta h2{font-size:clamp(25px,2.7vw,32px)}
.tile h3{font-size:18px}

/* 30 October homepage refinements */
.btn,.btn-outline{display:inline-block;background:var(--pink);color:#fff!important;border:2px solid var(--pink);border-radius:5px;padding:10px 20px;font-weight:700;text-decoration:none;box-shadow:0 5px 14px #f62d8626;transition:background .2s ease,border-color .2s ease}
.btn:hover,.btn-outline:hover{background:#d91e70;border-color:#d91e70;color:#fff!important}
.cta .btn{background:#fff;border-color:#fff;color:var(--pink)!important;box-shadow:0 5px 15px #7b0b3a25}
.cta .btn:hover{background:#fff0f6;border-color:#fff0f6;color:var(--pink)!important}
/* Larger approved photograph, softly blended into the white page */
.split{grid-template-columns:1fr 1fr;align-items:stretch;gap:24px}
.split>div{align-self:center}
.feature-photo{height:100%;min-height:370px;max-height:510px;aspect-ratio:auto;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 100%);border-radius:0 10px 10px 0}
@media(max-width:700px){.split{grid-template-columns:1fr}.feature-photo{height:auto;min-height:0;max-height:none;aspect-ratio:3/2;mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 100%)}}

/* Final assembly refinements */
.about-portrait-layout{grid-template-columns:1.2fr .8fr;align-items:center;gap:45px}
.about-portrait-layout>div{align-self:center}
.rtpi-mark{display:flex;justify-content:center;margin:25px auto 0;opacity:.9}
.rtpi-mark img{display:block;width:200px;max-width:55%;height:auto}
@media(max-width:700px){.about-portrait-layout{grid-template-columns:1fr;gap:26px}}

/* Final approved icon line drawings */
.icon-slot{height:72px;margin-bottom:12px;display:flex;align-items:center}
.icon-slot:after{display:none}
.icon-slot img{display:block;width:67px;height:67px;object-fit:contain}
/* Separate paragraphs in service descriptions */
.services-list .tile p + p{margin-top:19px}
/* RTPI official landscape mark, visually subordinate to Pink Planning branding */
.rtpi-mark{margin:28px auto 0;opacity:1}
.rtpi-mark img{width:260px;max-width:80%;height:auto}

/* Approved icon artwork cropped directly from the signed-off reference image */
.icon-slot img{width:72px;height:72px;object-fit:contain}
/* Larger official RTPI member mark for legibility */
.rtpi-mark{margin:34px auto 0}
.rtpi-mark img{width:440px;max-width:95%;height:auto}

/* Larger illustrated icons */
.icon-slot {
    height: 120px;
    margin-bottom: 12px;
}

.icon-slot img {
    width: 115px;
    height: 115px;
    object-fit: contain;
}

/* Icon 7 - larger, correctly positioned */
.icon-slot img[src*="icon-07"] {
    width: 155px;
    height: 155px;
    max-width: none;
    object-fit: contain;
    transform: translate(-18px, 0px);
}

.about-portrait-layout .portrait {
    justify-self: center;
}
/* Express services feature — Services & Fees page */
.express-section{padding-top:8px}
.express-panel{background:#fff0f5;border:1px solid #f3cbdc;border-left:5px solid #d51e69;border-radius:12px;padding:30px 36px}
.express-eyebrow{font-size:12px;letter-spacing:.12em;font-weight:800;color:#b41958;margin-bottom:9px}
.express-panel h2{margin:0 0 14px;font-size:clamp(26px,3.5vw,36px);line-height:1.18;color:#333}
.express-panel h2 span{color:#c21862}
.express-panel h3{margin:0 0 12px;font-size:21px;color:#333}
.express-panel p{margin:0 0 12px;max-width:920px}
.express-panel .express-price{color:#9f174f;margin-top:15px}
.express-panel .express-note{font-size:14px;color:#555;margin-bottom:0}
@media(max-width:700px){.express-panel{padding:23px 20px}}

/* Bold express feature review - approved layout, high-contrast hot pink */
.express-panel{background:var(--pink);border:2px solid var(--pink);border-left:7px solid #d91e70;box-shadow:0 12px 28px rgba(130,20,70,.16)}
.express-panel,.express-panel h2,.express-panel h2 span,.express-panel h3,.express-panel p,.express-panel .express-price,.express-panel .express-note,.express-panel .express-eyebrow{color:#fff}
.express-panel .express-eyebrow{letter-spacing:.16em}
.express-panel .express-price{font-size:19px;font-weight:800}
