/* Café Avenue Road: a shared editorial finish across the public site. */
:root{
  --ink:#0b3026;--ink2:#164235;--green:#0b3026;
  --gold:#d4ad65;--paper:#fcfaf5;--cream:#f3efe7;
  --line:#ded8cc;--muted:#4c5a50;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased}
body h1,body h2,body h3{font-family:"Playfair Display",Georgia,serif;font-weight:400;letter-spacing:-.025em}
body p{line-height:1.68}
body img{max-width:100%}
body a{text-underline-offset:4px}
body a:focus-visible,body button:focus-visible{outline:3px solid #c28d36;outline-offset:4px}
body>header{background:var(--ink);border-bottom:1px solid rgba(221,188,117,.27);box-shadow:none}
body>header .brand,.site-footer .footer-brand>a{background:var(--ink);isolation:isolate}
body>header .brand img,.site-footer .footer-logo{mix-blend-mode:lighten}
body>header nav a{font-weight:600;letter-spacing:.035em;font-size:.88rem;transition:color .2s ease}
body>header nav a:hover,body>header nav a[aria-current]{color:#e9c888;text-decoration:none;border-bottom:1px solid currentColor}
body>header nav .nav-visit,body>header nav .directions{border-color:rgba(233,200,136,.75);color:#edd098;padding:10px 18px}
body>header nav .nav-visit:hover,body>header nav .directions:hover{background:#e7c588;color:var(--ink)}
@media(min-width:901px){
  body>header{min-height:117px;padding-left:clamp(22px,5vw,82px);padding-right:clamp(22px,5vw,82px)}
  body>header .brand{left:clamp(105px,17vw,355px);top:13px}
  body>header .brand img{width:144px;height:144px}
  body>header.article-header{min-height:130px}
  body>header+.intro{padding-top:clamp(68px,6vw,92px)}
}
@media(min-width:651px) and (max-width:900px){
  body>header{min-height:98px}
  body>header .brand{margin-left:clamp(20px,6vw,55px)}
  body>header .brand img{width:104px;height:104px}
}
.eyebrow,.count,.offer-num,.custom-step span,.step span{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.intro{position:relative;overflow:hidden;background:var(--ink);padding-top:clamp(62px,7vw,102px);padding-bottom:clamp(64px,7vw,106px)}
.intro:after{content:"";position:absolute;right:clamp(24px,8vw,150px);bottom:0;width:min(18vw,240px);height:1px;background:var(--gold);opacity:.65}
.intro h1{max-width:1000px;line-height:1.1;letter-spacing:-.035em}
.intro p:last-child{line-height:1.7}

/* The first impression is the café's food, framed as a quiet editorial image. */
.hero{background:var(--ink);grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);min-height:620px}
.hero-copy{padding:clamp(60px,7vw,104px) clamp(28px,6.5vw,112px);position:relative}
.hero-copy:before{content:"";width:68px;height:1px;background:var(--gold);margin-bottom:30px}
.hero .eyebrow{margin-bottom:21px;color:#e9c888}
.hero h1{font-size:clamp(3.35rem,5.4vw,6rem);line-height:1.08;max-width:11ch;margin-bottom:29px}
.hero h1 em{font-style:italic;color:#edce91}
.hero-copy>p:not(.eyebrow){line-height:1.75;color:#e7e9df;max-width:30rem;margin-bottom:32px}
.hero-photo{min-height:620px;background:#d8cfc0}
.hero-photo img{object-position:center center;filter:saturate(.92) contrast(1.02)}
.hero-photo:after{background:linear-gradient(90deg,rgba(11,48,38,.12),transparent 25%)}
.button,.custom-actions a,.contact-cta .actions a,.details .whatsapp-link,.submit{border-radius:0;transition:background .2s,color .2s,transform .2s}
.button.primary{background:#dfbc78;color:var(--ink)}
.button.primary:hover,.custom-actions a:first-child:hover,.contact-cta .actions a:first-child:hover{background:#edcd91;color:var(--ink);text-decoration:none}
.button.secondary{border-color:rgba(241,224,190,.65)}
.address-ribbon{background:#e9e0cf;color:var(--ink);border-bottom:1px solid #d9d0c0;font-size:.82rem;font-weight:600;letter-spacing:.035em;padding-top:14px;padding-bottom:14px}
.address-ribbon a{font-weight:700}

.section{padding:clamp(62px,7vw,106px) clamp(22px,8vw,140px)}
.section-heading{margin-bottom:34px;gap:clamp(22px,5vw,90px)}
.section-heading h2{letter-spacing:-.035em}
.section-heading p{line-height:1.7}
.offerings{background:var(--paper);padding-top:clamp(65px,7vw,103px);padding-bottom:clamp(26px,3vw,42px)}
.offerings .section-heading{margin-bottom:30px}
.offer-grid{border-color:var(--line)}
.offer{padding:32px 28px 33px 0}
.offer+.offer{border-color:var(--line);padding-left:30px}
.offer h3{margin:20px 0 10px}
.offer p{line-height:1.65}
.offerings .menu-link{font-size:.93rem;margin-top:24px}
.offerings .menu-link+.menu-link{margin-left:24px}
.custom-cakes{background:var(--paper);padding-top:clamp(10px,1.5vw,22px);padding-bottom:clamp(68px,7vw,108px)}
.custom-lead{gap:clamp(36px,6vw,100px)}
.custom-photo{min-height:440px;background:#eee9df}
.custom-photo img{object-fit:cover;object-position:center}
.custom-photo figcaption{padding:12px 0;color:#536059;background:var(--paper);font-size:.84rem}
.custom-copy h2{max-width:12ch;line-height:1.1}
.custom-steps{border-color:var(--line);margin-top:clamp(30px,4vw,58px)}
.custom-step+.custom-step{border-color:var(--line)}
.custom-step p{line-height:1.65}
.persian-feature{background:#103a2f;padding-top:clamp(68px,7vw,102px);padding-bottom:clamp(68px,7vw,102px)}
.persian-inner{max-width:1220px}
.persian-heading{margin-bottom:24px}
.persian-intro{margin-bottom:34px}
.persian-grid{gap:clamp(20px,3vw,44px)}
.persian-item img{aspect-ratio:4/3;object-fit:cover;background:#e9e5dc;margin-bottom:17px}
.persian-item h3{font-size:clamp(1.7rem,2.1vw,2.2rem)}
.bread-feature,.tea-feature{background:#eee9df}
.bread-feature h2,.tea-feature h2{line-height:1.13}
.bread-copy,.tea-feature-copy{padding:clamp(50px,6vw,94px) clamp(28px,6vw,100px)}
.bread-photo img,.tea-feature-photo img{filter:saturate(.9)}
.order-section{background:var(--paper)}
.order-grid{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.order-card{border:0;padding:clamp(28px,3vw,44px)}
.order-card:first-child{padding-left:0}
.order-card+.order-card{border-left:1px solid var(--line)}
.order-note{line-height:1.65}
.visit{background:#e9e2d5}
.visit-card{box-shadow:12px 12px 0 #cbb990;background:var(--ink)}
.site-footer{background:var(--ink);border-top:1px solid rgba(221,188,117,.3);padding-top:50px;padding-bottom:52px}
.site-footer .footer-logo{width:124px;height:124px}
.site-footer .footer-grid{padding-top:14px}
.site-footer .footer-col h2{color:#e7c586}
.site-footer .footer-col a{margin-bottom:12px}

/* Inner pages use the same visual cadence and quieter product framing. */
.category-nav{gap:8px;padding-top:24px;padding-bottom:26px}
.category-nav a{border-color:#d3cbbb;background:#f7f3eb;padding:9px 14px;font-weight:600}
.category-nav a:hover{background:var(--ink);color:#fff}
.category{padding:clamp(42px,5vw,68px) 0;border-color:var(--line)}
.category h2{line-height:1.15}
.items li{border-color:#e4ded2;padding-top:13px;padding-bottom:13px}
.cake-gallery{gap:16px}
.cake-card{background:#f3efe7}
.cake-card img{filter:saturate(.92);transition:transform .4s ease}
.cake-card:hover img{transform:scale(1.025)}
.cake-card figcaption{background:#f3efe7;font-weight:600;padding:15px 17px}
.cake-card .photo-frame img{transform:none}
.tea-card{background:#f3efe7}
.menu-end{background:#eae4d9}
.menu-end a{background:var(--ink)}
.allergen-notice{background:#f2eee5;border-left-color:#b48b4b}
.vision{padding-top:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px)}
.vision img{filter:saturate(.92)}
.process{background:#f2eee6}
.step+.step{border-color:var(--line)}
.contact-cta aside{background:var(--ink)}
.form-wrap{background:#f2eee6;border-top:2px solid #bc9655}
.field input,.field textarea{border-color:#c6c1b7}

@media(max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:70px clamp(24px,7vw,70px) 68px}
  .hero h1{max-width:14ch}
  .hero-photo{height:480px;min-height:0}
  .custom-photo{min-height:0}
}
@media(max-width:700px){
  .persian-item img{aspect-ratio:4/3}
  .order-grid{grid-template-columns:1fr;border-bottom:0}
  .order-card,.order-card:first-child{padding:24px 0;border-bottom:1px solid var(--line)}
  .order-card+.order-card{border-left:0}
}
@media(max-width:650px){
  body>header{border-bottom-color:rgba(221,188,117,.3)}
  body>header .brand{margin-left:7px}
  body>header .brand img{width:77px!important;height:77px!important}
  body.scrolled>header .brand img{width:58px!important;height:58px!important}
  body>header nav a{letter-spacing:0}
  .hero-copy{padding:54px 23px 55px}
  .hero-copy:before{margin-bottom:23px}
  .hero h1{font-size:clamp(3rem,10.5vw,4.3rem);max-width:12ch}
  .hero-photo{height:360px}
  .address-ribbon{padding-top:12px;padding-bottom:13px}
  .section{padding-top:58px;padding-bottom:60px}
  .offerings{padding-bottom:20px}
  .offerings .section-heading{margin-bottom:22px}
  .offer,.offer+.offer{padding:24px 0}
  .offerings .menu-link{margin-top:22px}
  .offerings .menu-link+.menu-link{margin-left:18px}
  .custom-cakes{padding-top:14px;padding-bottom:65px}
  .custom-photo{height:280px}
  .custom-steps{margin-top:30px}
  .persian-feature{padding-top:64px;padding-bottom:68px}
  .persian-item img{aspect-ratio:4/3}
  .bread-copy,.tea-feature-copy{padding:42px 23px 54px}
  .intro{padding-top:55px;padding-bottom:60px}
  .intro h1{font-size:clamp(3rem,11vw,4.6rem)}
  .category{padding:42px 0}
  .cake-gallery{gap:9px}
  .cake-card figcaption{padding:11px 12px}
  .site-footer .footer-logo{width:115px;height:115px}
}
@media(prefers-reduced-motion:reduce){.cake-card img,.button{transition:none}}

.category#cakes .cake-accessories{grid-column:2;margin-top:8px;padding:22px 26px;background:#f3efe7}.cake-accessories h3{font:400 1.35rem/1.25 "Playfair Display",Georgia,serif;margin:0 0 9px;color:#243e35}.cake-accessories .items{font-size:.92rem}@media(max-width:700px){.category#cakes .cake-accessories{grid-column:1/-1;padding:20px}}
