:root {--cream:#f8f5f0;--ivory:#fffcf8;--paper:#f4eee6;--tan:#e8d9ca;--rose:#eee2d6;--espresso:#352921;--ink:#40372f;--brown:#766051;--muted:#756c63;--line:#ded5cd;--serif:'Playfair Display',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--script:'Great Vibes','Brush Script MT',cursive}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font:400 15px/1.75 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ab8c74;outline-offset:3px}.container{width:min(1280px,calc(100% - 84px));margin-inline:auto}.skip{position:absolute;transform:translateY(-200%);z-index:40;background:white;color:black;padding:8px 15px}.skip:focus{transform:none}.top-line{padding:8px 12px;background:#392c26;color:#fffaf7;text-align:center;font-size:9px;letter-spacing:3.1px;font-weight:600}.site-header{z-index:30;position:sticky;top:0;border-bottom:1px solid #e9e1d8;background:rgba(255,252,248,.97);backdrop-filter:blur(18px)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;flex-direction:column;width:max-content;text-align:center;align-items:center;line-height:1.1;flex-shrink:0}.brand span{font-family:var(--sans);font-size:21px;letter-spacing:5.2px;font-weight:500;color:#302722;white-space:nowrap}.brand small{font-size:9px;letter-spacing:8.2px;padding-left:8.2px;margin-top:9px;color:#967b68;font-weight:600;white-space:nowrap}.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,1.4vw,25px)}.primary-nav a{color:#62554b;text-transform:uppercase;letter-spacing:1.3px;font-weight:600;font-size:9px;position:relative;white-space:nowrap;padding:9px 0}.primary-nav a:after{position:absolute;content:'';background:#a38b7a;bottom:4px;left:0;width:0;height:1px;transition:width .25s}.primary-nav a:hover:after,.primary-nav a.active:after{width:100%}.primary-nav a.active{color:#30251d}.primary-nav a[href="inquire.html"]{color:white;background:var(--espresso);padding:13px 17px}.primary-nav a[href="inquire.html"]:after{display:none}.primary-nav a[href="inquire.html"]:hover{background:#665041}.menu-toggle{display:none;appearance:none;background:none;border:0;padding:10px;width:44px;height:44px}.menu-toggle span{display:block;width:23px;height:1px;background:var(--espresso);margin:6px auto;transition:.2s}.overline{display:block;font:700 10px/1.6 var(--sans);letter-spacing:3.6px;text-transform:uppercase;color:#9a7d6b}.btn{border:1px solid var(--espresso);min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font:600 10px var(--sans);letter-spacing:1.8px;text-transform:uppercase;padding:14px 21px;transition:background .2s,color .2s,transform .2s}.btn span{font-size:16px;line-height:1}.btn:hover{transform:translateY(-2px)}.btn-solid{color:white;background:var(--espresso)}.btn-solid:hover{color:var(--espresso);background:transparent}.btn-outline{background:transparent;color:var(--espresso)}.btn-outline:hover{background:var(--espresso);color:white}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #8c7666;padding-bottom:7px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:2px}.text-link:hover{color:#a18169}.hero{min-height:720px;display:grid;grid-template-columns:44fr 56fr;align-items:center;gap:10px;padding-block:65px 90px}.hero-copy{padding:30px 5% 45px 4%;z-index:2}.hero-copy h1{margin:25px 0 25px;font:400 clamp(59px,6vw,96px)/1.13 var(--serif);letter-spacing:-2.3px;color:var(--espresso)}h1 em,h2 em{font-weight:400;font-style:italic;color:#967c6b}.hero-deck{font-size:16px;line-height:1.9;color:#6e6055;max-width:440px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.hero-loc{display:flex;align-items:center;gap:14px;color:#7c6a5f;text-transform:uppercase;font-size:9px;letter-spacing:2px;font-weight:600;margin-top:61px}.hero-loc .line{height:1px;width:55px;background:#ad9584}.hero-visual{height:min(650px,55vw);min-height:525px;position:relative;padding:0 4% 9% 8%}.hero-primary{width:76%;height:89%;position:absolute;right:3%;top:0;overflow:hidden}.hero-primary img{object-position:51% 45%}.hero-offset{position:absolute;width:45%;height:44%;left:0;bottom:0;border:9px solid var(--ivory);overflow:hidden}.hero-offset img{object-position:50% 29%}.hero-stamp{position:absolute;right:0;bottom:13%;width:125px;height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#e8ddd1;border:1px solid #d1bfae;color:#725847;transform:rotate(8deg);text-transform:uppercase;text-align:center;letter-spacing:2px;font-size:11px;line-height:1.1}.hero-stamp i{font:34px/1.4 var(--script);letter-spacing:0;text-transform:none;color:#553c30}.statement-strip{background:#efe6de;border-top:1px solid #e8dacc;border-bottom:1px solid #e8dacc;padding:21px 0}.statement-strip p{margin:0;color:#8d7567;font:500 11px var(--sans);text-transform:uppercase;letter-spacing:2.6px;text-align:center}.statement-strip span{font-size:12px;margin:0 17px;color:#aa8975}.section{padding-block:115px}.center-intro{text-align:center;max-width:690px;margin:0 auto 55px}.center-intro h2,.last-cta h2,.split-heading h2,.sessions-text h2,.sessions-label h2{font:400 clamp(34px,4.3vw,56px)/1.3 var(--serif);color:var(--espresso);letter-spacing:-1px;margin:17px 0}.center-intro p{font-size:15px;color:var(--muted);margin:0}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.category-tile{display:block;min-width:0}.category-image{height:430px;overflow:hidden;background:var(--paper)}.category-image img{transition:transform .5s ease}.category-tile:hover img{transform:scale(1.04)}.category-caption{display:flex;justify-content:space-between;align-items:end;padding:20px 0}.category-caption span{font-size:10px;color:#a38877;letter-spacing:2px}.category-caption h3{margin:5px 0 0;font:400 26px var(--serif)}.category-caption b{font:400 25px var(--sans);color:#8b715d}.center-link{text-align:center;margin-top:30px}.about-feature{background:var(--paper);padding:100px 0}.about-grid{display:grid;grid-template-columns:47fr 53fr;align-items:center;gap:7%}.about-feature-img{height:620px}.about-feature-img img{object-position:center 30%}.about-feature-copy{padding:25px 17% 25px 0}.about-feature-copy h2,.contact-panel h2{font:400 clamp(45px,5vw,68px)/1.16 var(--serif);color:var(--espresso);margin:25px 0}.about-feature-copy p,.contact-panel p{color:#6b5e54;font-size:15px;margin:18px 0;line-height:1.95}.about-feature-copy .btn{margin-top:19px}.section-investment{padding-block:118px}.split-heading{display:grid;grid-template-columns:60fr 40fr;gap:5%;align-items:end}.split-heading p{margin-bottom:30px;max-width:385px;color:var(--muted)}.quote-banner{padding:110px 0;background:#d8c8b9;text-align:center}.quote-banner .container{max-width:970px}.quote-banner .overline{color:#694e3e}.quote-banner blockquote{font:400 clamp(28px,3.7vw,48px)/1.5 var(--serif);color:#46362d;margin:25px 0 27px}.quote-banner p{font:500 12px var(--sans);color:#765d4e}.last-cta{text-align:center;padding:100px 10px 130px}.last-cta h2{margin:17px auto}.last-cta p{color:var(--muted);margin:0 0 29px}.site-footer{background:#392d27;color:#e9ded5}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:55px;padding:70px 0 60px}.brand-footer span{color:#fff8f2}.brand-footer small{color:#c7af9c}.footer-main p{font-size:13px;line-height:1.85;color:#c6b6aa;max-width:340px;margin-top:26px}.footer-area{font-size:10px;letter-spacing:1px;color:#b49d8c}.footer-nav{display:flex;align-items:start;flex-direction:column;gap:11px}.footer-nav strong{font:600 10px var(--sans);color:#d8c5b6;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:13px}.footer-nav a,.footer-nav .facebook-label{font-size:12px;color:#c9b7aa}.footer-nav a:hover{color:white}.footer-bottom{border-top:1px solid #65544a;display:flex;justify-content:space-between;gap:20px;padding:23px 0;font-size:10px;letter-spacing:1px;color:#bdada2}.page-title{text-align:center;max-width:900px;padding:86px 0 55px}.page-title h1{font:400 clamp(48px,5.7vw,80px)/1.26 var(--serif);letter-spacing:-1.4px;color:var(--espresso);margin:17px 0 13px}.page-title p{color:#76665c;font-size:16px;max-width:630px;margin:0 auto}.page-about .page-title{padding-bottom:75px}.about-story{display:grid;grid-template-columns:45fr 55fr;gap:7%;align-items:center;margin-bottom:95px}.about-portrait{position:relative;height:690px}.about-portrait img{object-position:50% 50%}.portrait-tag{position:absolute;bottom:0;right:-5%;background:#efe8e0;color:#6e5343;letter-spacing:2px;font-size:10px;text-transform:uppercase;padding:18px 25px}.prose{color:#63574e;font-size:15px;line-height:2.05}.prose h2{font:400 44px var(--serif);margin:10px 0 27px;color:#3d2e25}.prose p{margin:0 0 22px}.about-long{border-top:1px solid var(--line);padding-block:90px;display:grid;grid-template-columns:40fr 60fr;gap:7%}.reading-side h2{font:400 45px/1.3 var(--serif);color:#3b2b21;margin:20px 0}.prose-reading .prose{max-width:630px}.about-bottom-photo{height:330px;overflow:hidden}.about-bottom-photo img{object-position:center 55%}.portfolio-section{padding-bottom:35px}.filter-list{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:50px}.filter{background:none;border:1px solid #d7c9bf;color:#68574b;text-transform:uppercase;font-size:10px;letter-spacing:1.7px;padding:12px 17px;font-weight:600}.filter:hover,.filter.active{color:white;background:var(--espresso);border-color:var(--espresso)}.photo-gallery{columns:3;column-gap:19px}.photo-card{display:inline-block;width:100%;position:relative;margin:0 0 19px;break-inside:avoid;overflow:hidden;background:#eee5dd}.photo-holder{height:auto}.photo-holder img{height:auto;max-width:100%;object-fit:contain;transition:transform .4s;display:block}.photo-card:hover img{transform:scale(1.025)}.photo-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f6efe8;padding:9px 13px;font-size:11px}.photo-caption span{text-transform:uppercase;color:#90786a;font-size:9px;letter-spacing:1px}.photo-caption strong{font:400 13px var(--serif)}.photo-card.is-hidden{display:none}.gallery-note{text-align:center;color:#86766b;font:italic 19px var(--serif);padding-top:35px}.lightbox:not([hidden]){position:fixed;inset:0;z-index:60;background:rgba(20,16,13,.96);display:flex;align-items:center;justify-content:center;padding:50px 9%;color:white}.lightbox img{height:auto;width:auto;max-width:95%;max-height:80vh;object-fit:contain}.lightbox button{border:0;background:rgba(255,255,255,.14);color:white;border-radius:50%;font-size:30px;width:44px;height:44px;position:absolute}.lightbox-close{top:20px;right:25px}.lightbox-prev{left:15px;top:50%}.lightbox-next{right:15px;top:50%}.lightbox-caption{position:absolute;bottom:7px;text-align:center;font-size:12px;letter-spacing:1px}.investment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-bottom:70px}.package-card{background:#f4eee8;overflow:hidden}.package-photo{height:315px}.package-info{padding:28px 30px 35px}.package-info .overline{letter-spacing:2.2px;font-size:9px}.package-info h2{font:400 33px var(--serif);margin:4px 0 0;color:#493629}.package-price{font:400 39px var(--serif);color:#806454;margin:10px 0}.pkg-line{height:1px;background:#cfbeb1}.package-info ul{padding:0;list-style:none;margin:22px 0 29px;min-height:139px}.package-info li{font-size:13px;color:#6c5c52;margin-bottom:11px}.package-info li:before{content:'✧';color:#987760;margin-right:12px}.package-info .btn{width:100%}.retainer-note{border-top:1px solid var(--line);padding-block:51px 85px;display:grid;grid-template-columns:46fr 54fr;gap:10%}.retainer-note h3{font:400 36px var(--serif);margin:8px 0}.retainer-note p{margin:0 0 11px;color:#6d5d54;max-width:525px}.retainer-note .fine-print{font-size:12px;color:#8e7a70}.sessions-intro{display:grid;grid-template-columns:46fr 54fr;gap:6%;align-items:center;padding:30px 0 90px}.sessions-text{padding-right:50px}.sessions-text p{color:#716257;max-width:455px}.sessions-text .btn{margin-top:25px}.sessions-photo{height:580px}.sessions-photo img{object-position:center 43%}.sessions-coming{padding-bottom:105px}.sessions-label{text-align:center;margin:0 auto 40px}.coming-card{border:1px solid #d9ccc1;background:#faf4ec;padding:70px 20px;max-width:720px;margin:0 auto;text-align:center}.coming-icon{color:#a58b7a;font-size:35px;line-height:1}.coming-card h3{font:400 34px var(--serif);margin:15px 0}.coming-card p{color:#75665b;margin:0 auto 27px;max-width:410px}.seasonal-note{background:#e9ddd1;padding:37px 0;text-align:center}.seasonal-note p{max-width:800px;margin:12px auto 0;color:#69574b}.inquire-layout{display:grid;grid-template-columns:40fr 60fr;gap:6%;padding:15px 0 110px}.inquire-image{height:410px}.inquire-side-words{padding:39px 0 15px}.inquire-side h2{font:400 40px/1.35 var(--serif);margin:12px 0;color:var(--espresso)}.inquire-side p{color:#756559;max-width:410px}.icon-row{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:18px 0}.icon-row>span{font-size:24px;color:#916f59}.icon-row b{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.4px}.icon-row a,.icon-row small{font-size:12px;color:#75665a;overflow-wrap:anywhere;display:block}.inquire-form-area{padding-right:5%}.inquire-form-area h2{font:400 36px var(--serif);margin:12px 0}.inquire-form-area>p{color:#78685d;margin-bottom:38px}.inquiry-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.inquiry-form label{font-size:11px;font-weight:700;letter-spacing:.7px;color:#6b594c;display:flex;flex-direction:column;gap:9px}.inquiry-form label span,.form-check b{color:#ad7b5b}.inquiry-form input:not([type="checkbox"]),.inquiry-form select,.inquiry-form textarea{border:1px solid #d8cdc5;border-radius:0;background:white;color:#4c4038;padding:13px 14px;outline-offset:2px;min-width:0;max-width:100%}.inquiry-form textarea{resize:vertical;min-height:155px}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#a09790}.inquiry-form .form-check{flex-direction:row;align-items:center;font-weight:400;letter-spacing:0;font-size:12px;gap:10px}.inquiry-form .form-check input{width:16px;height:16px;flex-shrink:0;accent-color:#735e4f}.inquiry-form .form-check span{color:#75665a}.inquiry-form .btn{align-self:start;min-width:230px}.form-footnote{font-size:11px;color:#88796c;line-height:1.8;margin:0}.hidden-field{position:absolute;left:-10000px;opacity:0}.email-fallback{border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;align-items:center;margin-top:28px;padding:21px 0;color:#77665b;font-size:12px}.email-fallback a{font-weight:700;text-decoration:underline;text-underline-offset:4px}.contact-grid{display:grid;grid-template-columns:44fr 56fr;gap:7%;align-items:center;padding-bottom:100px}.contact-photo{height:600px}.contact-panel{padding:20px 0}.contact-panel h2{font-size:51px;margin:15px 0}.contact-detail{border-top:1px solid var(--line);padding:21px 0}.contact-detail span{display:block;font-size:10px;letter-spacing:2px;font-weight:700;color:#957868}.contact-detail a,.contact-detail p{display:block;margin:5px 0 0;font-size:14px;color:#524338;overflow-wrap:anywhere}.contact-detail a{text-decoration:underline;text-underline-offset:3px}.contact-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:18px}.thank-you{min-height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center}.thank-you h1{font:400 clamp(38px,6vw,72px)/1.3 var(--serif);margin:20px auto 12px}.thank-you p{max-width:520px}
@media(max-width:1180px){.header-inner{min-height:80px}.brand span{font-size:20px}.menu-toggle{display:block;z-index:35}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffaf5;padding:25px 5%;box-shadow:0 14px 25px #392d2720;flex-direction:column;align-items:stretch;gap:4px;max-height:calc(100vh - 120px);overflow:auto}.primary-nav.is-open{display:flex}.primary-nav a{padding:11px;text-align:center;font-size:11px}.primary-nav a[href="inquire.html"]{margin:8px auto;padding:13px 30px}.menu-toggle.is-open span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:last-child{transform:translateY(-7px) rotate(-45deg)}}
@media(max-width:960px){.container{width:min(100% - 48px,860px)}.hero{min-height:auto;grid-template-columns:1fr;gap:18px;padding:44px 0 65px}.hero-copy{text-align:center;padding:25px 0 10px}.hero-copy h1{font-size:clamp(51px,9vw,80px)}.hero-deck{margin:auto}.hero-actions,.hero-loc{justify-content:center}.hero-loc{margin-top:32px}.hero-visual{max-width:660px;width:100%;margin:auto;height:540px}.category-grid{gap:14px}.category-image{height:300px}.category-caption h3{font-size:21px}.about-feature{padding:70px 0}.about-grid{gap:5%}.about-feature-img{height:500px}.about-feature-copy{padding:0 5% 0 0}.split-heading{grid-template-columns:1fr 1fr}.about-story{gap:5%}.about-portrait{height:600px}.investment-grid{gap:12px}.package-info{padding:25px 20px}.package-photo{height:265px}.sessions-intro{gap:3%}.sessions-text{padding-right:20px}.contact-grid{gap:5%}}
@media(max-width:650px){body{font-size:14px}.container{width:calc(100% - 36px)}.top-line{font-size:8px;letter-spacing:1.6px;padding:8px 7px}.site-header .header-inner{min-height:73px}.brand span{font-size:17px;letter-spacing:4px}.brand small{font-size:8px;letter-spacing:6.7px;padding-left:6.7px;margin-top:7px}.hero{padding:28px 0 45px}.hero-copy{padding:15px 8px}.hero-copy h1{font-size:clamp(50px,12vw,74px);margin:19px 0}.hero-deck{font-size:14px}.hero-actions{gap:9px}.hero-actions .btn{padding:12px 14px;font-size:9px;gap:8px}.hero-loc{font-size:8px;letter-spacing:1px}.hero-loc .line{width:24px}.hero-visual{height:420px;min-height:380px;padding:0}.hero-primary{height:92%;width:79%;right:0}.hero-offset{width:43%;height:43%;border-width:5px}.hero-stamp{width:95px;height:95px;font-size:8px;right:0;bottom:4%}.hero-stamp i{font-size:26px}.statement-strip{padding:16px 0}.statement-strip p{font-size:9px;line-height:2;letter-spacing:1.3px}.statement-strip span{margin:0 5px}.section{padding-block:70px}.center-intro{margin-bottom:29px}.center-intro h2,.last-cta h2,.split-heading h2{font-size:38px}.center-intro p{font-size:13px}.category-grid{grid-template-columns:1fr;gap:23px}.category-image{height:390px}.category-caption{padding:12px 0}.category-caption h3{font-size:28px}.about-grid{grid-template-columns:1fr}.about-feature-img{height:470px}.about-feature-copy{padding:45px 6px 5px}.about-feature-copy h2{font-size:52px;margin:14px 0}.split-heading{grid-template-columns:1fr;gap:20px}.section-investment{padding-block:75px}.quote-banner{padding:75px 0}.quote-banner blockquote{font-size:29px}.last-cta{padding:78px 10px 92px}.last-cta h2{font-size:36px}.footer-main{grid-template-columns:1fr 1fr;gap:34px 19px;padding:53px 0}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.page-title{padding:63px 0 40px}.page-title h1{font-size:48px}.page-title p{font-size:14px}.page-about .page-title{padding-bottom:43px}.about-story{grid-template-columns:1fr;gap:36px;margin-bottom:30px}.about-portrait{height:510px}.portrait-tag{right:0}.prose h2{font-size:36px}.about-long{padding-block:43px;grid-template-columns:1fr;gap:22px}.reading-side h2{font-size:39px}.prose{font-size:14px}.about-bottom-photo{height:260px}.filter-list{justify-content:flex-start;gap:7px;margin-bottom:25px}.filter{font-size:9px;padding:9px 11px;letter-spacing:.9px}.photo-gallery{columns:2;column-gap:10px}.photo-card{margin-bottom:11px}.photo-caption{display:block;padding:8px}.photo-caption span,.photo-caption strong{display:block}.photo-caption strong{font-size:12px;line-height:1.5}.lightbox:not([hidden]){padding:55px 3%}.lightbox img{max-width:95%;max-height:73vh}.lightbox button{width:36px;height:36px;font-size:24px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.investment-grid{grid-template-columns:1fr;gap:22px;padding-bottom:48px}.package-card{max-width:500px;margin:auto;width:100%}.package-photo{height:330px}.package-info{padding:26px}.package-info ul{min-height:0}.retainer-note{grid-template-columns:1fr;gap:13px;padding-block:30px 50px}.sessions-intro{grid-template-columns:1fr;gap:38px;padding:10px 0 70px}.sessions-text{padding-right:0}.sessions-text h2,.sessions-label h2{font-size:38px}.sessions-photo{height:420px}.sessions-coming{padding-bottom:70px}.coming-card{padding:55px 20px}.coming-card h3{font-size:31px}.inquire-layout{grid-template-columns:1fr;gap:45px;padding:10px 0 75px}.inquire-image{height:340px}.inquire-side-words{padding:26px 0 0}.inquire-side h2{font-size:39px}.inquire-form-area{padding:0}.form-row{grid-template-columns:1fr;gap:20px}.inquiry-form .btn{align-self:stretch}.contact-grid{grid-template-columns:1fr;gap:35px;padding-bottom:40px}.contact-photo{height:440px}.contact-panel h2{font-size:39px}.contact-actions .btn{flex:1 0 auto}.thank-you{min-height:65vh}}
@media(max-width:400px){.hero-primary{width:80%}.hero-visual{height:345px;min-height:345px}.category-image{height:320px}.photo-gallery{columns:1}.about-portrait{height:440px}.brand span{letter-spacing:3px}.brand small{letter-spacing:5.6px}.hero-actions .btn{font-size:8px;padding:12px 11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* DARLA'S SOFT PINK BRANDING | rose, blush, warm white */
:root{--cream:#fff4f7;--ivory:#fffdfd;--paper:#fff1f5;--tan:#f6d6e2;--rose:#fbe2eb;--espresso:#44303b;--ink:#4b3a42;--brown:#8b5f71;--muted:#75656e;--line:#ead4de;--pink:#a94770;--pink-dark:#87335a;--pink-light:#f8dbe6}
body{background:var(--ivory)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:var(--pink)}
.top-line{background:#9d4b72;color:white}
.site-header{background:rgba(255,253,253,.97);border-bottom-color:#f4dce5}
.brand small{color:var(--pink);letter-spacing:8.2px}
.primary-nav a{color:#644b58}
.primary-nav a:after{background:var(--pink)}
.primary-nav a.active{color:var(--pink-dark)}
.primary-nav a[href="inquire.html"]{background:var(--pink-dark);color:white}
.primary-nav a[href="inquire.html"]:hover{background:var(--pink)}
.overline{color:var(--pink-dark)}
.btn{border-color:var(--pink-dark)}
.btn-solid{background:var(--pink-dark);color:white}
.btn-solid:hover{background:var(--pink);color:white}
.btn-outline{color:var(--pink-dark);background:transparent}
.btn-outline:hover{background:var(--pink-dark);color:white}
.text-link{border-color:var(--pink-dark)}
.text-link:hover{color:var(--pink-dark)}
.hero-copy h1{color:var(--espresso)}
h1 em,h2 em{color:#af547b}
.hero-loc .line{background:#cb89a4}
.hero-stamp{background:#ffe4ed;border:1px solid #e6b2c4;color:#8c4c64}
.hero-stamp i{color:#ae5375}
.statement-strip{background:#fbe7ee;border-color:#efd2dc}
.statement-strip p{color:#915a71}
.statement-strip span{color:#b65e83}
.category-image{background:var(--paper)}
.category-caption span,.category-caption b{color:var(--pink)}
.category-tile:hover .category-caption h3{color:var(--pink-dark)}
.about-feature{background:#fff0f5}
.about-feature-copy h2{color:var(--espresso)}
.quote-banner{background:#f3cada}
.quote-banner .overline{color:#874661}
.quote-banner blockquote{color:#523343}
.quote-banner p{color:#874661}
.site-footer{background:#402b38;color:#f9e9f0}
.brand-footer span{color:#fff8fb}
.brand-footer small{color:#f6bbcF}
.footer-main p,.footer-nav a,.footer-nav .facebook-label,.footer-area{color:#e8cdd9}
.footer-nav strong{color:#f4d0df}
.footer-bottom{border-top-color:#694654;color:#dfbdcc}
.page-title h1{color:var(--espresso)}
.portrait-tag{background:#fbe4ed;color:#854761}
.filter{border-color:#e9cbd8;color:#7d5366}
.filter:hover,.filter.active{background:var(--pink-dark);border-color:var(--pink-dark)}
.photo-card{background:#fbeaf1}
.photo-caption{background:#fff0f5}
.photo-caption span{color:var(--pink-dark)}
.package-card{background:#fff1f6}
.package-info h2{color:var(--espresso)}
.package-price{color:var(--pink-dark)}
.pkg-line{background:#e7c4d2}
.package-info li:before{color:var(--pink)}
.coming-card{border-color:#e7c5d4;background:#fff4f7}
.coming-icon{color:var(--pink)}
.seasonal-note{background:#f9dce7}
.icon-row>span,.contact-detail span{color:var(--pink-dark)}
.inquiry-form label span,.form-check b{color:var(--pink-dark)}
.inquiry-form input:not([type="checkbox"]),.inquiry-form select,.inquiry-form textarea{border-color:#e5cdd7}
.inquiry-form .form-check input{accent-color:var(--pink-dark)}
@media(max-width:1180px){.primary-nav{background:#fff7fa;box-shadow:0 14px 25px #63304820}}
@media(max-width:650px){.brand small{letter-spacing:6.7px}}
@media(max-width:400px){.brand small{letter-spacing:5.6px}}

/* THE EXPERIENCE: an independent, fully navigable page */
.experience-feature{background:#fdf1f5;padding:95px 0}
.experience-feature-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:7%;align-items:center}
.experience-feature-copy{padding:20px 4% 20px 2%}
.experience-feature-copy h2,.experience-hero-note h2,.experience-story-copy h2,.experience-callout-inner h2{font:400 clamp(36px,4vw,56px)/1.26 var(--serif);letter-spacing:-1px;color:var(--espresso);margin:20px 0 24px}
.experience-feature-copy p,.experience-hero-note p,.experience-story-copy p,.experience-callout-inner p{font-size:15px;color:#705c67;line-height:1.95;max-width:510px}
.experience-feature-copy .btn{margin-top:22px}
.experience-feature-photo{height:570px;overflow:hidden;display:block}
.experience-feature-photo img{object-position:center 45%;transition:transform .4s}
.experience-feature-photo:hover img{transform:scale(1.025)}
.experience-hero{display:grid;grid-template-columns:53fr 47fr;align-items:center;gap:8%;padding-bottom:112px}
.experience-hero-portrait{height:580px}
.experience-hero-note{padding-right:6%}
.experience-hero-note .btn{margin-top:15px}
.experience-steps-wrap{background:#fff2f7;padding:100px 0 110px}
.experience-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.experience-step{background:#fffdfd;border:1px solid #f0d7e1;padding:34px 26px 28px}
.step-number{font:400 44px/1 var(--serif);color:#be6c91}
.experience-step h3{font:400 26px/1.3 var(--serif);color:var(--espresso);margin:25px 0 15px}
.experience-step p{color:#73616b;font-size:13px;line-height:1.85}
.experience-story-block{display:grid;grid-template-columns:48fr 52fr;gap:9%;align-items:center;padding-top:105px;padding-bottom:105px}
.experience-story-copy{padding:10px 0}
.experience-story-photo{height:580px;overflow:hidden}
.experience-story-photo img{object-position:center 36%}
.experience-story-copy .text-link{margin-top:25px}
.experience-session-callout{background:#f7dce7;padding:90px 0}
.experience-callout-inner{display:flex;justify-content:space-between;align-items:center;gap:6%}
.experience-callout-inner h2{margin:11px 0}
.experience-callout-inner p{margin-bottom:0}
.experience-callout-actions{display:flex;flex-direction:column;gap:12px;flex:0 0 280px}
.experience-callout-actions .btn{min-width:280px}
@media(max-width:960px){.experience-feature{padding:70px 0}.experience-feature-photo{height:460px}.experience-hero-portrait{height:450px}.experience-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-story-photo{height:490px}}
@media(max-width:650px){.experience-feature{padding:55px 0}.experience-feature-grid,.experience-hero,.experience-story-block{grid-template-columns:1fr;gap:34px}.experience-feature-copy{padding:0}.experience-feature-photo{height:420px}.experience-hero{padding-bottom:65px}.experience-hero-portrait{height:400px}.experience-hero-note{padding:0}.experience-steps-wrap{padding:65px 0}.experience-steps{gap:10px}.experience-step{padding:24px 18px}.step-number{font-size:34px}.experience-step h3{font-size:23px;margin:15px 0 8px}.experience-step p{font-size:12px}.experience-story-block{padding-top:70px;padding-bottom:70px}.experience-story-photo{height:430px}.experience-session-callout{padding:62px 0}.experience-callout-inner{flex-direction:column;align-items:stretch;gap:24px}.experience-callout-actions{flex:auto}.experience-callout-actions .btn{min-width:0}}
@media(max-width:390px){.experience-steps{grid-template-columns:1fr}.experience-step{padding:20px 24px}}

@media(max-width:1179px){.primary-nav{max-height:calc(100vh - 95px);overflow:auto}}


/* PHOTO FRAMING UPDATE: preserve the entire photograph.
   Clients' faces and heads must never be clipped in any screen size.
   Use original photo geometry instead of zoomed/cropped thumbnails. */
img { object-fit: contain; object-position: center center; }

/* These are the decorative photo frames across all website pages. */
.hero-primary, .hero-offset,
.category-image, .about-feature-img, .about-portrait, .about-bottom-photo,
.package-photo, .sessions-photo, .inquire-image, .contact-photo,
.experience-feature-photo, .experience-hero-portrait, .experience-story-photo {
  background: #f7e9ef;
}
.hero-primary img, .hero-offset img,
.category-image img, .about-feature-img img, .about-portrait img, .about-bottom-photo img,
.package-photo img, .sessions-photo img, .inquire-image img, .contact-photo img,
.experience-feature-photo img, .experience-hero-portrait img, .experience-story-photo img {
  object-fit: contain;
  object-position: center center;
  transform: none;
}
.category-tile:hover .category-image img,
.experience-feature-photo:hover img,
.photo-card:hover .photo-holder img { transform: none; }

/* Where photos are the focal point, choose frame ratios close to the actual images,
   preventing large letterbox areas as well as any head cropping. */
.category-image { height: auto; aspect-ratio: 3 / 4; }
.about-feature-img, .about-portrait { height: auto; aspect-ratio: 1 / 1; }
.about-bottom-photo { height: auto; aspect-ratio: 3 / 2; }
.package-photo, .sessions-photo { height: auto; aspect-ratio: 3 / 4; }
.experience-feature-photo { height: auto; aspect-ratio: 3 / 2; }
.experience-hero-portrait { height: auto; aspect-ratio: 3 / 4; }
.experience-story-photo { height: auto; aspect-ratio: 3 / 4; }
/* Full-size portfolio remains naturally proportioned, including lightbox images. */
.photo-holder img, .lightbox img { object-fit: contain; object-position:center; }

/* Expanded Middle Georgia service area: allow text to wrap naturally on all screens. */
.hero-loc{align-items:flex-start}
.hero-loc .line{flex:0 0 35px;margin-top:10px}
.hero-loc .service-copy{display:block;max-width:550px;font-size:12px;line-height:1.7;letter-spacing:.2px;text-transform:none;font-weight:500;text-align:left}
.service-copy .travel-note,.footer-area .travel-note,.contact-detail .travel-note,.icon-row .travel-note{display:block;margin-top:5px}
.footer-area{display:block;max-width:350px;line-height:1.75;letter-spacing:.3px}
.contact-detail p,.icon-row small{line-height:1.6}
@media(max-width:767px){
 .hero-loc{max-width:100%;gap:10px;justify-content:flex-start;padding:0 12px}
 .hero-loc .line{flex-basis:20px}
 .hero-loc .service-copy{font-size:12px;max-width:100%}
 .footer-area{max-width:100%}
}


/* Photography session contract, PDF kept intact. */
.page-contract .page-title{padding-bottom:55px}
.contract-wrap{padding:0 0 100px}
.contract-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:center;gap:7%;background:#fff6f9;border:1px solid #ead7df;border-radius:4px;padding:clamp(26px,5vw,70px)}
.contract-intro h2,.contract-pdf-head h2{font:400 clamp(32px,3.7vw,53px)/1.23 var(--serif);color:var(--espresso);letter-spacing:-.7px;margin:15px 0 21px}
.contract-intro h2 em,.contract-pdf-head h2 em{color:#b16b8d;font-weight:400}
.contract-intro p{line-height:1.85;color:#735a65}
.contract-intro .contract-info{font-size:13px;border-left:2px solid #bc829c;padding-left:16px;margin:28px 0 0}
.contract-actions,.contract-booking-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px}
.contract-actions .btn{flex:0 1 auto;white-space:normal;gap:12px;background:#a85f81;border-color:#a85f81;color:#fff}
.contract-actions .btn:hover{background:#8c4968;border-color:#8c4968;color:#fff}
.contract-actions .btn-outline{background:transparent;color:#905372}
.contract-actions .btn-outline:hover{background:#a85f81;color:#fff}
.contract-points{background:#fff;border:1px solid #efdee5;padding:35px 32px}
.contract-points>div{padding:17px 0;border-bottom:1px solid #f1e5e9}
.contract-points>div:last-child{border:0;padding-bottom:0}
.contract-points strong{font:500 19px var(--serif);color:#59424d}
.contract-points p{font-size:12px;margin:8px 0 0}
.contract-pdf-section{background:#fbf0f5;padding:75px 0 90px}
.contract-pdf-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.contract-pdf-head h2{margin-bottom:0}
.contract-pdf-frame{height:min(850px,90vh);min-height:540px;background:#fff;border:1px solid #eddce3;box-shadow:0 12px 36px rgba(84,52,67,.08)}
.contract-pdf-frame iframe{display:block;width:100%;height:100%;border:0}
.contract-pdf-fallback{color:#806877;font-size:12px;margin:14px 0 0}
.contract-pdf-fallback a,.thank-you-contract a{color:#995875;text-decoration:underline;text-underline-offset:4px}
.contract-booking-note{background:#fff1f6;border:1px solid #eed1dd;padding:24px 24px 20px;margin:22px 0 25px}
.contract-booking-note h3{font:400 26px/1.3 var(--serif);color:#654451;margin:7px 0 10px}
.contract-booking-note p{font-size:13px;color:#755d67;line-height:1.8;margin:0}
.contract-booking-actions{margin:18px 0}
.contract-booking-actions .text-link,.contract-investment-link .text-link{font-size:10px;letter-spacing:1px;color:#945b76}
.contract-booking-note .fine-print{font-size:11px}
.contract-investment-link{margin-top:12px}
.thank-you-contract{max-width:620px;margin:30px auto 0;color:#70525f;font-size:13px;line-height:1.8}
@media(max-width:850px){.contract-intro{grid-template-columns:1fr;gap:30px}.contract-pdf-head{align-items:start;flex-direction:column}.contract-wrap{padding-bottom:65px}}
@media(max-width:550px){.page-contract .page-title{padding-bottom:35px}.contract-intro{padding:24px 20px}.contract-points{padding:25px 20px}.contract-actions{display:flex;flex-direction:column;align-items:stretch}.contract-actions .btn{width:100%;justify-content:space-between}.contract-pdf-section{padding:55px 0}.contract-pdf-frame{height:580px;min-height:400px}}
