@font-face {
  font-family: 'Tinos';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/tinos-italic-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Tinos';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/tinos-italic-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Tinos';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/tinos-normal-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Tinos';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/tinos-normal-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Tinos';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/tinos-normal-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Tinos';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/tinos-normal-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Zeyada';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/zeyada-normal-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Zeyada';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/zeyada-normal-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Cami Del Toro — layout modeled on a Squarespace editorial template */
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:Tinos,"Times New Roman",Times,serif;font-weight:400;font-size:16px;line-height:1.4;letter-spacing:.05em;color:#000;background:#fff;-webkit-font-smoothing:antialiased}
body.locked{overflow:hidden}
a{color:inherit}
img{display:block}
picture{display:contents}
picture>source{display:none}
.logo{font-family:Zeyada,cursive;font-weight:400;letter-spacing:-.01em;line-height:1;white-space:nowrap;-webkit-text-stroke:.035em currentColor;text-decoration:none;display:inline-block}

/* header */
.header{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:43px 58px 0 58px;height:130px;color:#fff}
.header .logo{font-size:46px;margin-top:-6px}
.header nav{display:flex;gap:36px;margin-right:163px}
.header nav a{text-decoration:none;font-size:16px;letter-spacing:.05em;line-height:22.4px;padding:1.6px 0}
.burger{display:none;background:none;border:0;width:36px;height:24px;position:relative;cursor:pointer;color:inherit}
.burger span{position:absolute;left:0;right:0;height:1px;background:currentColor;transition:transform .3s,top .3s}
.burger span:nth-child(1){top:7px}.burger span:nth-child(2){top:16px}
body.menu-open .burger span:nth-child(1){top:12px;transform:rotate(45deg)}
body.menu-open .burger span:nth-child(2){top:12px;transform:rotate(-45deg)}
.menu{position:fixed;inset:0;background:#fff;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.menu a{font-size:31px;letter-spacing:.02em;text-decoration:none;color:#000}
body.menu-open .menu{opacity:1;visibility:visible}
body.menu-open .header{color:#000;position:fixed}

/* full-bleed sections */
.bleed{position:relative;height:100vh;min-height:560px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#fff}
.bleed>img,.bleed>picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.bleed::after{content:"";position:absolute;inset:0;background:#000;opacity:.15;pointer-events:none}
.bleed.hero::after{background:rgb(98,84,72);opacity:.04}
.bleed h1,.bleed h2{position:relative;z-index:2;font-weight:400;font-size:40px;line-height:47px;letter-spacing:.02em;text-align:center;max-width:1080px;padding:0 18px;margin-top:-16px}
.bleed h1 a,.bleed h2 a{color:rgb(230,228,232);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}

/* intro */
.intro{display:grid;grid-template-columns:703fr 703fr;column-gap:34px;padding:16px 0 17px;min-height:1061px}
.intro .copy{padding-top:176px}
.intro .copy .logo{font-size:150px;margin-left:2px;-webkit-text-stroke:.045em currentColor}
.intro .copy .text{margin-top:84px;max-width:703px;padding-right:20px}
.intro p{margin:0 0 16px}
.intro p+p{margin-top:0}
.intro figure{aspect-ratio:703/1028;overflow:hidden}
.intro figure img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transform:scale(1.35);transform-origin:52% 12%}

/* footer */
footer{background:#000;color:#fff;text-align:center;height:362px;padding-top:24px;position:relative}
footer .logo{font-size:98px}
footer .social{margin-top:40px;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 26px;font-size:16px}
footer .social a{text-decoration:none}
footer .social a:hover{text-decoration:underline}
footer .copy{position:absolute;left:0;right:0;top:284px}

/* gallery page */
.gallery-page .header{color:#000;position:relative}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:40px 0 80px}
.grid img{width:100%;aspect-ratio:3/4;object-fit:cover}
.gallery-title{text-align:center;font-weight:400;font-size:40px;line-height:47px;letter-spacing:.02em;padding:40px 18px 0}
.gallery-cta{text-align:center;padding:0 18px 90px;font-size:40px;line-height:47px;letter-spacing:.02em}
.gallery-cta a{text-underline-offset:4px;text-decoration-thickness:1px}

/* SEO helpers + FAQ */
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.faq{max-width:703px;margin:0 auto;padding:96px 20px 104px}
.faq h2{font-weight:400;font-size:40px;line-height:47px;letter-spacing:.02em;text-align:center;margin-bottom:44px}
.faq .q{margin-bottom:28px}
.faq h3{font-weight:700;font-size:16px;line-height:1.4;letter-spacing:.05em;margin-bottom:6px}
.faq p{margin:0}
.faq .aka{margin-top:40px;text-align:center;font-size:13px;color:#777}
.page-copy{max-width:703px;margin:28px auto 0;padding:0 20px;text-align:center}
.page-copy p{margin:0 0 12px}
.page-copy a,.page-home a{text-underline-offset:3px;text-decoration-thickness:1px}
.page-links{list-style:none;text-align:center;padding:36px 18px 10px;font-size:40px;line-height:47px;letter-spacing:.02em}
.page-links li{margin-bottom:14px}
.page-links a{text-underline-offset:4px;text-decoration-thickness:1px}
.page-photo{max-width:703px;margin:40px auto 0;padding:0 20px;aspect-ratio:3/4}
.page-photo img{width:100%;height:100%;object-fit:cover}
.page-home{text-align:center;padding:40px 18px 90px}
.grid img{height:auto}
footer .copy .jdot{color:#666;margin:0 4px}
footer .copy .jl{color:#888;text-decoration:none;font-size:.85em;letter-spacing:.04em}
footer .copy .jl:hover{color:#fff;text-decoration:underline}
.lt-line{max-width:703px;margin:44px auto 0;padding:22px 20px 0;border-top:1px solid #ddd;text-align:center;font-size:15px;color:#555}
.lt-line a{color:#000;text-underline-offset:3px;text-decoration-thickness:1px}
.page-home{text-align:center;margin:36px 0 60px;font-size:14px}
.page-home a{color:#777}
.jlist{max-width:703px;margin:40px auto 0;padding:0 20px;list-style:none}
.jlist li{padding:22px 0;border-bottom:1px solid #e5e5e5}
.jlist li:first-child{border-top:1px solid #e5e5e5}
.jlist a{font-size:24px;text-decoration:none;color:#000;line-height:1.3}
.jlist a:hover{text-decoration:underline;text-underline-offset:4px}
.jlist p{font-size:15px;color:#555;margin-top:6px;line-height:1.5}
.jintro{max-width:620px;margin:18px auto 0;padding:0 20px;text-align:center;font-size:16px;color:#444;line-height:1.6}
.article .crumbs{max-width:703px;margin:0 auto;padding:10px 20px 0;font-size:13px;color:#777;text-align:center}
.article .crumbs a{color:#777}
.article .byline{text-align:center;font-size:13px;color:#777;margin-top:12px}
.article-photo{max-width:703px;margin:32px auto 0;padding:0 20px}
.article-photo img{width:100%;height:auto;max-height:80vh;object-fit:cover}
.article-body{max-width:703px;margin:36px auto 0;padding:0 20px;font-size:17px;line-height:1.65;letter-spacing:.02em}
.article-body .lede{font-style:italic;font-size:19px}
.article-body h2{font-weight:400;font-size:28px;line-height:1.25;margin:40px 0 12px;letter-spacing:.02em}
.article-body h3{font-weight:700;font-size:17px;margin:22px 0 6px}
.article-body p{margin:0 0 14px}
.article-body ul,.article-body ol{margin:0 0 16px 22px}
.article-body li{margin-bottom:6px}
.article-body a,.related a{text-underline-offset:3px;text-decoration-thickness:1px}
.cta{max-width:703px;margin:48px auto 0;padding:32px 20px;text-align:center;border-top:1px solid #000;border-bottom:1px solid #000}
.cta-title{font-size:28px;margin-bottom:10px}
.cta-btn{margin-top:18px}
.cta-btn a{display:inline-block;background:#000;color:#fff;text-decoration:none;padding:14px 26px;letter-spacing:.08em}
.related{max-width:703px;margin:40px auto 0;padding:0 20px;text-align:center}
.related ul{list-style:none}
.related li{margin:8px 0}
.faq a{text-underline-offset:3px;text-decoration-thickness:1px}

/* 18+ gate */
#gate{position:fixed;inset:0;z-index:100;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:#000}
#gate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:blur(14px);transform:scale(1.08);opacity:.85}
#gate::after{content:"";position:absolute;inset:0;background:#000;opacity:.45}
#gate .inner{position:relative;z-index:2;padding:0 24px;max-width:720px}
#gate .logo{font-size:132px}
#gate p{margin:26px auto 34px;max-width:600px}
#gate .choices{display:flex;justify-content:center;gap:54px}
#gate .choices a,#gate .choices button{background:none;border:0;cursor:pointer;font:inherit;font-size:31px;letter-spacing:.02em;color:rgb(230,228,232);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
#gate.hidden{display:none}

@media (max-width:767px){
  .header{padding:26px 25px 0 25px;height:90px;align-items:flex-start}
  .header .logo{font-size:29px;margin-top:2px}
  .header nav{display:none}
  .burger{display:block;margin-top:6px}
  .bleed{height:100vh;height:100svh}
  .bleed h1,.bleed h2{font-size:31.19px;line-height:36.65px;letter-spacing:.02em;padding:0 16px}
  .intro{display:block;padding:0 0 32px;min-height:0}
  .intro .copy{padding:73px 0 0}
  .intro .copy .logo{font-size:86px;margin-left:2px;max-width:100%;-webkit-text-stroke:.045em currentColor}
  .intro .copy .text{margin-top:44px;padding:0 0 0 0}
  .intro figure{margin-top:34px;aspect-ratio:390/560}
  footer{height:353px;padding-top:30px}
  footer .logo{font-size:80px}
  footer .social{margin-top:28px;gap:6px 18px;padding:0 20px;font-size:15px}
  footer .copy{top:288px}
  .grid{grid-template-columns:1fr;gap:16px;padding:20px 0 50px}
  .faq{padding:64px 20px 72px}
  .page-links{font-size:31px;line-height:36.65px}
  .faq h2{font-size:31px;line-height:36.65px;margin-bottom:32px}
  .gallery-title,.gallery-cta{font-size:31px;line-height:36.65px}
  #gate .logo{font-size:74px}
  #gate .choices a,#gate .choices button{font-size:26px}
}
