Custom Bottle
Explore our comprehensive platform for designing whisky bottles and labels, offering tools to customize bottle shapes, select whisky types, and create unique label designs with personalized branding and details.

Explore Our Bottle Design
Discover our comprehensive whisky bottle and label design platform, offering powerful tools to customize bottle shapes and select your preferred whisky types.

Custom Shapes
Tailor unique whisky bottle silhouettes to stand out.
Whisky Selection
Choose from a wide variety of premium whisky types.
Label Branding
Create personalized label designs with custom details.
Design Process
Follow our intuitive step-by-step workflow to shape your custom whisky bottles, select fine spirits, and craft unique branded labels.

Shape Your Bottle
Customize the unique contours and profile of your whisky bottle.
Select Spirit Type
Choose your preferred whisky variety for the blend.
Create Custom Labels
Design distinctive labels featuring your personalized branding and details.
Explore Custom Whisky Designs
This section presents practical examples that illustrate how distillers and brands successfully utilize our platform to create unique bottles and labels.
Crafting Signature Bottle Shapes
This is the first use case description, explaining its purpose and highlighting how it effectively shapes distinct whisky bottles while improving branding.
Selecting Premium Whisky Types
This is the second use case description, emphasizing how it streamlines selecting whisky types and enhances the overall creation experience for users.
Designing Personalized Labels
This is the fourth use case description, demonstrating its impact by personalizing label designs and ensuring a more seamless and distinctive product.
This is where a customer testimonial should go. Feel free to include whatever content you have.

Person 3
Job Title, Company Name
Start Designing Your Custom Whisky Bottle Today
This section invites visitors to explore our comprehensive platform, select whisky types, customize bottle shapes, and create unique label designs with personalized branding and details.

