:root{--navy:#092d58;--blue:#164f7e;--orange:#e87916;--rust:#9c3e16;--cream:#f8f0df;--paper:#eddbbb;--ink:#25221d;--white:#fffdf8;--radius:22px;--shadow:0 18px 50px rgba(58,39,17,.14)}
@font-face{font-family:"Lobster Local";src:url("fonts/lobster-subset.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Georgia,"Times New Roman",serif;line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.7rem 1rem;background:#fff;color:var(--navy)}.skip-link:focus{top:1rem}.section-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(248,240,223,.94);border-bottom:1px solid rgba(9,45,88,.12);backdrop-filter:blur(12px)}.nav-wrap{width:min(1240px,calc(100% - 32px));min-height:80px;margin:auto;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy);margin-right:auto}.brand img{width:58px;height:52px;object-fit:contain}.brand strong{display:block;font-family:"Segoe Print","Bradley Hand",cursive;font-size:1.3rem;line-height:1.1}.brand small{display:block;color:var(--orange);font:600 .68rem/1.4 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}.site-header nav{display:flex;gap:28px}.site-header nav a{color:var(--navy);text-decoration:none;font-weight:700}.site-header nav a:hover{color:var(--orange)}.call{background:var(--orange);color:#fff;text-decoration:none;padding:.7rem 1rem;border-radius:999px;font:700 .88rem Arial,sans-serif}.menu-toggle{display:none;border:0;background:var(--navy);color:#fff;border-radius:999px;padding:.65rem 1rem;font-weight:700}.hero{min-height:700px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,560px);align-items:center;gap:7vw;padding:90px max(6vw,calc((100vw - 1180px)/2));background:radial-gradient(circle at 10% 10%,rgba(255,255,255,.9),transparent 34%),linear-gradient(120deg,#f7ecd7,#e8c995);isolation:isolate}.hero:before{content:"";position:absolute;inset:0;opacity:.13;z-index:-1;background-image:repeating-linear-gradient(115deg,transparent 0 9px,rgba(118,68,25,.12) 10px 11px)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font:800 .76rem/1.2 Arial,sans-serif;color:var(--orange);margin:0 0 18px}.hero h1,.section-heading h2,.contact h2{font-family:"Segoe Print","Bradley Hand",cursive;color:var(--navy);line-height:1.04;margin:0}.hero h1{font-size:clamp(3rem,5.4vw,6.2rem);letter-spacing:-.04em}.hero h1 em{color:var(--rust);font-style:normal}.hero-copy>p:not(.eyebrow){font-size:1.22rem;max-width:570px}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;padding:.86rem 1.2rem;border-radius:999px;text-decoration:none;font:800 .86rem Arial,sans-serif;letter-spacing:.02em}.button.primary{background:var(--orange);color:#fff}.button.secondary{color:var(--navy);border:1px solid var(--navy);background:rgba(255,255,255,.28)}.hero-image{position:relative;margin:0;padding:14px;background:#fff8e9;border-radius:44% 44% 18px 18px;box-shadow:var(--shadow);transform:rotate(1.5deg)}.hero-image img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:42% 42% 12px 12px}.hero-image figcaption{position:absolute;left:-24px;bottom:40px;padding:12px 20px;background:var(--navy);color:#fff;transform:rotate(-3deg);box-shadow:0 10px 20px rgba(0,0,0,.2)}.hero-image figcaption span,.hero-image figcaption strong{display:block}.hero-image figcaption span{font:700 .7rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em}.compass{position:absolute;right:2vw;top:34px;width:120px;opacity:.32}.intro{padding:85px 8vw;text-align:center;max-width:980px}.intro-lead{font-family:"Segoe Print",cursive;color:var(--rust);font-size:clamp(1.8rem,3vw,2.7rem);margin:0 0 12px}.intro>p:last-of-type{font-size:1.14rem}.trust-row{display:flex;justify-content:center;flex-wrap:wrap;gap:28px;margin-top:32px;color:var(--navy);font:700 .82rem Arial,sans-serif}.news,.gallery{padding:85px 0}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:50px;margin-bottom:36px}.section-heading h2,.contact h2{font-size:clamp(2.35rem,4.5vw,4.4rem);letter-spacing:-.04em}.section-heading>p{margin:0;color:#5d5549}.news-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:24px}.feature-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.pizza-feature{min-height:420px;display:grid;grid-template-columns:.9fr 1.1fr;background:var(--navy);color:#fff}.pizza-feature img{width:100%;height:100%;object-fit:cover}.pizza-feature div{padding:50px;align-self:center}.feature-card h3{font-family:"Segoe Print",cursive;font-size:2rem;line-height:1.18;margin:16px 0}.tag{display:inline-block;background:var(--orange);color:#fff;padding:.38rem .7rem;border-radius:999px;font:800 .68rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.pizza-feature a{color:#ffd493;font-weight:700}.daily-feature{padding:45px;background:#eacb91;color:var(--navy);position:relative}.daily-feature:after{content:"⚓";position:absolute;right:24px;bottom:0;font-size:7rem;opacity:.09}.daily-feature .script{font-family:"Segoe Print",cursive;color:var(--rust);font-size:2.3rem;line-height:1;margin:38px 0 8px}.price-note{font:800 .74rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}.menu-section{padding:90px 0;background:var(--navy);color:#fff}.menu-section .section-heading h2{color:#fff}.menu-section .section-heading>p{color:#cbd8e4}.menu-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 18px;scrollbar-width:thin}.menu-tabs button{white-space:nowrap;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;padding:.65rem .9rem;border-radius:999px;font-weight:800}.menu-tabs button.active{background:var(--orange);border-color:var(--orange)}.menu-content{margin-top:18px}.menu-group{padding:30px 0;border-top:1px solid rgba(255,255,255,.18)}.menu-group h3{font-family:"Segoe Print",cursive;color:#f4c57b;font-size:1.8rem;margin:0 0 18px}.menu-items{display:grid;grid-template-columns:1fr 1fr;gap:5px 38px}.menu-item{display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding:15px 0;border-bottom:1px dashed rgba(255,255,255,.16)}.menu-item h4{margin:0;font-size:1.04rem}.menu-item p{grid-column:1;margin:0;color:#bbcad9;font-size:.88rem}.menu-item strong{grid-column:2;grid-row:1/3;color:#ffd294;white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-auto-rows:280px;gap:14px}.gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:16px}.gallery-grid .wide{grid-row:span 2}.contact{padding:95px 0;background:var(--rust);color:#fff}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.contact h2{color:#fff}.contact p{max-width:560px}.eyebrow.light{color:#ffd39b}.button.outline{border:1px solid #fff;color:#fff}.info-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius);padding:12px 30px}.info-card div{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.18)}.info-card div:last-child{border:0}.info-card span{font:800 .7rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#ffd8aa}footer{background:#061f3c;color:#d6e0e9;padding:24px 0;font-size:.82rem}footer .section-shell{display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){.site-header nav{position:absolute;top:80px;left:16px;right:16px;display:none;flex-direction:column;gap:0;padding:12px;background:var(--white);box-shadow:var(--shadow);border-radius:14px}.site-header nav.open{display:flex}.site-header nav a{padding:12px}.menu-toggle{display:block}.call{display:none}.hero{min-height:auto;grid-template-columns:1fr;padding:70px 20px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-actions{justify-content:center}.hero-image{width:min(550px,100%);margin:10px auto 0}.compass{width:75px}.section-heading,.contact-grid{grid-template-columns:1fr;gap:16px}.news-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .wide{grid-row:span 1}.contact-grid{gap:40px}}
@media(max-width:600px){.nav-wrap{min-height:70px}.brand img{width:45px;height:43px}.brand strong{font-size:1.05rem}.brand small{font-size:.55rem}.site-header nav{top:70px}.hero{padding-top:56px;gap:34px}.hero h1{font-size:clamp(2.75rem,14vw,4rem)}.hero-image{border-radius:34% 34% 14px 14px;padding:9px}.hero-image img{aspect-ratio:4/4.7}.hero-image figcaption{left:10px;bottom:18px}.compass{display:none}.section-shell{width:min(100% - 28px,1180px)}.intro,.news,.gallery{padding-block:64px}.pizza-feature{grid-template-columns:1fr}.pizza-feature img{height:290px}.pizza-feature div,.daily-feature{padding:28px}.menu-section{padding:64px 0}.menu-items{grid-template-columns:1fr}.menu-item strong{white-space:normal;text-align:right}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-grid img:nth-child(n+4){display:none}.contact{padding:70px 0}.info-card{padding:6px 20px}.info-card div{grid-template-columns:1fr;gap:5px}footer .section-shell{flex-direction:column}.trust-row{gap:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Identité maritime — cordages, coque et signalétique de bord */
.site-header{border-bottom:5px solid var(--navy);box-shadow:0 3px 0 #d19a49,0 7px 18px rgba(9,45,88,.1)}
.brand{position:relative}.brand:after{content:"";position:absolute;left:70px;right:0;bottom:-8px;height:3px;background:repeating-linear-gradient(90deg,#b67d35 0 7px,#ead1a5 7px 11px);border-radius:9px}
.site-header nav a{position:relative}.site-header nav a:before{content:"◆";color:var(--orange);font-size:.42rem;margin-right:8px;vertical-align:middle}
.hero{border-bottom:0}.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:34px;background:var(--navy);clip-path:polygon(0 62%,5% 38%,10% 62%,15% 38%,20% 62%,25% 38%,30% 62%,35% 38%,40% 62%,45% 38%,50% 62%,55% 38%,60% 62%,65% 38%,70% 62%,75% 38%,80% 62%,85% 38%,90% 62%,95% 38%,100% 62%,100% 100%,0 100%)}
.nautical-mark{display:inline-grid;place-items:center;width:42px;height:42px;margin-right:12px;border:2px solid currentColor;border-radius:50%;letter-spacing:0;box-shadow:inset 0 0 0 4px rgba(232,121,22,.12)}
.hero-image{border:3px solid #c38b3d;box-shadow:0 0 0 8px #fff8e9,0 0 0 11px var(--navy),var(--shadow)}
.hero-image:after{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.65);border-radius:40% 40% 9px 9px;pointer-events:none}
.hero-anchor{position:absolute;left:2vw;bottom:46px;width:70px;opacity:.16;transform:rotate(-12deg)}
.ship-log{position:relative;background:var(--navy);color:#fff;padding:22px 0;border-bottom:5px solid #c68b3c}.ship-log .section-shell{display:flex;justify-content:space-between;align-items:center}.ship-log p{margin:0;text-align:center}.ship-log span,.ship-log strong{display:block}.ship-log span{color:#e8b96e;font:800 .64rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em}.ship-log strong{font-size:1rem}.ship-log i{width:10px;height:10px;border:2px solid #e8b96e;border-radius:50%;position:relative}.ship-log i:before,.ship-log i:after{content:"";position:absolute;top:2px;width:55px;height:2px;background:repeating-linear-gradient(90deg,#e8b96e 0 5px,transparent 5px 8px)}.ship-log i:before{right:12px}.ship-log i:after{left:12px}
.section-emblem{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;color:var(--navy);font-size:1.45rem;border:2px solid var(--navy);border-radius:50%;box-shadow:inset 0 0 0 5px var(--cream),inset 0 0 0 7px #c48b3e}
.section-heading h2:after{content:"";display:block;width:110px;height:6px;margin-top:14px;background:repeating-linear-gradient(90deg,#bf8439 0 8px,#ead2aa 8px 12px);border-radius:10px}
.feature-card{border:2px solid #c28a40}.pizza-feature img{border-right:8px double #e7b66d}.daily-feature{background:linear-gradient(145deg,#f0d6a1,#dfb66e)}.daily-feature:before{content:"BORD";position:absolute;right:18px;top:16px;color:rgba(9,45,88,.25);font:900 .62rem Arial,sans-serif;letter-spacing:.25em;border:1px solid currentColor;border-radius:50%;padding:11px 6px}
.menu-section{position:relative;background:linear-gradient(90deg,#062544,#0a3868 48%,#062544)}.menu-section:before{content:"";position:absolute;inset:0;opacity:.08;background:repeating-linear-gradient(90deg,transparent 0 118px,#fff 119px 120px)}.deck-panel{position:relative}.deck-panel:before,.deck-panel:after{content:"";position:absolute;top:5px;width:12px;height:12px;border:3px solid #d5a455;border-radius:50%}.deck-panel:before{left:-24px}.deck-panel:after{right:-24px}.menu-tabs{border-bottom:3px double rgba(232,185,110,.6)}.menu-tabs button{border-radius:4px 18px 4px 18px}.menu-tabs button.active{box-shadow:4px 4px 0 #f4d39c}.menu-group h3:before{content:"⚓";font-size:1rem;margin-right:10px;color:#e8b96e}.gallery-grid img{border:5px solid #f8f0df;outline:2px solid #b88038;box-shadow:0 9px 20px rgba(50,34,17,.15)}.gallery-grid img:nth-child(2),.gallery-grid img:nth-child(3){border-radius:50%;aspect-ratio:1;align-self:center}.contact{position:relative;background:linear-gradient(150deg,#a64b20,#7c2e12)}.contact:before{content:"";position:absolute;top:0;left:0;right:0;height:28px;background:var(--cream);clip-path:polygon(0 0,100% 0,100% 15%,96% 70%,92% 15%,88% 70%,84% 15%,80% 70%,76% 15%,72% 70%,68% 15%,64% 70%,60% 15%,56% 70%,52% 15%,48% 70%,44% 15%,40% 70%,36% 15%,32% 70%,28% 15%,24% 70%,20% 15%,16% 70%,12% 15%,8% 70%,4% 15%,0 70%)}
.info-card{border:4px double #f3d3a0;border-radius:90px 90px 24px 24px;box-shadow:inset 0 0 0 8px rgba(255,255,255,.06)}
@media(max-width:900px){.ship-log .section-shell{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ship-log i{display:none}.hero-anchor{display:none}.pizza-feature img{border-right:0;border-bottom:8px double #e7b66d}.deck-panel:before,.deck-panel:after{display:none}}
@media(max-width:600px){.brand:after{left:55px}.site-header nav a:before{display:inline}.ship-log{padding:18px 0}.ship-log strong{font-size:.88rem}.nautical-mark{display:none}.section-heading h2:after{margin-top:10px}.gallery-grid img:nth-child(2),.gallery-grid img:nth-child(3){border-radius:18px;aspect-ratio:auto}.info-card{border-radius:48px 48px 20px 20px}}

/* Carte des pizzas illustrée */
.menu-items.pizza-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pizza-card{display:flex;flex-direction:column;gap:0;padding:0 0 20px;overflow:hidden;background:#fffaf0;color:var(--ink);border:2px solid #c58b3d;border-radius:160px 160px 18px 18px;box-shadow:0 12px 30px rgba(0,0,0,.2);transition:transform .2s ease,box-shadow .2s ease}
.pizza-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(0,0,0,.28)}
.pizza-photo{position:relative;width:100%;aspect-ratio:1.14;overflow:hidden;border-bottom:6px double #c58b3d;background:#d8b57e}
.pizza-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.pizza-card:hover .pizza-photo img{transform:scale(1.04)}
.pizza-card .item-copy{padding:20px;flex:1}
.pizza-card .item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.pizza-card h4{color:var(--navy);font-family:"Segoe Print",cursive;font-size:1.28rem;line-height:1.2}
.pizza-card p{grid-column:auto;color:#62584c;margin-top:8px;line-height:1.5}
.pizza-card .item-price{flex:0 0 auto;margin-left:auto;color:var(--orange);font:900 .95rem/1.4 Arial,sans-serif;text-align:right;white-space:nowrap}
@media(max-width:900px){.menu-items.pizza-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.menu-items.pizza-cards{grid-template-columns:1fr;gap:18px}.pizza-card{display:grid;grid-template-columns:132px 1fr;border-radius:70px 16px 16px 70px;padding:0;min-height:132px}.pizza-photo{grid-column:1;width:132px;height:100%;aspect-ratio:auto;border-bottom:0;border-right:5px double #c58b3d}.pizza-card .item-copy{grid-column:2;padding:18px 14px}.pizza-card h4{font-size:1.02rem}.pizza-card .item-heading{gap:8px}.pizza-card .item-price{font-size:.8rem}.pizza-card p{font-size:.8rem}}

/* Logo horizontal composé de deux découpes du visuel d’origine */
.brand{height:74px;gap:12px;flex:0 0 auto}
.brand img.brand-logo{width:auto;height:100%;object-fit:contain}
.brand img.brand-name{width:auto;height:80%;object-fit:contain}
.brand:after{left:112px;bottom:0}
@media(max-width:1100px){.brand{height:64px}.brand img.brand-name{height:70%}}
@media(max-width:600px){.brand{height:50px;gap:7px}.brand img.brand-name{height:80%;max-width:174px}.brand:after{left:72px;bottom:-6px}}

/* Lettrage inspiré du logo */
.hero .eyebrow{font-family:"Lobster Local","Segoe Script",cursive;font-size:1.12rem;font-weight:400;text-transform:none;letter-spacing:.035em}
.hero .nautical-mark{width:54px;height:54px;font-family:"Lobster Local","Segoe Script",cursive;font-size:.92rem;font-weight:400;line-height:1;white-space:nowrap}
.hero h1{font-family:"Lobster Local","Segoe Script",cursive;font-size:clamp(2.8rem,4vw,4.8rem);font-weight:400;letter-spacing:0}
.hero h1,.hero h1 em{white-space:nowrap}
@media(min-width:1101px){.hero{grid-template-columns:minmax(0,1fr) minmax(380px,500px);gap:clamp(40px,5vw,72px)}.hero-copy{min-width:0}}
@media(max-width:1100px){.hero{min-height:auto;grid-template-columns:1fr;padding:70px 20px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-actions{justify-content:center}.hero-image{width:min(550px,100%);margin:10px auto 0}}
@media(max-width:600px){.hero h1{font-size:clamp(2rem,9vw,2.9rem)}}
