:root{--paper:#f7f3ed;--paper-2:#eee7dc;--ink:#24231f;--muted:#646159;--olive:#4f604f;--line:#d8d0c5;--serif:"Libre Caslon Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}:focus-visible{outline:2px solid #263b29}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}h1{font-size:clamp(3.5rem,6vw,6.7rem);letter-spacing:-.035em}h2{font-size:clamp(2.5rem,4.2vw,4.2rem);letter-spacing:-.025em}h3{font-size:clamp(1.8rem,2.5vw,2.8rem)}em{font-weight:400}
.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;padding:.65rem 1rem;background:var(--ink);color:#fff}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 .8rem;color:#565349;font:600 .76rem/1.2 var(--serif);letter-spacing:.19em;text-transform:uppercase}.brand-icon{width:1.2em;height:1.2em;flex:0 0 auto;fill:currentColor}.social-link{display:inline-flex;align-items:center;gap:.55rem;min-height:38px}

/* Header and complete approved navigation tree */
.site-header{position:relative;z-index:20;height:118px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 clamp(1.25rem,3.4vw,4rem);border-bottom:1px solid var(--line);background:rgba(247,243,237,.98)}.brand{display:flex;align-items:center;gap:.85rem;flex:0 0 auto}.brand img{width:88px;height:88px;object-fit:cover;border-radius:50%;mix-blend-mode:multiply}.brand span{font:400 2rem/1 var(--serif);white-space:nowrap}.brand small{display:block;margin-top:.55rem;font:500 .68rem/1 var(--sans);letter-spacing:.37em}.site-header nav{display:flex;align-items:center;gap:clamp(.7rem,1.2vw,1.45rem);font-size:.88rem;font-weight:600}.primary-categories{display:flex;align-items:center;gap:clamp(.45rem,1vw,1.25rem)}.nav-branch{position:relative}.nav-branch-head{display:flex;align-items:center;white-space:nowrap}.nav-branch-head>a{padding:.7rem .1rem;font:600 .86rem/1.2 var(--sans)}.branch-toggle{display:flex;align-items:center;justify-content:center;width:22px;height:34px;padding:0;border:0;background:none;color:var(--ink);cursor:pointer}.nav-children{display:none;position:absolute;top:100%;left:0;z-index:35;min-width:275px;max-height:calc(100svh - 110px);overflow:auto;padding:.65rem 1rem;border:1px solid var(--line);background:var(--paper);box-shadow:0 14px 24px rgba(36,35,31,.12)}.nav-branch:last-child .nav-children{right:0;left:auto}.nav-branch:hover .nav-children,.nav-branch:focus-within .nav-children,.nav-branch.open .nav-children{display:flex;flex-direction:column}.nav-children a{padding:.4rem .2rem;font-weight:400;line-height:1.35;white-space:normal}.nav-children .nav-feature{color:var(--olive);font-weight:700}.site-header a:hover,.footer a:hover{color:var(--olive)}.nav-contact{padding:.58rem 1rem;border:1px solid var(--ink)}.nav-contact:hover{background:var(--ink);color:#fff!important}.menu-button{display:none;border:0;background:none;color:var(--ink);font-weight:600;cursor:pointer}

/* Reference matched homepage hero */
.reference-hero{position:relative;isolation:isolate;height:clamp(340px,27vw,430px);min-height:0;overflow:hidden;background:#eadfd2}.reference-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(247,243,237,.98) 0%,rgba(247,243,237,.92) 27%,rgba(247,243,237,.56) 43%,rgba(247,243,237,0) 61%);pointer-events:none}.reference-hero .hero-photo.reference-photo{position:absolute;inset:0;z-index:0;min-height:0;background:url('/assets/jossie-clean-hero.webp?v=3') center 49%/cover no-repeat}.reference-hero .hero-photo::after{display:none}.reference-hero .hero-copy{position:relative;z-index:2;width:55%;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:2rem 2rem 2rem clamp(1.5rem,10vw,11rem)}.reference-hero .eyebrow::after{content:"";display:inline-block;width:60px;height:1px;margin-left:1.1rem;background:#b9ab92;vertical-align:middle}.reference-hero h1{max-width:none;margin:0 0 .9rem;font-size:clamp(3.25rem,4.7vw,5.45rem);line-height:.96;color:var(--ink);white-space:nowrap}.reference-hero h1 em{display:inline;color:var(--ink)}.reference-hero .hero-lead{max-width:33rem;margin:0;color:#3d3c36;font:400 clamp(1.05rem,1.35vw,1.3rem)/1.35 var(--serif)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.15rem}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.67rem 1.15rem;border:1px solid transparent;background:transparent;color:var(--ink);font:600 .78rem/1.2 var(--serif);letter-spacing:.11em;text-align:center;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-1px)}.button-dark{background:var(--olive);color:#fff}.button-dark:hover{background:#354437}.button-outline{border-color:#85827b;background:rgba(247,243,237,.34)}.button-outline:hover{background:rgba(247,243,237,.8)}

/* Four approved areas */
.reference-services{padding:14px clamp(12px,2.2vw,34px) 18px;background:#faf7f3}.reference-services .category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.35vw,20px)}.reference-services .category-card{min-width:0;text-align:center}.reference-services .category-art{height:clamp(145px,14vw,215px);background-image:url('/assets/reference-composition.png?v=3');background-repeat:no-repeat;background-size:400% auto;background-position-y:65%}.reference-services .c-celebraciones .category-art{background-position-x:0}.reference-services .c-retratos-sesiones .category-art{background-position-x:33.333%}.reference-services .c-espacios-hospitality .category-art{background-position-x:66.666%}.reference-services .c-marcas-comercial .category-art{background-position-x:100%}.reference-services .category-label{padding:.6rem .25rem .35rem}.reference-services h3{margin:0 0 .3rem;font:400 clamp(1.25rem,1.6vw,1.85rem)/1.08 var(--serif);letter-spacing:.025em;text-transform:uppercase}.reference-services .category-label p{margin:0 0 .45rem;color:#59574f;font:400 clamp(.9rem,1vw,1.02rem)/1.3 var(--serif)}.card-items{display:block;color:#68655d;font:400 clamp(.8rem,.82vw,.92rem)/1.45 var(--serif)}
.portfolio-showcase{display:grid;grid-template-columns:190px minmax(0,1fr) 170px;gap:1rem;align-items:center;padding:1.2rem clamp(1.25rem,3vw,3rem);border-top:1px solid var(--line);background:#faf7f3}.portfolio-title .eyebrow{margin-bottom:.2rem}.portfolio-title h2{margin:0;font-size:clamp(1.8rem,2.1vw,2.35rem)}.portfolio-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;height:108px}.portfolio-tile{position:relative;display:flex;align-items:flex-end;overflow:hidden;background-image:url('/assets/reference-composition.png?v=3');background-repeat:no-repeat;background-size:400% auto;background-position-y:64.5%}.portfolio-tile:nth-child(1){background-position-x:0}.portfolio-tile:nth-child(2){background-position-x:33.333%}.portfolio-tile:nth-child(3){background-position-x:66.666%}.portfolio-tile:nth-child(4){background-position-x:100%}.portfolio-tile span{width:100%;padding:.16rem .3rem;background:rgba(247,243,237,.9);font:.72rem/1.3 var(--serif);text-align:center}.instagram-panel{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.instagram-panel .brand-icon{width:28px;height:28px}.instagram-panel p{margin:0;font:.72rem/1.2 var(--serif);letter-spacing:.08em;text-transform:uppercase}.instagram-panel .social-link{font:.72rem var(--serif);text-transform:uppercase}.contact-ribbon{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2.5rem;padding:1.4rem clamp(1.25rem,5vw,5.5rem);border-top:1px solid var(--line);background:var(--paper-2)}.contact-ribbon h2{margin:0;font-size:clamp(1.8rem,2.5vw,2.8rem);font-style:italic;white-space:nowrap}.contact-ribbon>span{height:1px;background:#bfb5a8}.contact-ribbon p{margin:0;font:1rem/1.4 var(--serif)}.contact-ribbon strong{display:inline-block;margin-left:.45rem;color:var(--olive);font:600 .82rem var(--sans);text-transform:uppercase;white-space:nowrap}

/* Interior pages */
.section{padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5.5vw,7rem)}.inner-hero{min-height:390px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:4.5rem clamp(1.25rem,5.5vw,7rem);background:#e7e3dc}.inner-hero h1{max-width:15ch;margin:0 0 1.2rem}.inner-hero>p:not(.eyebrow){max-width:40rem;color:#4f504a;font-size:1.15rem}.inner-hero .button{margin-top:1rem}.special-hero{background:#e4e7df}.christmas-hero{background:#ece2d7}.section-heading{margin-bottom:2.5rem}.section-heading h2{margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}.service-item{min-height:250px;padding:2.3rem;background:var(--paper);scroll-margin-top:120px}.item-number{color:var(--olive);font-size:.73rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.service-item h2{margin:1rem 0 .75rem;font-size:2.15rem}.service-item p{color:var(--muted);font-size:1rem}.text-link{display:inline-block;margin-top:1rem;padding-bottom:.1rem;border-bottom:1px solid var(--olive);color:var(--olive);font-size:.88rem;font-weight:600}.next-category{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem clamp(1.25rem,5.5vw,7rem);border-top:1px solid var(--line)}.next-category>span{color:var(--muted);font-size:.8rem;letter-spacing:.13em;text-transform:uppercase}.next-category a{font:2rem var(--serif)}.detail-copy{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.detail-copy>div:last-child{max-width:34rem;font-size:1.08rem}.contact-band{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#e1e2db}.contact-band h2{max-width:15ch;margin:0;font-size:clamp(2rem,3.4vw,3.8rem)}

/* About */
.about-intro{min-height:620px;display:grid;grid-template-columns:46% 54%;background:#f1ede7}.about-portrait{min-height:620px;overflow:hidden;background:#ded6cc}.about-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 28%}.about-story{align-self:center;max-width:850px;padding:clamp(2.5rem,5vw,5rem) clamp(2rem,6vw,7rem)}.about-story h1{margin:0 0 1.4rem;font-size:clamp(3.6rem,5vw,6rem)}.about-story p:not(.eyebrow){max-width:36rem;margin:0 0 1.1rem;color:#4d504a;font-size:1.06rem}.about-story .about-lead{color:var(--ink)!important;font:clamp(1.35rem,1.7vw,1.75rem)/1.35 var(--serif)!important}.about-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}.about-areas{padding:3rem clamp(1.25rem,5vw,5rem) 3.8rem;background:#faf7f3}.about-area-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.about-area-links a{display:flex;justify-content:space-between;gap:.5rem;padding:.8rem .2rem;border-top:1px solid var(--line);font:1.45rem/1.1 var(--serif)}

/* Contact and visible mobile consent */
.contact{min-height:650px;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:start;background:#e7e8e2}.contact h2{max-width:11ch}.contact>div>p:not(.eyebrow){max-width:30rem}.mail-link{border-bottom:1px solid var(--olive);font-weight:600;overflow-wrap:anywhere}.contact-fast{margin-top:1.2rem}.contact form{display:grid;grid-template-columns:1fr;gap:.5rem;max-width:720px}.contact form>label:not(.consent){margin-top:.65rem;font-size:.9rem;font-weight:600}.contact input:not([type="checkbox"]),.contact select,.contact textarea{width:100%;min-height:50px;padding:.78rem .9rem;border:1px solid #8f978e;border-radius:0;background:rgba(255,255,255,.8);color:var(--ink)}.contact select{appearance:auto}.contact textarea{min-height:150px;resize:vertical}.contact ::placeholder{color:#626760;opacity:1}.consent{min-height:52px;display:flex;align-items:flex-start;gap:.75rem;margin:.7rem 0 .3rem;padding:.55rem 0;font-size:.92rem;font-weight:400;cursor:pointer}.consent input{appearance:none;width:24px;height:24px;flex:0 0 24px;display:grid;place-content:center;margin:0;border:2px solid #59635a;border-radius:2px;background:#fff;cursor:pointer}.consent input::before{content:"";width:12px;height:7px;border:solid #fff;border-width:0 0 3px 3px;transform:rotate(-45deg) scale(0);transform-origin:center}.consent input:checked{background:var(--olive)}.consent input:checked::before{transform:rotate(-45deg) scale(1)}.consent a{border-bottom:1px solid currentColor}.contact form button{justify-self:start;margin-top:.3rem}.form-note{margin:.3rem 0 0;color:var(--muted);font-size:.88rem}.privacy-hero{min-height:300px}.legal-copy{max-width:900px}.legal-copy h2{margin-top:2.5rem;font-size:2.2rem}

/* Footer */
.footer{display:grid;grid-template-columns:1.3fr .65fr 1fr;gap:2.5rem;align-items:start;padding:2.4rem clamp(1.25rem,4vw,5rem) 1rem;border-top:1px solid var(--line);background:#f5f1eb;color:var(--ink)}.footer-brand>a{display:flex;align-items:center;gap:.75rem}.footer-brand img{width:76px;height:76px;object-fit:cover;border-radius:50%;mix-blend-mode:multiply}.footer-brand strong{display:block;font:2rem/1 var(--serif)}.footer-brand small{display:block;margin-top:.45rem;font:500 .6rem var(--sans);letter-spacing:.34em}.footer-brand p{margin:.75rem 0 0;color:var(--muted);font-size:.92rem}.footer-nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.footer-contact{overflow-wrap:anywhere}.footer .copyright{grid-column:1/-1;margin:.6rem 0 0;padding-top:.9rem;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}

@media(max-width:1360px){.site-header{height:108px;padding-inline:1rem}.brand img{width:78px;height:78px}.brand span{font-size:1.65rem}.brand small{font-size:.57rem}.menu-button{display:block;padding:.6rem;font-size:1rem;white-space:nowrap}.site-header nav{display:none;position:absolute;top:108px;right:0;left:0;z-index:40;max-height:calc(100svh - 108px);overflow:auto;padding:.6rem 1.15rem 1.5rem;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 15px 24px rgba(36,35,31,.1);flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.primary-categories{display:block}.nav-branch{border-bottom:1px solid var(--line)}.nav-branch-head{gap:.8rem}.nav-branch-head>a{flex:1;padding:.95rem 0;font:400 1.5rem/1.15 var(--serif);white-space:normal}.branch-toggle{width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);font-size:1.5rem}.branch-toggle[aria-expanded="true"] span{transform:rotate(180deg)}.nav-children,.nav-branch:hover .nav-children,.nav-branch:focus-within .nav-children{display:none;position:static;min-width:0;max-height:none;margin:0 0 .65rem .25rem;padding:.1rem 0 .8rem 1rem;border:0;border-left:1px solid var(--line);background:transparent;box-shadow:none;overflow:visible}.nav-branch.open .nav-children,.nav-branch.open:hover .nav-children,.nav-branch.open:focus-within .nav-children{display:flex}.nav-children a{min-height:40px;padding:.45rem .65rem;font-size:.95rem}.site-header nav>a{padding:.9rem 0;border-bottom:1px solid var(--line);font-size:1rem}.site-header .nav-contact{align-self:flex-start;margin-top:1rem;padding:.6rem 1rem;border:1px solid var(--ink)}}
@media(max-width:1024px){.reference-hero{height:410px}.reference-hero .hero-copy{width:58%;padding-left:4vw}.reference-hero h1{font-size:4.1rem}.reference-services .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}.reference-services .category-art{height:220px;background-position-y:66%}.portfolio-showcase{grid-template-columns:170px 1fr 145px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:850px){.reference-hero{height:auto;display:grid;grid-template-columns:1fr}.reference-hero::before{display:none}.reference-hero .hero-photo.reference-photo{position:relative;inset:auto;order:1;height:320px;background-position:61% center}.reference-hero .hero-copy{order:2;width:100%;height:auto;padding:2.7rem 1.5rem 3rem;background:#f3eee7}.reference-hero h1{font-size:clamp(3.5rem,9vw,5rem);white-space:normal}.portfolio-showcase{grid-template-columns:1fr auto}.portfolio-tiles{display:none}.contact-ribbon{grid-template-columns:1fr;gap:.55rem}.contact-ribbon>span{display:none}.contact-ribbon h2{white-space:normal}.about-intro{grid-template-columns:1fr}.about-portrait{min-height:0;height:430px}.about-story{padding:3rem 1.5rem}.about-area-links{grid-template-columns:repeat(2,minmax(0,1fr))}.contact,.detail-copy{grid-template-columns:1fr;gap:2.5rem}}
@media(max-width:600px){body{font-size:16px}.site-header{height:104px;padding-inline:.75rem}.site-header nav{top:104px;max-height:calc(100svh - 104px)}.brand{gap:.5rem}.brand img{width:75px;height:75px}.brand span{font-size:1.5rem}.brand small{margin-top:.43rem;font-size:.51rem;letter-spacing:.29em}.menu-button{padding:.5rem .15rem;font-size:.92rem}.reference-hero .hero-photo.reference-photo{height:250px;background-position:62% center}.reference-hero .hero-copy{padding:2.4rem 1.25rem 2.7rem}.reference-hero .eyebrow::after{width:36px;margin-left:.6rem}.reference-hero h1{margin-bottom:.9rem;font-size:clamp(3rem,13vw,4.15rem)}.reference-hero .hero-lead{font-size:1.08rem}.reference-hero .hero-lead br{display:none}.hero-actions{width:100%;display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%;min-height:50px;font-size:.82rem}.reference-services{padding:.9rem .9rem 1.5rem}.reference-services .category-grid{grid-template-columns:1fr;gap:.9rem}.reference-services .category-card{min-height:190px;display:grid;grid-template-columns:42% 58%;background:#eee8df;text-align:left}.reference-services .category-card:nth-child(even){background:#e9e7e1}.reference-services .category-art{height:100%;min-height:190px;background-position-y:96%}.reference-services .category-label{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:1rem}.reference-services h3{font-size:1.45rem;overflow-wrap:anywhere}.reference-services .category-label p{font-size:1rem}.card-items{display:none}.portfolio-showcase{padding:1.4rem 1.25rem}.portfolio-title h2{font-size:1.9rem}.instagram-panel p{display:none}.contact-ribbon{padding:1.8rem 1.25rem}.contact-ribbon h2{font-size:2rem}.section{padding:3.7rem 1.25rem}.inner-hero{min-height:350px;padding:3.6rem 1.25rem}.inner-hero h1{font-size:3.45rem}.service-grid{grid-template-columns:1fr}.service-item{min-height:0;padding:2rem 1.25rem}.service-item p{font-size:1rem}.next-category,.contact-band{flex-direction:column;align-items:flex-start}.about-portrait{height:360px}.about-story{padding:2.6rem 1.25rem}.about-story h1{font-size:3.55rem}.about-area-links{grid-template-columns:1fr}.about-area-links a{font-size:1.4rem}.contact{min-height:0}.contact h2{max-width:none;font-size:3rem}.contact input:not([type="checkbox"]),.contact select{min-height:54px}.consent{min-height:58px;font-size:1rem}.contact form button{width:100%;min-height:52px}.footer{grid-template-columns:1fr;gap:1.4rem;padding:2rem 1.25rem 1rem}.footer-brand{grid-column:auto}.footer-brand img{width:72px;height:72px}.footer .copyright{margin:0}}
@media(max-width:390px){.brand img{width:66px;height:66px}.brand span{font-size:1.25rem}.brand small{font-size:.45rem}.reference-hero .hero-photo.reference-photo{height:225px}.reference-hero h1{font-size:3rem}.reference-services .category-card{grid-template-columns:40% 60%}.reference-services h3{font-size:1.25rem}}
@media(max-width:360px){.site-header{height:94px}.site-header nav{top:94px;max-height:calc(100svh - 94px)}.brand img{width:60px;height:60px}.brand span{font-size:1.12rem}.menu-button{font-size:.85rem}.reference-hero h1{font-size:2.8rem}.reference-services .category-card{grid-template-columns:38% 62%}.reference-services .category-label{padding:.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Keep the supplied reference captions outside the photographic crop. */
.reference-services .category-art,.portfolio-tile{background-image:url('/assets/reference-composition.png?v=4');background-size:430% auto;background-position-y:73%}
@media(max-width:1024px){.reference-services .category-art{height:205px;background-position-y:73%}}
@media(max-width:600px){.reference-services .category-art{height:100%;min-height:190px;background-position-y:100%}}

/* Mobile menu must carry the same visual weight as the brand. */
@media(max-width:1360px){.menu-button{min-width:92px;min-height:48px;font-size:1.15rem;font-weight:600;letter-spacing:.01em}.menu-button span{display:inline-block;margin-left:.28rem;font-size:1.35em;line-height:1;vertical-align:-.08em}}
@media(max-width:600px){.menu-button{min-width:96px;font-size:1.28rem}.menu-button span{font-size:1.4em}}
@media(max-width:360px){.menu-button{min-width:86px;font-size:1.14rem}}

/* Final crop calibration: show only the photographs, never the baked captions. */
.reference-services .category-art{background-position-y:55%}
.portfolio-tile{background-position-y:69%}
@media(max-width:1024px){.reference-services .category-art{background-position-y:59%}}
@media(max-width:600px){.reference-services .category-art{background-position-y:93%}}

/* Phone category cards: full photograph, complete title and complete taxonomy. */
@media(max-width:600px){
  .reference-services .category-card,
  .reference-services .category-card:nth-child(even){display:block;min-height:0;background:#eee8df;text-align:left}
  .reference-services .category-card:nth-child(even){background:#e9e7e1}
  .reference-services .category-art{width:100%;height:auto;min-height:0;aspect-ratio:2.02/1;background-size:cover;background-position:center}
  .reference-services .category-label{display:block;min-height:0;padding:1.1rem 1.15rem 1.25rem}
  .reference-services h3{margin:0 0 .55rem;font-size:clamp(1.45rem,7vw,1.8rem);line-height:1.08;overflow-wrap:normal;word-break:normal;hyphens:none}
  .reference-services .category-label p{margin:0 0 .65rem;font-size:1rem;line-height:1.4}
  .reference-services .card-items{display:block;font:400 1rem/1.5 var(--serif);color:#615e57}
}
@media(max-width:360px){.reference-services h3{font-size:1.4rem}.reference-services .category-label{padding:1rem}}

/* Dedicated category photographs prevent adjacent reference artwork or blank
   canvas from appearing when cards resize on phones and tablets. */
.reference-services .category-art,
.portfolio-tile{background-size:cover;background-position:center;background-repeat:no-repeat}
.reference-services .c-celebraciones .category-art,
.portfolio-tile.pt-celebraciones{background-image:url('/assets/category-celebraciones.webp?v=1')}
.reference-services .c-retratos-sesiones .category-art,
.portfolio-tile.pt-retratos-sesiones{background-image:url('/assets/category-retratos-sesiones.webp?v=1')}
.reference-services .c-espacios-hospitality .category-art,
.portfolio-tile.pt-espacios-hospitality{background-image:url('/assets/category-espacios-hospitality.webp?v=1')}
.reference-services .c-marcas-comercial .category-art,
.portfolio-tile.pt-marcas-comercial{background-image:url('/assets/category-marcas-comercial.webp?v=1')}

/* Bodas landing page */
.wedding-hero{min-height:680px;display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);background:#f4eee5}
.wedding-hero-photo{min-width:0;background:linear-gradient(145deg,#9a8068 0%,#d7c4aa 48%,#806653 100%)}
.wedding-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:clamp(3rem,7vw,7.5rem)}
.wedding-hero-copy .eyebrow{color:#8b673c}
.wedding-hero-copy h1{max-width:9ch;margin:.65rem 0 1.35rem;font-size:clamp(4rem,6.2vw,7.5rem);line-height:.88;letter-spacing:-.035em;text-transform:uppercase}
.wedding-hero-copy>p:not(.eyebrow){margin:0;color:#555048;font:500 clamp(1rem,1.25vw,1.25rem)/1.55 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.wedding-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.wedding-intro{display:grid;grid-template-columns:.7fr 1.3fr 1fr;gap:clamp(1.5rem,4vw,5rem);align-items:start;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem);border-bottom:1px solid var(--line);background:#faf7f2}
.wedding-intro h2{margin:0;font-size:clamp(2.6rem,4.4vw,5.3rem);line-height:.98}
.wedding-intro>p:last-child{max-width:34rem;margin:.35rem 0 0;color:var(--muted);font:1.08rem/1.7 var(--serif)}
.wedding-packages{padding:clamp(4rem,7vw,7.5rem) clamp(1rem,4vw,5rem);background:#f7f1e8}
.wedding-section-head{max-width:760px;margin:0 auto 3rem;text-align:center}
.wedding-section-head h2{margin:.4rem 0 0;font-size:clamp(2.8rem,4.5vw,5.2rem);line-height:1}
.wedding-package-grid{max-width:1500px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,2rem);align-items:stretch;margin:0 auto}
.wedding-package{position:relative;min-width:0;display:flex;flex-direction:column;padding:clamp(1.5rem,2.5vw,2.7rem);border:1px solid #cbbda9;background:#fffdf9}
.wedding-package.package-premium{border-color:#a77b43;box-shadow:0 16px 45px rgba(92,68,39,.1)}
.package-choice{position:absolute;top:0;left:50%;margin:0;padding:.48rem 1.25rem;background:#a77b43;color:#fff;transform:translate(-50%,-50%);font:600 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.package-head{padding-bottom:1.35rem;border-bottom:1px solid #cbbda9;text-align:center}
.package-head h3{margin:0;font-size:clamp(2.2rem,3vw,3.6rem);letter-spacing:.08em;text-transform:uppercase}
.package-head p{min-height:3em;margin:.45rem auto .8rem;color:#71685d;font:500 .82rem/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.package-head strong{display:block;font:400 clamp(2.6rem,4vw,4.5rem)/1 var(--serif)}
.wedding-package ul{display:grid;gap:.72rem;margin:1.45rem 0 1.7rem;padding:0;list-style:none}
.wedding-package li{position:relative;padding-left:1.15rem;color:#38342f;font:1rem/1.38 var(--serif)}
.wedding-package li::before{content:"";position:absolute;top:.62em;left:0;width:5px;height:5px;border-radius:50%;background:#a77b43}
.package-bonus{margin:auto 0 1.2rem;padding:1rem;border-top:1px solid #cbbda9;border-bottom:1px solid #cbbda9;color:#614626;font:1.35rem/1.25 var(--serif);text-align:center}
.package-button{width:100%;min-height:52px;margin-top:auto;border-color:#4f604f;background:#4f604f;color:#fff}
.package-button:hover{background:#354437}
.package-button .brand-icon{width:20px;height:20px}
.wedding-portfolio{display:grid;grid-template-columns:minmax(0,1.5fr) auto;gap:3rem;align-items:end;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#ece4d8}
.wedding-portfolio h2{max-width:13ch;margin:.3rem 0 1rem;font-size:clamp(3rem,5vw,5.7rem);line-height:.96}
.wedding-portfolio p:not(.eyebrow){max-width:45rem;color:var(--muted)}
.wedding-help{padding:clamp(4rem,6vw,6rem) 1.25rem;background:#faf7f2;text-align:center}
.wedding-help h2{margin:.35rem 0 .7rem;font-size:clamp(2.8rem,4.5vw,5rem)}
.wedding-help>p:not(.eyebrow){max-width:42rem;margin:0 auto 1.5rem;color:var(--muted)}
.wedding-help .button{min-height:52px}
.wedding-help .brand-icon{width:20px;height:20px}
.wedding-breadcrumbs{display:flex;gap:.55rem;padding:1rem clamp(1.25rem,6vw,7rem);background:#f5efe6;color:#686159;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.wedding-breadcrumbs a{border-bottom:1px solid currentColor}

@media(max-width:1024px){
  .wedding-hero{min-height:590px;grid-template-columns:44% 56%}
  .wedding-hero-copy{padding:3.5rem 2.5rem}
  .wedding-hero-copy h1{font-size:clamp(3.6rem,7vw,5.4rem)}
  .wedding-intro{grid-template-columns:1fr 1.5fr}.wedding-intro>p:last-child{grid-column:2}
  .wedding-package-grid{gap:1rem}.wedding-package{padding:1.6rem 1.25rem}.package-head p{font-size:.75rem}
  .wedding-package li{font-size:.96rem}
}
@media(max-width:768px){
  .wedding-hero{min-height:0;grid-template-columns:1fr}.wedding-hero-photo{min-height:52vw}.wedding-hero-copy{padding:3.5rem 1.5rem 4rem}
  .wedding-hero-copy h1{font-size:clamp(3.6rem,12vw,5.5rem)}
  .wedding-intro{grid-template-columns:1fr;gap:1.4rem}.wedding-intro>p:last-child{grid-column:auto}
  .wedding-package-grid{grid-template-columns:1fr;max-width:650px;gap:2.2rem}
  .wedding-package{padding:2rem}.package-head p{min-height:0}.wedding-package li{font-size:1.05rem}
  .wedding-portfolio{grid-template-columns:1fr;align-items:start}.wedding-portfolio .button{justify-self:start}
}
@media(max-width:430px){
  .wedding-hero-photo{min-height:68vw}.wedding-hero-copy{padding:2.8rem 1.15rem 3.2rem}
  .wedding-hero-copy h1{font-size:clamp(3.2rem,15vw,4.5rem);overflow-wrap:normal;word-break:normal;hyphens:none}
  .wedding-hero-copy>p:not(.eyebrow){font-size:.94rem;letter-spacing:.1em}
  .wedding-hero-actions{width:100%;display:grid}.wedding-hero-actions .button{width:100%;min-height:50px}
  .wedding-intro,.wedding-packages,.wedding-portfolio{padding-left:1rem;padding-right:1rem}
  .wedding-intro h2{font-size:2.9rem}.wedding-section-head h2{font-size:2.9rem}
  .wedding-package{padding:1.6rem 1.15rem}.package-head h3{font-size:2.55rem}.package-head strong{font-size:3.15rem}
  .package-button{font-size:.79rem;padding-inline:.65rem}.wedding-portfolio h2{font-size:3rem}
}

/* 2026-09-29 conversion refinement — preserves the established editorial system. */
.site-header{height:116px;padding-inline:clamp(1rem,2.5vw,2.75rem)}
.brand img{width:102px;height:102px;border-radius:50%;object-fit:cover;mix-blend-mode:multiply}
.site-header nav{gap:clamp(.55rem,.8vw,1rem);font-size:.8rem}
.site-header nav>a:not(.nav-contact){white-space:nowrap}
.site-header .nav-highlight{color:#8a6337}
.nav-contact{background:var(--olive);color:#fff!important;border-color:var(--olive);white-space:nowrap}
.nav-contact:hover{background:#354437}
.reference-hero{height:clamp(520px,46vw,720px)}
.reference-hero .hero-copy{width:56%;padding-left:clamp(1.5rem,8vw,9rem)}
.reference-hero h1{font-size:clamp(4rem,6vw,7rem)}
.reference-hero .hero-lead{max-width:34rem;font:400 clamp(1.18rem,1.45vw,1.42rem)/1.5 var(--serif)}
.section-kicker{max-width:850px;margin:0 auto 2.6rem;text-align:center}
.section-kicker h2{margin:.4rem 0 1rem;font-size:clamp(2.8rem,4vw,4.8rem)}
.section-kicker>p:last-child{max-width:50rem;margin-inline:auto;color:var(--muted)}
.reference-services{padding:clamp(4rem,6vw,6.5rem) clamp(1rem,3vw,3.5rem)}
.reference-services .category-grid{gap:clamp(1rem,1.7vw,1.7rem)}
.reference-services .category-card{display:flex;min-height:520px;flex-direction:column;border:1px solid var(--line);background:#f1ece4;text-align:left;transition:transform .2s,box-shadow .2s}
.reference-services .category-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(36,35,31,.09)}
.reference-services .category-art{height:auto;aspect-ratio:4/3}
.reference-services .category-label{display:flex;flex:1;flex-direction:column;padding:1.35rem 1.3rem 1.5rem}
.reference-services h3{font-size:clamp(1.55rem,1.8vw,2.1rem);overflow-wrap:normal;word-break:normal;hyphens:none}
.reference-services .category-label p{font-family:var(--sans);font-size:.98rem;line-height:1.55}
.reference-services .card-items{margin-top:auto;padding-top:.8rem;border-top:1px solid var(--line);font-family:var(--sans);font-size:.83rem;line-height:1.55}
.home-about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);grid-template-areas:"copy photo" "areas photo" "value value";gap:0;background:#ebe4da}
.home-about-copy{grid-area:copy;padding:clamp(4rem,7vw,7rem) clamp(1.5rem,6vw,7rem) 2.5rem}
.home-about-copy h2{max-width:12ch;margin:.35rem 0 1.4rem}
.home-about-copy p:not(.eyebrow){max-width:44rem;color:#4f4b44;font-size:1.04rem;line-height:1.7}
.home-about-photo{grid-area:photo;min-height:760px;overflow:hidden;padding:clamp(1.5rem,4vw,4rem);display:flex;align-items:center;background:#e0d7cb}
.home-about-photo img{width:100%;height:auto;max-height:680px;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;filter:grayscale(1);border:8px solid var(--paper)}
.home-about-areas{grid-area:areas;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;padding:0 clamp(1.5rem,6vw,7rem) 4rem}
.home-about-areas a{display:flex;justify-content:space-between;gap:1rem;padding:1rem .25rem;border-top:1px solid #c8bfb3;font:1.25rem/1.2 var(--serif)}
.home-value-line{grid-area:value;margin:0;padding:1.2rem 1rem;border-top:1px solid #baa88d;border-bottom:1px solid #baa88d;background:#dfd1be;font:1.16rem/1.4 var(--serif);text-align:center}
.home-testimonials,.landing-reviews{padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem);background:#faf7f2}
.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}
.testimonial-grid blockquote,.landing-reviews blockquote,.service-proof blockquote{display:flex;min-width:0;min-height:285px;flex-direction:column;margin:0;padding:clamp(1.6rem,3vw,3rem);background:var(--paper)}
.testimonial-grid blockquote>p,.landing-reviews blockquote>p,.service-proof blockquote>p{margin:0;color:#34312c;font:clamp(1.15rem,1.55vw,1.45rem)/1.55 var(--serif)}
blockquote footer{display:flex;flex-direction:column;margin-top:auto;padding-top:1.5rem;color:var(--muted);font-size:.86rem}
blockquote footer strong{color:var(--ink);font-size:.92rem}
.portfolio-showcase{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,2fr);gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,5vw,6rem);background:#eee7dd}
.portfolio-title h2{margin:.3rem 0 1rem;font-size:clamp(3rem,5vw,5.8rem);line-height:.95}
.portfolio-title>p:not(.eyebrow){max-width:28rem;color:var(--muted)}
.portfolio-title .button{margin-top:1rem}
.portfolio-tiles{display:grid;height:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.portfolio-tile{aspect-ratio:4/3;min-height:0}
.portfolio-tile span{padding:.65rem 1rem;font:1rem/1.3 var(--serif);text-align:left}
.communion-feature{display:flex;min-height:500px;align-items:center;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,10vw,11rem);background:linear-gradient(120deg,#f7f3ed,#dfd0bd)}
.communion-feature>div{max-width:760px}
.communion-feature h2{margin:.45rem 0 1.8rem;font-size:clamp(3rem,5vw,5.7rem);line-height:.97}
.feature-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.home-faq{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(2.5rem,7vw,8rem);padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem);background:#faf7f2}
.home-faq .section-kicker{margin:0;text-align:left}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{position:relative;padding:1.35rem 3rem 1.35rem 0;cursor:pointer;font:1.25rem/1.3 var(--serif);list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;top:1.1rem;right:.4rem;font:1.65rem var(--sans)}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{max-width:48rem;padding:0 2rem 1.45rem 0;color:var(--muted);line-height:1.7}
.final-cta{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:3rem;align-items:center;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,7vw,8rem);background:#e1d5c5}
.final-cta h2{margin:.35rem 0 .7rem}
.final-cta p:not(.eyebrow){margin:0;color:#565048}
.final-cta-actions{display:grid;gap:.8rem;min-width:280px}
.service-proof{padding:4rem clamp(1.25rem,6vw,7rem);background:#eee7dc}
.service-proof blockquote{max-width:900px;min-height:0;margin:auto}
.landing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,1fr);min-height:650px;background:#eee8df}
.landing-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(3rem,7vw,7.5rem)}
.landing-copy h1{max-width:11ch;margin:.5rem 0 1.2rem;font-size:clamp(4rem,6vw,7rem)}
.landing-copy>p:not(.eyebrow){max-width:38rem;color:var(--muted);font:1.25rem/1.55 var(--serif)}
.landing-image{background-position:center;background-size:cover}
.landing-family{background-image:url('/assets/category-retratos-sesiones.webp')}
.landing-hospitality{background-image:url('/assets/category-espacios-hospitality.webp')}
.landing-brand{background-image:url('/assets/category-marcas-comercial.webp')}
.landing-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,6vw,7rem);background:var(--line)}
.landing-content article{padding:clamp(1.8rem,3vw,3rem);background:var(--paper)}
.landing-content h2{font-size:clamp(2rem,2.8vw,3rem)}
.landing-content p{color:var(--muted)}
.landing-close{display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:center;padding:clamp(3rem,6vw,6rem) clamp(1.25rem,6vw,7rem);background:#e6ddd1}
.landing-close h2{margin:0}
.landing-close p{margin:0;color:var(--muted)}
.contact{padding-top:clamp(3.5rem,6vw,6rem)}
.contact h1{max-width:11ch;margin:.5rem 0 1.2rem;font-size:clamp(3.5rem,5vw,5.7rem)}
.contact form{max-width:800px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}
.form-grid>div{display:grid;gap:.4rem}
.form-grid label,.form-grid legend{font-size:.9rem;font-weight:600}
.form-span{grid-column:1/-1}
.flexible-date{align-self:end;display:flex;min-height:50px;align-items:center;gap:.65rem;padding:.55rem 0;cursor:pointer}
.flexible-date input,.form-grid fieldset input{width:21px;height:21px;accent-color:var(--olive)}
.form-grid fieldset{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin:.3rem 0 0;padding:1rem;border:1px solid #8f978e}
.form-grid fieldset legend{padding:0 .35rem}
.form-grid fieldset label{display:flex;align-items:center;gap:.45rem;font-weight:400}
.form-note.is-error{color:#8d2e25;font-weight:600}
.form-note.is-success{color:#2d5a36;font-weight:600}
.footer-brand img{width:112px;height:112px;border-radius:50%;object-fit:cover;mix-blend-mode:multiply}

@media(max-width:1360px){
  .site-header{height:106px}.brand img{width:92px;height:92px}.site-header nav{top:106px;max-height:calc(100svh - 106px)}
  .site-header nav>a,.site-header nav>a:not(.nav-contact){font:400 1.35rem/1.2 var(--serif);white-space:normal}
  .site-header .nav-contact{align-self:stretch;text-align:center}
}
@media(max-width:1024px){
  .reference-hero{height:560px}.reference-services .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-services .category-card{min-height:560px}
  .home-about{grid-template-columns:1fr 42%}.home-about-photo{min-height:820px}.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolio-showcase{grid-template-columns:1fr}.portfolio-title{max-width:760px}.home-faq{grid-template-columns:1fr}.home-faq .section-kicker{max-width:none}
  .landing-hero{grid-template-columns:55% 45%;min-height:570px}.landing-copy{padding:4rem 2.5rem}.landing-close{grid-template-columns:1fr 1fr}.landing-close .button{grid-column:2;justify-self:start}
}
@media(max-width:768px){
  .reference-hero{height:auto}.reference-hero .hero-photo.reference-photo{height:360px}.reference-hero .hero-copy{padding:3.2rem 1.5rem 3.5rem}.reference-hero h1{font-size:clamp(3.8rem,12vw,5.5rem)}
  .home-about{grid-template-columns:1fr;grid-template-areas:"photo" "copy" "areas" "value"}.home-about-photo{height:520px;min-height:0}.home-about-copy{padding:3.8rem 1.5rem 2rem}.home-about-areas{padding:0 1.5rem 3.5rem}
  .communion-feature{min-height:440px}.final-cta{grid-template-columns:1fr}.final-cta-actions{min-width:0}
  .landing-hero{grid-template-columns:1fr}.landing-image{order:-1;min-height:52vw}.landing-copy{padding:3.5rem 1.5rem 4rem}.landing-content{grid-template-columns:1fr}.landing-close{grid-template-columns:1fr}.landing-close .button{grid-column:auto}
}
@media(max-width:600px){
  .site-header{height:94px}.site-header nav{top:94px;max-height:calc(100svh - 94px)}.brand img{width:80px;height:80px}.menu-button{min-width:72px;font-size:1rem}.menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .reference-hero .hero-photo.reference-photo{height:300px;background-position:61% center}.reference-hero .hero-copy{padding:2.8rem 1.15rem 3rem}.reference-hero h1{font-size:clamp(3.15rem,15vw,4.35rem)}
  .reference-services{padding:3.8rem .9rem}.section-kicker{margin-bottom:2rem}.section-kicker h2{font-size:2.75rem}.reference-services .category-grid{grid-template-columns:1fr}.reference-services .category-card{display:flex;min-height:0}.reference-services .category-art{aspect-ratio:3/2}.reference-services .category-label{display:flex;padding:1.25rem}.reference-services .card-items{display:block;font-family:var(--sans);font-size:.9rem}.reference-services h3{font-size:1.7rem}
  .home-about-photo{height:390px}.home-about-copy{padding:3.2rem 1.15rem 1.8rem}.home-about-copy h2{font-size:2.85rem}.home-about-areas{grid-template-columns:1fr;padding:0 1.15rem 3rem}.home-about-areas a{font-size:1.35rem}.home-value-line{font-size:1rem}
  .home-testimonials,.landing-reviews{padding:3.8rem 1rem}.testimonial-grid{grid-template-columns:1fr}.testimonial-grid blockquote,.landing-reviews blockquote{min-height:0;padding:1.6rem 1.25rem}.testimonial-grid blockquote>p,.landing-reviews blockquote>p{font-size:1.15rem}
  .portfolio-showcase{padding:3.8rem 1rem}.portfolio-tiles{grid-template-columns:1fr}.portfolio-title h2{font-size:3.2rem}.portfolio-tile{aspect-ratio:3/2}
  .communion-feature{min-height:0;padding:4.5rem 1.15rem;background:linear-gradient(120deg,#f7f3ed,#dfd0bd)}.communion-feature h2{font-size:3rem}.feature-actions{display:grid}.feature-actions .button{width:100%}
  .home-faq{padding:3.8rem 1.15rem}.faq-list summary{font-size:1.15rem}.final-cta{padding:3.8rem 1.15rem}.final-cta h2{font-size:3rem}.final-cta-actions .button{width:100%}
  .landing-image{min-height:72vw}.landing-copy{padding:3rem 1.15rem 3.5rem}.landing-copy h1{font-size:3.45rem}.landing-content{padding:1px}.landing-close{padding:3.8rem 1.15rem}.landing-close h2{font-size:3rem}
  .form-grid{grid-template-columns:1fr}.form-span{grid-column:auto}.contact{padding-inline:1.15rem}.contact h1{font-size:3.25rem}.contact form button{width:100%}
}
@media(max-width:390px){.brand img{width:76px;height:76px}.reference-hero .hero-photo.reference-photo{height:270px}.reference-hero h1{font-size:3.05rem}.reference-services h3{font-size:1.55rem}.home-about-copy h2,.section-kicker h2{font-size:2.6rem}.communion-feature h2,.portfolio-title h2,.final-cta h2{font-size:2.75rem}}
@media(max-width:360px){.site-header{height:88px}.site-header nav{top:88px;max-height:calc(100svh - 88px)}.brand img{width:72px;height:72px}.menu-button{min-width:58px}.reference-hero h1{font-size:2.82rem}.button{letter-spacing:.08em}.package-button{letter-spacing:.05em}}
@media(max-width:360px){
  .wedding-hero-copy h1{font-size:3.05rem}.wedding-package{padding:1.45rem .95rem}.wedding-package li{font-size:1rem}
  .package-head strong{font-size:2.85rem}.package-button{font-size:.73rem;letter-spacing:.08em}
}

/* About Jossie: conversion-focused positioning, separate from service pages. */
.about-conversion{display:grid;grid-template-columns:minmax(340px,42%) minmax(0,58%);background:#f2ede6}
.about-conversion-portrait{min-height:900px;overflow:hidden;background:#ded4c9}
.about-conversion-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 28%}
.about-conversion-copy{min-width:0;padding:clamp(3.5rem,6vw,7rem) clamp(2rem,5.5vw,6.5rem)}
.about-conversion-copy h1{max-width:13ch;margin:.6rem 0 1.6rem;font-size:clamp(3.2rem,4.5vw,5.4rem);line-height:.98}
.about-conversion-lead{max-width:44rem;margin:0 0 2.5rem;color:#35332f;font:clamp(1.25rem,1.5vw,1.55rem)/1.5 var(--serif)}
.about-client-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.about-client-benefits article{min-width:0;padding:1.4rem 1.3rem 1.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-client-benefits h2{margin:0 0 .65rem;font-size:1.5rem;line-height:1.1}
.about-client-benefits p{margin:0;color:#5d5952;font-size:.96rem;line-height:1.6}
.about-method{max-width:45rem;margin:2rem 0 0;padding-left:1.25rem;border-left:2px solid #a77b43;color:#34312d;font:1.2rem/1.55 var(--serif)}
.about-conversion-copy .about-actions{margin-top:1.8rem}
.about-category-proof{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,2fr);gap:clamp(2.5rem,6vw,7rem);padding:clamp(4.5rem,7vw,7rem) clamp(1.25rem,5.5vw,7rem);background:#faf7f2}
.about-category-heading h2{max-width:11ch;margin:.45rem 0 1rem;font-size:clamp(2.8rem,4vw,4.8rem);line-height:.98}
.about-category-heading>p:last-child{max-width:30rem;color:var(--muted)}
.about-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}
.about-category-grid a{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.5rem,2.5vw,2.6rem);background:#f5f0e8}
.about-category-grid a:hover{background:#eee5d8}
.about-category-grid span{color:#936c3c;font-size:.72rem;font-weight:600;letter-spacing:.15em}
.about-category-grid h3{margin:1.15rem 0 .7rem;font-size:clamp(1.8rem,2.4vw,2.7rem);line-height:1.05}
.about-category-grid p{margin:0 0 1.3rem;color:var(--muted)}
.about-category-grid strong{margin-top:auto;border-bottom:1px solid currentColor;color:#4f604f;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.about-value-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #bdaa91;border-bottom:1px solid #bdaa91;background:#e8ddce}
.about-value-strip span{padding:1.3rem 1rem;border-right:1px solid #bdaa91;font:1.2rem/1.25 var(--serif);text-align:center}
.about-value-strip span:last-child{border-right:0}
.about-closing{display:grid;grid-template-columns:.65fr 1.35fr auto;gap:clamp(1.5rem,4vw,4rem);align-items:center;padding:clamp(3.5rem,6vw,6rem) clamp(1.25rem,5.5vw,7rem);background:#f2ede6}
.about-closing h2{max-width:14ch;margin:0;font-size:clamp(2.6rem,4vw,4.8rem);line-height:.98}

@media(max-width:1024px){
  .about-conversion{grid-template-columns:38% 62%}.about-conversion-portrait{min-height:1050px}
  .about-conversion-copy{padding:3.5rem 2.2rem}.about-client-benefits{grid-template-columns:1fr}
  .about-category-proof{grid-template-columns:1fr}.about-category-heading h2{max-width:15ch}
  .about-closing{grid-template-columns:1fr 1.4fr}.about-closing .button{grid-column:2;justify-self:start}
}
@media(max-width:768px){
  .about-conversion{grid-template-columns:1fr}.about-conversion-portrait{min-height:0;height:520px}
  .about-conversion-copy{padding:3.5rem 1.5rem 4rem}.about-conversion-copy h1{max-width:15ch}
  .about-client-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-value-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.about-value-strip span:nth-child(2){border-right:0}.about-value-strip span:nth-child(-n+2){border-bottom:1px solid #bdaa91}
  .about-closing{grid-template-columns:1fr}.about-closing .button{grid-column:auto}
}
@media(max-width:430px){
  .about-conversion-portrait{height:390px}.about-conversion-copy{padding:2.8rem 1.1rem 3.2rem}
  .about-conversion-copy h1{font-size:clamp(2.8rem,12.5vw,3.55rem);overflow-wrap:normal;word-break:normal;hyphens:none}
  .about-conversion-lead{font-size:1.2rem}.about-client-benefits{grid-template-columns:1fr}
  .about-client-benefits article{padding:1.25rem 1rem}.about-conversion-copy .about-actions{display:grid}.about-conversion-copy .about-actions .button{width:100%;min-height:50px}
  .about-category-proof{padding:3.7rem 1rem}.about-category-grid{grid-template-columns:1fr}.about-category-heading h2{font-size:2.85rem}
  .about-value-strip span{padding:1.1rem .6rem;font-size:1.02rem}.about-closing{padding:3.5rem 1rem}.about-closing h2{font-size:2.85rem}
}

/* Final navigation and About-page typography alignment. */
@media(max-width:1360px){
  .site-header nav>a{font:400 1.5rem/1.15 var(--serif)}
  .site-header .nav-contact{font:400 1.35rem/1.15 var(--serif)}
}
body[data-page="sobre-jossie"] .about-conversion-lead,
body[data-page="sobre-jossie"] .about-client-benefits p,
body[data-page="sobre-jossie"] .about-category-heading>p:last-child,
body[data-page="sobre-jossie"] .about-category-grid p{font-family:var(--sans)}
body[data-page="sobre-jossie"] .about-client-benefits h2,
body[data-page="sobre-jossie"] .about-category-grid h3,
body[data-page="sobre-jossie"] .about-method{font-family:var(--serif)}
@media(max-width:767px){
  .home-about .home-about-photo{height:auto;min-height:0;justify-content:center;padding:1.5rem}
  .home-about .home-about-photo img{height:auto;max-width:440px;max-height:none;aspect-ratio:4/5}
}
@media(max-width:430px){
  body[data-page="sobre-jossie"] .about-conversion-copy h1{font-size:3rem;line-height:1.01}
  body[data-page="sobre-jossie"] .about-conversion-lead{font-size:1.08rem;line-height:1.55}
  body[data-page="sobre-jossie"] .about-client-benefits{display:block;border:0}
  body[data-page="sobre-jossie"] .about-client-benefits article{padding:1.45rem 0;border:0;border-top:1px solid var(--line)}
  body[data-page="sobre-jossie"] .about-client-benefits article:last-child{border-bottom:1px solid var(--line)}
  body[data-page="sobre-jossie"] .about-client-benefits h2{margin:0 0 .55rem;font-size:1.65rem}
  body[data-page="sobre-jossie"] .about-client-benefits p{font-size:1rem;line-height:1.55}
  body[data-page="sobre-jossie"] .about-method{margin-top:1.6rem;padding-left:1rem;font-size:1.08rem;line-height:1.55}
  body[data-page="sobre-jossie"] .about-category-grid{display:block;border:0;background:transparent}
  body[data-page="sobre-jossie"] .about-category-grid a{padding:1.5rem 0;border-top:1px solid var(--line);background:transparent}
  body[data-page="sobre-jossie"] .about-category-grid a:last-child{border-bottom:1px solid var(--line)}
  body[data-page="sobre-jossie"] .about-category-grid h3{font-size:1.85rem}
  body[data-page="sobre-jossie"] .about-category-grid p{font-size:1rem;line-height:1.5}
}

/* Transparent approved mark on the continuous header/footer background. */
.site-header .brand img,.footer-brand img{border-radius:0;mix-blend-mode:normal;object-fit:contain}