<div id="caskbase-designer">
<style>
#caskbase-designer {
--gold:#c8a45d;
--dark:#080808;
--dark2:#111111;
--cream:#f4efe5;
--muted:#aaa;
font-family:Arial,Helvetica,sans-serif;
background:#080808;
color:#fff;
padding:50px 20px;
}
#caskbase-designer * {
box-sizing:border-box;
}
.cask-container {
max-width:1200px;
margin:auto;
}
.cask-heading {
text-align:center;
margin-bottom:45px;
}
.cask-heading h1 {
font-family:Georgia,serif;
font-size:48px;
font-weight:400;
letter-spacing:3px;
margin:0 0 12px;
}
.cask-heading p {
color:#aaa;
font-size:16px;
}
.cask-grid {
display:grid;
grid-template-columns:420px 1fr;
gap:50px;
align-items:start;
}
.cask-panel {
background:#111;
border:1px solid #292929;
padding:30px;
border-radius:4px;
}
.cask-panel h2 {
font-family:Georgia,serif;
font-weight:400;
color:var(--gold);
margin-top:0;
}
.cask-field {
margin-bottom:20px;
}
.cask-field label {
display:block;
font-size:12px;
text-transform:uppercase;
letter-spacing:1.5px;
color:#aaa;
margin-bottom:8px;
}
.cask-field input,
.cask-field select,
.cask-field textarea {
width:100%;
padding:13px;
background:#080808;
color:#fff;
border:1px solid #333;
border-radius:2px;
font-size:15px;
}
.cask-field textarea {
min-height:90px;
resize:vertical;
}
.cask-field input:focus,
.cask-field select:focus,
.cask-field textarea:focus {
outline:none;
border-color:var(--gold);
}
.cask-upload {
border:1px dashed #555;
padding:20px;
text-align:center;
color:#aaa;
}
.cask-upload input {
border:0;
padding:0;
}
.cask-buttons {
display:flex;
gap:10px;
flex-wrap:wrap;
margin-top:25px;
}
.cask-btn {
padding:13px 20px;
border:1px solid var(--gold);
background:transparent;
color:var(--gold);
cursor:pointer;
text-transform:uppercase;
letter-spacing:1px;
font-size:11px;
}
.cask-btn.primary {
background:var(--gold);
color:#000;
}
.cask-btn:hover {
opacity:.85;
}
/* LABEL */
.label-area {
display:flex;
justify-content:center;
align-items:center;
min-height:700px;
background:
radial-gradient(circle at center,#1c1c1c 0,#0c0c0c 65%);
padding:30px;
}
.whisky-bottle {
width:280px;
position:relative;
filter:drop-shadow(0 25px 25px rgba(0,0,0,.7));
}
.bottle-neck {
width:90px;
height:120px;
background:linear-gradient(90deg,#161616,#555,#151515);
margin:auto;
border-radius:8px 8px 2px 2px;
}
.bottle-cap {
width:98px;
height:25px;
background:#171717;
margin:-3px auto 0;
border-radius:4px;
border-top:2px solid var(--gold);
}
.bottle-body {
width:280px;
height:470px;
background:
linear-gradient(90deg,
rgba(255,255,255,.04),
rgba(255,255,255,.15),
rgba(255,255,255,.03));
border:2px solid #3b3b3b;
border-radius:35px 35px 45px 45px;
position:relative;
overflow:hidden;
}
.whisky-liquid {
position:absolute;
bottom:0;
width:100%;
height:70%;
background:linear-gradient(
180deg,
#a96d24,
#6e3d13
);
opacity:.9;
}
.label {
position:absolute;
z-index:5;
left:25px;
right:25px;
top:100px;
min-height:245px;
background:#f4efe5;
color:#171717;
padding:22px 15px;
text-align:center;
border:5px double #171717;
box-shadow:0 8px 20px rgba(0,0,0,.4);
}
.label.gold {
background:#171717;
color:#f4efe5;
border-color:#c8a45d;
}
.label.black {
background:#0b0b0b;
color:#f4efe5;
border-color:#aaa;
}
.label h3 {
font-family:Georgia,serif;
font-size:24px;
margin:10px 0;
letter-spacing:2px;
}
.label .label-brand {
font-size:9px;
letter-spacing:4px;
text-transform:uppercase;
}
.label .label-vintage {
font-size:12px;
letter-spacing:2px;
margin:12px 0;
}
.label .label-cask {
font-size:10px;
margin-top:18px;
letter-spacing:1px;
}
.label .label-abv {
font-size:10px;
margin-top:7px;
}
.label-logo {
max-width:60px;
max-height:45px;
margin:4px auto;
display:none;
}
.label-note {
font-size:8px;
line-height:1.4;
margin-top:12px;
}
.designer-status {
margin-top:15px;
color:#aaa;
font-size:12px;
}
/* RESPONSIVE */
@media(max-width:850px) {
.cask-grid {
grid-template-columns:1fr;
}
.cask-heading h1 {
font-size:36px;
}
.label-area {
min-height:600px;
}
}
</style>
<div class="cask-container">
<div class="cask-heading">
<h1>CASKBASE BOTTLING STUDIO</h1>
<p>Design your bottle. Create your label. Build your whisky.</p>
</div>
<div class="cask-grid">
<!-- CONTROLS -->
<div class="cask-panel">
<h2>Label Designer</h2>
<div class="cask-field">
<label>Cask / Whisky</label>
<select id="whisky">
<option value="Macallan">Macallan</option>
<option value="Tamdhu">Tamdhu</option>
<option value="Linkwood">Linkwood</option>
<option value="Staoisha">Staoisha</option>
<option value="Ben Nevis">Ben Nevis</option>
<option value="Caol Ila">Caol Ila</option>
<option value="Glencadam">Glencadam</option>
<option value="Deanston">Deanston</option>
<option value="Custom">Custom Whisky</option>
</select>
</div>
<div class="cask-field">
<label>Whisky Name</label>
<input
id="whiskyName"
type="text"
value="Caskbase Private Cask"
>
</div>
<div class="cask-field">
<label>Vintage</label>
<input
id="vintage"
type="text"
value="2026"
>
</div>
<div class="cask-field">
<label>Cask Number</label>
<input
id="caskNumber"
type="text"
value="001"
>
</div>
<div class="cask-field">
<label>Bottle Number</label>
<input
id="bottleNumber"
type="text"
value="001 / 333"
>
</div>
<div class="cask-field">
<label>Alcohol</label>
<input
id="abv"
type="text"
value="46% ABV"
>
</div>
<div class="cask-field">
<label>Design Style</label>
<select id="style">
<option value="classic">Classic</option>
<option value="gold">Black & Gold</option>
<option value="black">Luxury Black</option>
</select>
</div>
<div class="cask-field">
<label>Custom Description</label>
<textarea id="description">Single Cask Scotch Whisky. Matured in oak and bottled exclusively for the Caskbase collection.</textarea>
</div>
<div class="cask-field">
<label>Upload Logo</label>
<div class="cask-upload">
<input
type="file"
id="logoUpload"
accept="image/*"
>
</div>
</div>
<div class="cask-buttons">
<button
class="cask-btn primary"
onclick="downloadLabel()">
Download Label
</button>
<button
class="cask-btn"
onclick="window.print()">
Print
</button>
</div>
<div class="designer-status">
Your design updates live on the bottle.
</div>
</div>
<!-- PREVIEW -->
<div class="label-area">
<div class="whisky-bottle">
<div class="bottle-neck"></div>
<div class="bottle-cap"></div>
<div class="bottle-body">
<div class="whisky-liquid"></div>
<div
id="label"
class="label">
<div class="label-brand">
CASKBASE
</div>
<img
id="labelLogo"
class="label-logo"
alt="Logo">
<h3 id="previewName">
Caskbase Private Cask
</h3>
<div
class="label-vintage"
id="previewVintage">
2026
</div>
<div
class="label-cask"
id="previewCask">
SINGLE CASK • CASK 001
</div>
<div
class="label-abv"
id="previewAbv">
46% ABV
</div>
<div
class="label-cask"
id="previewBottle">
BOTTLE 001 / 333
</div>
<div
class="label-note"
id="previewDescription">
Single Cask Scotch Whisky.
Matured in oak and bottled exclusively
for the Caskbase collection.
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
/* LIVE DESIGNER */
function updateLabel() {
document.getElementById("previewName").innerText =
document.getElementById("whiskyName").value;
document.getElementById("previewVintage").innerText =
document.getElementById("vintage").value;
document.getElementById("previewCask").innerText =
"SINGLE CASK • CASK " +
document.getElementById("caskNumber").value;
document.getElementById("previewBottle").innerText =
"BOTTLE " +
document.getElementById("bottleNumber").value;
document.getElementById("previewAbv").innerText =
document.getElementById("abv").value;
document.getElementById("previewDescription").innerText =
document.getElementById("description").value;
const style =
document.getElementById("style").value;
const label =
document.getElementById("label");
label.className = "label";
if(style === "gold") {
label.classList.add("gold");
}
if(style === "black") {
label.classList.add("black");
}
}
/* INPUT EVENTS */
document.querySelectorAll(
"#caskbase-designer input, #caskbase-designer textarea, #caskbase-designer select"
).forEach(function(element) {
element.addEventListener(
"input",
updateLabel
);
element.addEventListener(
"change",
updateLabel
);
});
/* LOGO UPLOAD */
document.getElementById("logoUpload")
.addEventListener("change", function(event) {
const file =
event.target.files[0];
if(!file) return;
const reader =
new FileReader();
reader.onload = function(e) {
const logo =
document.getElementById("labelLogo");
logo.src = e.target.result;
logo.style.display = "block";
};
reader.readAsDataURL(file);
});
/* DOWNLOAD */
function downloadLabel() {
const label =
document.getElementById("label");
const popup =
window.open("", "_blank");
popup.document.write(`
<html>
<head>
<title>Caskbase Label</title>
<style>
body {
background:#fff;
display:flex;
justify-content:center;
padding:50px;
}
.label {
width:350px;
min-height:430px;
background:#f4efe5;
color:#171717;
padding:35px 25px;
text-align:center;
border:7px double #171717;
font-family:Arial,sans-serif;
}
.label h3 {
font-family:Georgia,serif;
font-size:28px;
letter-spacing:2px;
}
.label-brand {
font-size:11px;
letter-spacing:5px;
}
.label-vintage {
margin:20px;
}
.label-cask,
.label-abv {
font-size:11px;
margin:15px;
}
.label-note {
font-size:10px;
line-height:1.5;
margin-top:30px;
}
img {
max-width:100px;
max-height:70px;
}
</style>
</head>
<body>
${label.outerHTML}
</body>
</html>
`);
popup.document.close();
setTimeout(function() {
popup.print();
},500);
}
</script>
</div>
